diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 6c4d6ddcb98..d26dd12beda 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -16,14 +16,12 @@ # Cyberboss /code/__DATASTRUCTURES/globals.dm @Cyberboss -/code/__DEFINES/components.dm @Cyberboss /code/__DEFINES/server_tools.config.dm @Cyberboss /code/__DEFINES/server_tools.dm @Cyberboss /code/controllers/subsystem/atoms.dm @Cyberboss /code/controllers/subsystem/mapping.dm @Cyberboss /code/controllers/globals.dm @Cyberboss /code/datums/helper_datums/getrev.dm @Cyberboss -/code/datums/components/ @Cyberboss /code/datums/map_config.dm @Cyberboss /code/datums/forced_movement.dm @Cyberboss /code/datums/holocall.dm @Cyberboss @@ -67,4 +65,6 @@ # Multiple Owners +/code/__DEFINES/components.dm @Cyberboss @ninjanomnom /code/controllers/subsystem/air.dm @duncathan @MrStonedOne +/code/datums/components/ @Cyberboss @ninjanomnom \ No newline at end of file diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 9c13ec96e8a..e14c5d16240 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -243,6 +243,8 @@ This prevents nesting levels from getting deeper then they need to be. * Queries must never specify the database, be it in code, or in text files in the repo. +* Primary keys are inherently immutable and you must never do anything to change the primary key of a row or entity. This includes preserving auto increment numbers of rows when copying data to a table in a conversion script. No amount of bitching about gaps in ids or out of order ids will save you from this policy. + ### Mapping Standards * TGM Format & Map Merge * All new maps submitted to the repo through a pull request must be in TGM format (unless there is a valid reason present to have it in the default BYOND format.) This is done using the [Map Merge](https://github.com/tgstation/tgstation/wiki/Map-Merger) utility included in the repo to convert the file to TGM format. diff --git a/.gitignore b/.gitignore index ab2b87f5d7b..e264c278a1a 100644 --- a/.gitignore +++ b/.gitignore @@ -202,6 +202,10 @@ tools/MapAtmosFixer/MapAtmosFixer/bin/* #GitHub Atom .atom-build.json +#KDevelop and Kate +*.kdev4* +*.kate-swp + #extra map stuff /_maps/**/backup/ /_maps/templates.dm diff --git a/.travis.yml b/.travis.yml index 7138b233548..f09e4557b9c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,7 @@ language: generic +dist: trusty sudo: false +dist: xenial branches: except: - ___TGS3TempBranch @@ -14,6 +16,7 @@ matrix: packages: - python3 - python3-pip + - python3-setuptools cache: directories: - tgui/node_modules @@ -43,7 +46,8 @@ matrix: - gcc-multilib - g++-7 - g++-7-multilib - - libmariadbclient-dev:i386 + - libmariadb-client-lgpl-dev:i386 + - libmariadbd-dev cache: directories: - $HOME/.cargo @@ -67,4 +71,3 @@ script: - tools/travis/build_tools.sh || travis_terminate 1 - tools/travis/build_dependencies.sh || travis_terminate 1 - tools/travis/build_byond.sh - diff --git a/SQL/database_changelog.txt b/SQL/database_changelog.txt index 24ad3f1a659..fcf347d99d3 100644 --- a/SQL/database_changelog.txt +++ b/SQL/database_changelog.txt @@ -1,15 +1,53 @@ Any time you make a change to the schema files, remember to increment the database schema version. Generally increment the minor number, major should be reserved for significant changes to the schema. Both values go up to 255. -The latest database version is 4.7; The query to update the schema revision table is: +The latest database version is 5.1; The query to update the schema revision table is: -INSERT INTO `schema_revision` (`major`, `minor`) VALUES (5, 0); +INSERT INTO `schema_revision` (`major`, `minor`) VALUES (5, 1); or -INSERT INTO `SS13_schema_revision` (`major`, `minor`) VALUES (5, 0); +INSERT INTO `SS13_schema_revision` (`major`, `minor`) VALUES (5, 1); In any query remember to add a prefix to the table names if you use one. ---------------------------------------------------- +Version 5.1, 25 Feb 2018, by MrStonedOne +Added four tables to enable storing of stickybans in the database since byond can lose them, and to enable disabling stickybans for a round without depending on a crash free round. Existing stickybans are automagically imported to the tables. + +CREATE TABLE `stickyban` ( + `ckey` VARCHAR(32) NOT NULL, + `reason` VARCHAR(2048) NOT NULL, + `banning_admin` VARCHAR(32) NOT NULL, + `datetime` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (`ckey`) +) ENGINE=InnoDB; + +CREATE TABLE `stickyban_matched_ckey` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_ckey` VARCHAR(32) NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `exempt` TINYINT(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`stickyban`, `matched_ckey`) +) ENGINE=InnoDB; + +CREATE TABLE `stickyban_matched_ip` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_ip` INT UNSIGNED NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`stickyban`, `matched_ip`) +) ENGINE=InnoDB; + +CREATE TABLE `stickyban_matched_cid` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_cid` VARCHAR(32) NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`stickyban`, `matched_cid`) +) ENGINE=InnoDB; + +---------------------------------------------------- + Version 5.0, 28 October 2018, by Jordie0608 Modified ban table to remove the need for the `bantype` column, a python script is used to migrate data to this new format. @@ -88,8 +126,7 @@ Added table `role_time_log` and triggers `role_timeTlogupdate`, `role_timeTlogin CREATE TABLE `role_time_log` ( `id` BIGINT NOT NULL AUTO_INCREMENT , `ckey` VARCHAR(32) NOT NULL , `job` VARCHAR(128) NOT NULL , `delta` INT NOT NULL , `datetime` TIMESTAMP on update CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP , PRIMARY KEY (`id`), INDEX (`ckey`), INDEX (`job`), INDEX (`datetime`)) ENGINE = InnoDB; -DELIMITER -$$ +DELIMITER $$ CREATE TRIGGER `role_timeTlogupdate` AFTER UPDATE ON `role_time` FOR EACH ROW BEGIN INSERT into role_time_log (ckey, job, delta) VALUES (NEW.CKEY, NEW.job, NEW.minutes-OLD.minutes); END $$ @@ -99,7 +136,7 @@ $$ CREATE TRIGGER `role_timeTlogdelete` AFTER DELETE ON `role_time` FOR EACH ROW BEGIN INSERT into role_time_log (ckey, job, delta) VALUES (OLD.ckey, OLD.job, 0-OLD.minutes); END $$ - +DELIMITER ; ---------------------------------------------------- Version 4.2, 17 April 2018, by Jordie0608 diff --git a/SQL/tgstation_schema.sql b/SQL/tgstation_schema.sql index 6127c5b37de..9506e05cac4 100644 --- a/SQL/tgstation_schema.sql +++ b/SQL/tgstation_schema.sql @@ -462,6 +462,57 @@ $$ CREATE TRIGGER `role_timeTlogdelete` AFTER DELETE ON `role_time` FOR EACH ROW BEGIN INSERT into role_time_log (ckey, job, delta) VALUES (OLD.ckey, OLD.job, 0-OLD.minutes); END $$ +DELIMITER ; + +-- +-- Table structure for table `stickyban` +-- +DROP TABLE IF EXISTS `stickyban`; +CREATE TABLE `stickyban` ( + `ckey` VARCHAR(32) NOT NULL, + `reason` VARCHAR(2048) NOT NULL, + `banning_admin` VARCHAR(32) NOT NULL, + `datetime` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (`ckey`) +) ENGINE=InnoDB; + +-- +-- Table structure for table `stickyban_matched_ckey` +-- +DROP TABLE IF EXISTS `stickyban_matched_ckey`; +CREATE TABLE `stickyban_matched_ckey` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_ckey` VARCHAR(32) NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `exempt` TINYINT(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`stickyban`, `matched_ckey`) +) ENGINE=InnoDB; + +-- +-- Table structure for table `stickyban_matched_ip` +-- +DROP TABLE IF EXISTS `stickyban_matched_ip`; +CREATE TABLE `stickyban_matched_ip` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_ip` INT UNSIGNED NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`stickyban`, `matched_ip`) +) ENGINE=InnoDB; + +-- +-- Table structure for table `stickyban_matched_cid` +-- +DROP TABLE IF EXISTS `stickyban_matched_cid`; +CREATE TABLE `stickyban_matched_cid` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_cid` VARCHAR(32) NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`stickyban`, `matched_cid`) +) ENGINE=InnoDB; + /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; diff --git a/SQL/tgstation_schema_prefixed.sql b/SQL/tgstation_schema_prefixed.sql index e17ef712472..5a0a7d481ae 100644 --- a/SQL/tgstation_schema_prefixed.sql +++ b/SQL/tgstation_schema_prefixed.sql @@ -462,6 +462,58 @@ $$ CREATE TRIGGER `SS13_role_timeTlogdelete` AFTER DELETE ON `SS13_role_time` FOR EACH ROW BEGIN INSERT into SS13_role_time_log (ckey, job, delta) VALUES (OLD.ckey, OLD.job, 0-OLD.minutes); END $$ +DELIMITER ; + +-- +-- Table structure for table `SS13_stickyban` +-- +DROP TABLE IF EXISTS `SS13_stickyban`; +CREATE TABLE `SS13_stickyban` ( + `ckey` VARCHAR(32) NOT NULL, + `reason` VARCHAR(2048) NOT NULL, + `banning_admin` VARCHAR(32) NOT NULL, + `datetime` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (`ckey`) +) ENGINE=InnoDB; + +-- +-- Table structure for table `SS13_stickyban_matched_ckey` +-- +DROP TABLE IF EXISTS `SS13_stickyban_matched_ckey`; +CREATE TABLE `SS13_stickyban_matched_ckey` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_ckey` VARCHAR(32) NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `exempt` TINYINT(1) NOT NULL DEFAULT '0', + PRIMARY KEY (`stickyban`, `matched_ckey`) +) ENGINE=InnoDB; + +-- +-- Table structure for table `SS13_stickyban_matched_ip` +-- +DROP TABLE IF EXISTS `SS13_stickyban_matched_ip`; +CREATE TABLE `SS13_stickyban_matched_ip` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_ip` INT UNSIGNED NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`stickyban`, `matched_ip`) +) ENGINE=InnoDB; + +-- +-- Table structure for table `SS13_stickyban_matched_cid` +-- +DROP TABLE IF EXISTS `SS13_stickyban_matched_cid`; +CREATE TABLE `SS13_stickyban_matched_cid` ( + `stickyban` VARCHAR(32) NOT NULL, + `matched_cid` VARCHAR(32) NOT NULL, + `first_matched` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + `last_matched` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (`stickyban`, `matched_cid`) +) ENGINE=InnoDB; + + /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; diff --git a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm index ff57adfa8de..5219c15cfe3 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm @@ -242,7 +242,7 @@ /turf/open/floor/plasteel, /area/ruin/powered/beach) "aX" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /turf/open/floor/wood, /area/ruin/powered/beach) "aY" = ( @@ -303,7 +303,7 @@ }, /obj/item/bikehorn/airhorn, /obj/structure/table/wood, -/obj/item/storage/firstaid, +/obj/item/storage/firstaid/regular, /obj/item/storage/firstaid/brute, /turf/open/floor/wood, /area/ruin/powered/beach) diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm index 521ca3fac74..7023fe0ac22 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_animal_hospital.dmm @@ -137,7 +137,7 @@ /turf/open/floor/plasteel/white, /area/ruin/powered/animal_hospital) "at" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/blue{ @@ -149,7 +149,7 @@ /turf/open/floor/plasteel/white, /area/ruin/powered/animal_hospital) "au" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/blue{ @@ -508,7 +508,7 @@ /turf/open/floor/plasteel, /area/ruin/powered/animal_hospital) "br" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel, /area/ruin/powered/animal_hospital) "bs" = ( diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm index f48801c1995..bd63c4c999d 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm @@ -358,7 +358,7 @@ /turf/open/floor/pod/dark, /area/ruin/powered/snow_biodome) "HR" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/pod/dark, /area/ruin/powered/snow_biodome) "JZ" = ( diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm index 4a0c718942a..c28919158af 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm @@ -129,6 +129,11 @@ /obj/machinery/chem_dispenser/fullupgrade, /turf/open/floor/plasteel, /area/ruin/unpowered/syndicate_lava_base/chemistry) +"aQ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/ruin/unpowered/syndicate_lava_base/arrivals) "aW" = ( /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -231,7 +236,7 @@ /obj/machinery/power/apc/syndicate{ dir = 8; name = "Chemistry APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -578,7 +583,7 @@ /obj/machinery/power/apc/syndicate{ dir = 1; name = "Cargo Bay APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/closet/emcloset/anchored, /obj/effect/decal/cleanable/dirt, @@ -694,6 +699,12 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/obj/item/paper/crumpled{ + info = "Explosive testing on site is STRICTLY forbidden, as this outpost's walls are lined with explosives intended for intentional self-destruct purposes that may be set off prematurely through careless experiments."; + name = "Explosives Testing Warning"; + pixel_x = -6; + pixel_y = -3 + }, /turf/open/floor/plasteel/dark, /area/ruin/unpowered/syndicate_lava_base/testlab) "ep" = ( @@ -1286,7 +1297,7 @@ /obj/machinery/power/apc/syndicate{ dir = 1; name = "Virology APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -1318,7 +1329,7 @@ /obj/machinery/power/apc/syndicate{ dir = 2; name = "Experimentation Lab APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -3173,7 +3184,7 @@ /obj/machinery/power/apc/syndicate{ dir = 2; name = "Dormitories APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -3337,7 +3348,7 @@ /obj/machinery/power/apc/syndicate{ dir = 8; name = "Primary Hallway APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/turf_decal/tile/red{ dir = 1 @@ -4073,7 +4084,7 @@ /obj/machinery/power/apc/syndicate{ dir = 1; name = "Engineering APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "4-8" @@ -4505,9 +4516,9 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/machinery/portable_atmospherics/scrubber, /obj/effect/turf_decal/bot, /obj/effect/decal/cleanable/dirt, +/obj/machinery/portable_atmospherics/pump, /turf/open/floor/plasteel, /area/ruin/unpowered/syndicate_lava_base/engineering) "lv" = ( @@ -4992,7 +5003,7 @@ /obj/machinery/power/apc/syndicate{ dir = 2; name = "Bar APC"; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/wood, /area/ruin/unpowered/syndicate_lava_base/bar) @@ -5006,7 +5017,7 @@ /turf/open/floor/wood, /area/ruin/unpowered/syndicate_lava_base/bar) "my" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/item/reagent_containers/food/condiment/enzyme, /obj/item/reagent_containers/food/snacks/chocolatebar, /obj/effect/decal/cleanable/dirt, @@ -5469,7 +5480,7 @@ /obj/machinery/power/apc/syndicate{ dir = 1; name = "Arrival Hallway APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -5980,7 +5991,7 @@ /turf/open/floor/plasteel/dark, /area/ruin/unpowered/syndicate_lava_base/telecomms) "oi" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/neutral{ @@ -6021,7 +6032,7 @@ /obj/machinery/power/apc/syndicate{ dir = 2; name = "Telecommunications APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -6206,6 +6217,18 @@ /obj/structure/sign/departments/chemistry, /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ruin/unpowered/syndicate_lava_base/testlab) +"pQ" = ( +/obj/structure/sign/warning/explosives/alt{ + pixel_x = 32 + }, +/turf/open/floor/circuit/red, +/area/ruin/unpowered/syndicate_lava_base/main) +"qG" = ( +/obj/structure/sign/warning/explosives/alt{ + pixel_x = -32 + }, +/turf/open/floor/engine, +/area/ruin/unpowered/syndicate_lava_base/testlab) "tW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/mineral/plastitanium/nodiagonal, @@ -6251,6 +6274,12 @@ }, /turf/open/floor/engine, /area/ruin/unpowered/syndicate_lava_base/testlab) +"DL" = ( +/obj/structure/sign/warning/explosives/alt{ + pixel_x = 32 + }, +/turf/open/floor/engine, +/area/ruin/unpowered/syndicate_lava_base/testlab) "EZ" = ( /obj/machinery/door/airlock/external{ req_access_txt = "150" @@ -6276,15 +6305,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /turf/open/floor/engine, /area/ruin/unpowered/syndicate_lava_base/testlab) -"Pa" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel/white/corner{ - dir = 4 - }, -/area/ruin/unpowered/syndicate_lava_base/arrivals) "RE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 @@ -7184,7 +7204,7 @@ ae ae aq aq -aq +qG dc aq dQ @@ -7434,7 +7454,7 @@ ae ae aq aq -aq +DL di aq dS @@ -7564,8 +7584,8 @@ my jy nt nW -oo -ox +aW +mT ab ab ab @@ -7615,7 +7635,7 @@ jy nu nX oo -ox +mT ab ab ab @@ -7663,8 +7683,8 @@ jy jy mX nv -nX -aW +aQ +mT mT ab ab @@ -7714,7 +7734,6 @@ mz mY nw nZ -Pa mT ab ab @@ -7723,6 +7742,7 @@ ab ab ab ab +ab aa "} (29,1,1) = {" @@ -8198,7 +8218,7 @@ hl hU ha it -iJ +pQ jd ha jw diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm index de17c80b51a..95f8c4eba44 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_xeno_nest.dmm @@ -44,7 +44,6 @@ /obj/structure/alien/weeds, /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs, -/obj/item/clothing/mask/facehugger/impregnated, /obj/item/gun/ballistic/automatic/pistol, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/ruin/unpowered/xenonest) @@ -54,11 +53,6 @@ /obj/structure/alien/resin/wall, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/ruin/unpowered/xenonest) -"s" = ( -/obj/structure/alien/weeds, -/obj/structure/alien/egg, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/ruin/unpowered/xenonest) "t" = ( /obj/structure/alien/weeds, /mob/living/simple_animal/hostile/alien/sentinel, @@ -89,7 +83,6 @@ /obj/structure/alien/weeds, /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs, -/obj/item/clothing/mask/facehugger/impregnated, /obj/item/clothing/under/rank/security, /obj/item/clothing/suit/armor/vest, /obj/item/melee/baton/loaded, @@ -138,7 +131,6 @@ /obj/structure/bed/nest, /obj/effect/decal/cleanable/blood/gibs, /obj/effect/decal/cleanable/blood, -/obj/item/clothing/mask/facehugger/impregnated, /obj/item/clothing/under/syndicate, /obj/item/clothing/glasses/night, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, @@ -163,7 +155,6 @@ /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, /turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/ruin/unpowered/xenonest) "O" = ( @@ -384,7 +375,7 @@ e t g g -s +g H u g @@ -415,9 +406,9 @@ b i u b -s +g l -s +g t e b @@ -448,7 +439,7 @@ o v g b -s +g g e b diff --git a/_maps/RandomRuins/SpaceRuins/DJstation.dmm b/_maps/RandomRuins/SpaceRuins/DJstation.dmm index c8ccd8d30aa..d78df0883d1 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation.dmm @@ -54,43 +54,43 @@ /turf/open/floor/plating, /area/ruin/space/djstation) "an" = ( -/obj/structure/cable{ - icon_state = "0-2" - }, /obj/machinery/power/smes/magical{ desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; name = "power storage unit" }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, /turf/open/floor/plating, /area/ruin/space/djstation) "ao" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/ruin/space/djstation) "ap" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, /obj/machinery/power/apc{ name = "Worn-out APC"; pixel_y = -24 }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, /turf/open/floor/plating, /area/ruin/space/djstation) "aq" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/item/storage/box/lights/mixed, /obj/structure/sign/warning/electricshock{ pixel_y = -32 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/ruin/space/djstation) "ar" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, diff --git a/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm b/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm index 2b3f2eec95d..0fadc72f863 100644 --- a/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm +++ b/_maps/RandomRuins/SpaceRuins/TheDerelict.dmm @@ -42,7 +42,7 @@ id = "derelictsolar"; name = "Derelict Solar Array" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/airless, @@ -54,10 +54,10 @@ "aj" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ - icon_state = "2-4" + icon_state = "1-4" }, /obj/structure/cable{ - icon_state = "1-4" + icon_state = "2-4" }, /turf/template_noop, /area/solar/derelict_starboard) @@ -84,10 +84,10 @@ "am" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ - icon_state = "2-4" + icon_state = "2-8" }, /obj/structure/cable{ - icon_state = "2-8" + icon_state = "2-4" }, /turf/template_noop, /area/solar/derelict_starboard) @@ -180,28 +180,28 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aC" = ( /obj/machinery/power/smes, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aD" = ( -/obj/structure/cable{ - icon_state = "0-2" - }, /obj/machinery/power/solar_control{ id = "derelictsolar"; name = "Primary Solar Control"; track = 0 }, /obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-2" + }, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aF" = ( @@ -215,13 +215,13 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -236,12 +236,12 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aJ" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/machinery/light/small{ dir = 4 }, +/obj/structure/cable{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aK" = ( @@ -263,7 +263,7 @@ /turf/open/floor/plating, /area/ruin/space/derelict/solar_control) "aN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -296,16 +296,16 @@ equipment = 0; lighting = 0; name = "Starboard Solar APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, +/obj/structure/cable/yellow, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "aU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -331,23 +331,23 @@ /obj/machinery/computer/monitor/secret{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "ba" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small, /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "bb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -382,7 +382,7 @@ name = "Starboard Solar Access"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -405,7 +405,7 @@ /area/ruin/space/derelict/bridge/ai_upload) "bm" = ( /obj/machinery/door/window, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -435,7 +435,7 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/solar_control) "br" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel, @@ -491,7 +491,7 @@ }, /area/ruin/space/derelict/solar_control) "bC" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel{ @@ -599,15 +599,15 @@ /obj/machinery/power/apc{ dir = 8; name = "Worn-out APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/bridge/ai_upload) "bX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating/airless, @@ -636,7 +636,7 @@ }, /area/space/nearstation) "cc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating/airless, @@ -646,19 +646,19 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/bridge/ai_upload) "ce" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/closed/wall/r_wall, /area/ruin/space/derelict/bridge/ai_upload) "cf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall/r_wall, /area/ruin/space/derelict/bridge/ai_upload) "cg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/closed/wall/r_wall, @@ -670,13 +670,13 @@ /turf/closed/wall/r_wall, /area/template_noop) "cj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/closed/wall/r_wall, /area/ruin/space/derelict/bridge/ai_upload) "ck" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -714,7 +714,7 @@ }, /area/ruin/space/derelict/gravity_generator) "cr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/closed/wall, @@ -724,7 +724,7 @@ /area/ruin/space/derelict/bridge/access) "ct" = ( /obj/machinery/door/airlock/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -788,7 +788,7 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "cF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -810,28 +810,28 @@ /turf/template_noop, /area/template_noop) "cJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/closed/wall, /area/ruin/space/derelict/bridge/access) "cK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "cM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "cN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -840,17 +840,19 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/gravity_generator) "cP" = ( -/obj/item/stack/cable_coil/cut/red, +/obj/item/stack/cable_coil/cut/yellow{ + amount = 2 + }, /turf/open/floor/plasteel/airless{ icon_state = "damaged4" }, /area/ruin/space/derelict/gravity_generator) "cQ" = ( -/obj/structure/cable, /obj/machinery/power/apc{ name = "Worn-out APC"; pixel_y = -24 }, +/obj/structure/cable/yellow, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "cR" = ( @@ -887,7 +889,7 @@ name = "E.V.A."; req_access_txt = "18" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -901,7 +903,7 @@ /area/ruin/space/derelict/bridge/access) "cX" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -945,29 +947,29 @@ /turf/open/floor/plasteel/airless/solarpanel, /area/space/nearstation) "df" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/item/wallframe/apc, /turf/open/floor/plating/airless, /area/ruin/space/derelict/gravity_generator) "dg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating/airless, /area/ruin/space/derelict/gravity_generator) "dh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating/airless, /area/ruin/space/derelict/gravity_generator) "di" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/frame/machine, @@ -988,37 +990,37 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "dm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/ruin/space/derelict/bridge/access) "dn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "do" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "dp" = ( /obj/machinery/door/airlock/public/glass, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "dq" = ( /obj/item/reagent_containers/food/drinks/beer, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -1035,7 +1037,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/gravity_generator) "dt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating/airless, @@ -1069,7 +1071,7 @@ /area/ruin/space/derelict/bridge/access) "dy" = ( /obj/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -1090,7 +1092,7 @@ name = "Engineering Access"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -1120,7 +1122,7 @@ /area/ruin/space/derelict/bridge) "dH" = ( /obj/structure/frame/computer, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -1185,14 +1187,16 @@ }, /area/ruin/space/derelict/singularity_engine) "dR" = ( -/obj/item/stack/cable_coil/cut/red, /obj/machinery/light/small{ dir = 1 }, +/obj/item/stack/cable_coil/cut/yellow{ + amount = 2 + }, /turf/open/floor/plating/airless, /area/ruin/space/derelict/singularity_engine) "dS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating/airless, @@ -1202,13 +1206,13 @@ name = "Engineering Access"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/gravity_generator) "dU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -1228,7 +1232,7 @@ }, /area/ruin/space/derelict/singularity_engine) "dY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -1319,7 +1323,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/singularity_engine) "ep" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/window/reinforced, @@ -1405,16 +1409,16 @@ }, /area/ruin/space/derelict/singularity_engine) "eH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "eI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -1423,13 +1427,13 @@ /obj/structure/window/reinforced{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge/access) "eK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1439,7 +1443,7 @@ /turf/template_noop, /area/ruin/space/derelict/singularity_engine) "eM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -1466,7 +1470,7 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/bridge) "eR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -1739,7 +1743,7 @@ /area/ruin/space/derelict/singularity_engine) "fK" = ( /obj/machinery/door/window, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -1791,7 +1795,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/bridge/access) "fT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless, @@ -1835,7 +1839,7 @@ /turf/closed/wall, /area/ruin/space/derelict/hallway/primary) "ga" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel/airless{ @@ -1843,7 +1847,7 @@ }, /area/ruin/space/derelict/hallway/primary) "gb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless{ @@ -1851,28 +1855,28 @@ }, /area/ruin/space/derelict/hallway/primary) "gc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "gd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating/airless, /area/ruin/space/derelict/bridge/access) "ge" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/bridge/access) "gf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/airless, @@ -1901,7 +1905,7 @@ /turf/closed/wall/r_wall, /area/ruin/space/derelict/hallway/primary) "gl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating/airless, @@ -1953,13 +1957,13 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/singularity_engine) "gx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating/airless, /area/ruin/space/derelict/hallway/primary) "gy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating/airless, @@ -1974,11 +1978,11 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "gB" = ( -/obj/structure/cable, /obj/machinery/power/apc{ name = "Worn-out APC"; pixel_y = -24 }, +/obj/structure/cable/yellow, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/bridge/access) "gC" = ( @@ -2072,7 +2076,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/singularity_engine) "gU" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plating/airless, @@ -2096,7 +2100,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/singularity_engine) "ha" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating/airless, @@ -2441,7 +2445,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/singularity_engine) "ip" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel/airless{ @@ -2529,7 +2533,7 @@ /turf/open/floor/plasteel/airless/white, /area/ruin/unpowered/no_grav) "iF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless{ @@ -2558,7 +2562,6 @@ "iK" = ( /obj/machinery/mass_driver{ dir = 8; - icon_state = "mass_driver"; id = "derelict_gun" }, /obj/machinery/door/window{ @@ -2683,7 +2686,7 @@ /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "jc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless, @@ -2693,13 +2696,13 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/arrival) "jf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/airless/white, /area/ruin/space/derelict/medical) "jg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/window/reinforced{ @@ -2708,19 +2711,19 @@ /turf/open/floor/plasteel/airless/white, /area/ruin/space/derelict/medical) "jh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless/white, /area/ruin/space/derelict/medical) "ji" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel/airless/white, /area/ruin/space/derelict/medical) "jj" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel/airless{ @@ -2806,7 +2809,7 @@ name = "Worn-out APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/airless, @@ -2835,7 +2838,7 @@ /turf/open/floor/plasteel/airless/white, /area/ruin/space/derelict/medical) "jD" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel/airless{ @@ -2885,14 +2888,14 @@ /area/ruin/space/derelict/medical/chapel) "jM" = ( /obj/machinery/door/window, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/medical/chapel) "jN" = ( /obj/machinery/door/window/southleft, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless/white, @@ -2902,16 +2905,16 @@ /turf/open/floor/plasteel/airless/white, /area/ruin/space/derelict/medical) "jP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "jQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/research{ @@ -2921,13 +2924,13 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "jR" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "jS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating/airless, @@ -2963,7 +2966,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "jX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless{ @@ -2986,13 +2989,13 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "kb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/airless, /area/ruin/unpowered/no_grav) "kc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, @@ -3011,20 +3014,20 @@ /area/ruin/unpowered/no_grav) "kf" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, /area/ruin/unpowered/no_grav) "kg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/window/fulltile, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "kh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/research{ @@ -3034,19 +3037,19 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/arrival) "ki" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/derelict/arrival) "kj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/ruin/space/derelict/arrival) "kk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -3058,7 +3061,9 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/medical/chapel) "km" = ( -/obj/item/stack/cable_coil/cut/red, +/obj/item/stack/cable_coil/cut/yellow{ + amount = 2 + }, /turf/open/floor/plasteel/airless{ icon_state = "floorscorched1" }, @@ -3093,7 +3098,7 @@ /turf/open/floor/plasteel, /area/ruin/space/derelict/arrival) "ku" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless{ @@ -3106,37 +3111,37 @@ dir = 4; icon_state = "right" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "kx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "ky" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "kz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "kA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/airless, @@ -3154,25 +3159,25 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "kE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "kG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary) "kH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/airless, @@ -3222,7 +3227,7 @@ name = "Security"; req_access_txt = "1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless, @@ -3315,7 +3320,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/primary/port) "lj" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plasteel/airless, @@ -3411,7 +3416,7 @@ /turf/template_noop, /area/ruin/space/derelict/hallway/primary/port) "lB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/window/reinforced, @@ -3495,7 +3500,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/atmospherics) "lQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless, @@ -3556,7 +3561,9 @@ /area/ruin/space/derelict/atmospherics) "mb" = ( /obj/structure/lattice, -/obj/item/stack/cable_coil/cut/red, +/obj/item/stack/cable_coil/cut/yellow{ + amount = 2 + }, /turf/template_noop, /area/ruin/space/derelict/hallway/primary/port) "mc" = ( @@ -3691,7 +3698,9 @@ /turf/template_noop, /area/ruin/space/derelict/atmospherics) "mA" = ( -/obj/item/stack/cable_coil/cut/red, +/obj/item/stack/cable_coil/cut/yellow{ + amount = 2 + }, /turf/template_noop, /area/ruin/space/derelict/hallway/primary/port) "mB" = ( @@ -3702,7 +3711,7 @@ /area/ruin/space/derelict/hallway/secondary) "mC" = ( /obj/item/wirecutters, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/airless, @@ -3731,7 +3740,7 @@ }, /area/ruin/space/derelict/hallway/primary/port) "mI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless, @@ -3796,15 +3805,15 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/hallway/secondary) "mX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable, /obj/machinery/power/apc{ dir = 8; name = "Worn-out APC"; - pixel_x = -24 + pixel_x = -25 }, +/obj/structure/cable/yellow, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "mY" = ( @@ -3827,21 +3836,21 @@ areastring = "/area/ruin/space/derelict/atmospherics"; dir = 1; name = "Worn-out APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "nd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "ne" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3853,7 +3862,7 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3862,7 +3871,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "ng" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3871,7 +3880,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "nh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3880,7 +3889,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "ni" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3889,7 +3898,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "nj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3898,7 +3907,7 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "nk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3910,7 +3919,7 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -3919,16 +3928,16 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "nm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/hallway/secondary) "nn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/airless, @@ -3997,7 +4006,7 @@ /turf/closed/wall/r_wall, /area/ruin/space/derelict/se_solar) "nC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -4018,7 +4027,7 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/hallway/secondary) "nF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -4039,22 +4048,22 @@ /turf/open/floor/plating/airless, /area/ruin/space/derelict/se_solar) "nJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/closed/wall/r_wall, /area/ruin/space/derelict/se_solar) "nK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall/r_wall, /area/ruin/space/derelict/se_solar) "nL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/airlock/engineering{ @@ -4110,10 +4119,10 @@ /obj/machinery/power/terminal{ dir = 1 }, +/obj/item/drone_shell/dusty, /obj/structure/cable{ icon_state = "0-2" }, -/obj/item/drone_shell/dusty, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/se_solar) "nV" = ( @@ -4124,28 +4133,28 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/se_solar) "nY" = ( -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/structure/cable, /obj/machinery/power/solar_control{ dir = 1; id = "derelictsolar"; name = "Primary Solar Control"; track = 0 }, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "0-2" + }, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/se_solar) "nZ" = ( -/obj/structure/cable, /obj/machinery/power/apc/unlocked{ dir = 8; environ = 0; equipment = 0; lighting = 0; name = "Worn-out APC"; - pixel_x = -24 + pixel_x = -25 }, +/obj/structure/cable/yellow, /turf/open/floor/plating/airless, /area/ruin/space/derelict/se_solar) "oa" = ( @@ -4200,10 +4209,10 @@ /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/se_solar) "ok" = ( +/obj/machinery/door/airlock/external, /obj/structure/cable{ icon_state = "1-2" }, -/obj/machinery/door/airlock/external, /turf/open/floor/plasteel/airless, /area/ruin/space/derelict/se_solar) "ol" = ( @@ -4212,14 +4221,14 @@ /turf/template_noop, /area/solar/derelict_aft) "om" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-2" }, -/obj/structure/lattice/catwalk, /turf/template_noop, /area/solar/derelict_aft) "on" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/solar{ @@ -4229,14 +4238,14 @@ /turf/open/floor/plasteel/airless, /area/solar/derelict_aft) "oo" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/lattice/catwalk, /turf/template_noop, /area/solar/derelict_aft) "op" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/solar{ @@ -4283,16 +4292,16 @@ /turf/template_noop, /area/solar/derelict_aft) "ou" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, /obj/structure/cable{ icon_state = "1-8" }, /obj/structure/cable{ icon_state = "1-4" }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/lattice/catwalk, /turf/template_noop, /area/solar/derelict_aft) "ov" = ( @@ -4345,20 +4354,13 @@ }, /turf/template_noop, /area/solar/derelict_aft) -"oB" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/lattice/catwalk, -/turf/template_noop, -/area/solar/derelict_aft) "oC" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ - icon_state = "1-8" + icon_state = "2-8" }, /obj/structure/cable{ - icon_state = "2-8" + icon_state = "1-8" }, /turf/template_noop, /area/solar/derelict_aft) @@ -4445,7 +4447,7 @@ /turf/closed/wall, /area/ruin/space/derelict/hallway/primary/port) "KT" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plating/airless, @@ -4462,9 +4464,35 @@ "Lv" = ( /turf/closed/wall, /area/space/nearstation) +"My" = ( +/obj/structure/lattice, +/obj/item/stack/cable_coil/cut/yellow{ + amount = 2 + }, +/turf/template_noop, +/area/space/nearstation) +"MQ" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/airless, +/area/ruin/space/derelict/se_solar) "Oj" = ( /turf/closed/wall/r_wall, /area/ruin/space/derelict/bridge/access) +"ON" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/template_noop, +/area/solar/derelict_aft) "OT" = ( /turf/closed/wall/r_wall, /area/ruin/space/derelict/hallway/primary/port) @@ -10139,7 +10167,7 @@ nB nI ZB ZB -ld +My nV nV nB @@ -10259,7 +10287,7 @@ aa aa aa on -os +ON ox aa on @@ -10372,7 +10400,7 @@ nB aa aa on -os +ON ox aa on @@ -10489,7 +10517,7 @@ ot aa aa aa -oB +ot aa aa vf @@ -10715,7 +10743,7 @@ ot aa aa aa -oB +ot aa aa ZB @@ -10815,8 +10843,8 @@ mI nC nF nL -nP -nP +MQ +MQ nZ nR nR diff --git a/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm b/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm index e6251f702ab..d67a69c75c3 100644 --- a/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm +++ b/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm @@ -8,14 +8,17 @@ anchored = 1; power = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) "ac" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -26,12 +29,12 @@ anchored = 1; power = 1 }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) "ae" = ( @@ -40,11 +43,11 @@ anchored = 1; power = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ - icon_state = "0-2" +/obj/structure/cable/yellow{ + icon_state = "0-4" }, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) @@ -54,9 +57,12 @@ anchored = 1; power = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) "ag" = ( @@ -73,13 +79,6 @@ /obj/structure/flora/rock, /turf/open/floor/plating/asteroid, /area/ruin/space/has_grav/abandonedzoo) -"ak" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/ruin/space/has_grav/abandonedzoo) "al" = ( /obj/structure/flora/ausbushes/genericbush, /turf/open/floor/grass, @@ -185,13 +184,16 @@ /turf/open/floor/grass, /area/ruin/space/has_grav/abandonedzoo) "aD" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/machinery/door/airlock/highsecurity{ name = "Bio Containment"; req_one_access_txt = "47" }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "aE" = ( @@ -200,59 +202,25 @@ anchored = 1; power = 1 }, -/obj/structure/cable{ - icon_state = "0-2" +/obj/structure/cable/yellow{ + icon_state = "1-8" }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "2-4" +/obj/structure/cable/yellow{ + icon_state = "0-8" }, /turf/open/floor/plating, /area/ruin/space/has_grav/abandonedzoo) -"aF" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/closed/wall/r_wall, -/area/ruin/space/has_grav/abandonedzoo) "aG" = ( /obj/structure/table/reinforced, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/item/gun/energy/floragun, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) -"aH" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ruin/space/has_grav/abandonedzoo) "aI" = ( /obj/structure/table/reinforced, /obj/machinery/computer/med_data/laptop{ dir = 8; pixel_y = 1 }, -/obj/structure/cable{ - icon_state = "4-8" - }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "aJ" = ( @@ -261,14 +229,11 @@ anchored = 1; power = 1 }, -/obj/structure/cable{ - icon_state = "4-8" +/obj/structure/cable/yellow{ + icon_state = "1-4" }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "0-8" +/obj/structure/cable/yellow{ + icon_state = "0-4" }, /turf/open/floor/plating, /area/ruin/space/has_grav/abandonedzoo) @@ -279,13 +244,10 @@ /turf/template_noop, /area/space/nearstation) "aL" = ( -/turf/open/floor/plasteel/dark/side, -/area/ruin/space/has_grav/abandonedzoo) -"aM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/turf/closed/wall/r_wall, +/turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "aN" = ( /obj/structure/table/reinforced, @@ -324,6 +286,9 @@ /obj/machinery/light/small{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "aS" = ( @@ -333,23 +298,17 @@ equipment = 0; lighting = 0; name = "Worn-out APC"; - pixel_x = -24 - }, -/obj/structure/cable{ - icon_state = "0-4" + pixel_x = -25 }, /obj/structure/rack, /obj/item/melee/baton/cattleprod, /obj/effect/spawner/lootdrop/maintenance, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "aT" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/structure/rack, /obj/item/clothing/suit/space/hardsuit/medical, /obj/item/tank/internals/emergency_oxygen/double, @@ -408,6 +367,9 @@ /obj/machinery/light/small{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "bb" = ( @@ -426,27 +388,8 @@ }, /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/abandonedzoo) -"bc" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ruin/space/has_grav/abandonedzoo) "bd" = ( /obj/machinery/power/terminal, -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/effect/turf_decal/tile/green{ dir = 1 }, @@ -461,6 +404,9 @@ /area/ruin/space/has_grav/abandonedzoo) "be" = ( /obj/structure/reagent_dispensers/fueltank, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "bf" = ( @@ -468,15 +414,20 @@ desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; name = "power storage unit" }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "1-2" +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "bg" = ( /obj/structure/reagent_dispensers/watertank, /obj/machinery/light, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "bh" = ( @@ -528,15 +479,11 @@ anchored = 1; power = 1 }, -/obj/structure/cable{ - icon_state = "1-2" +/obj/structure/cable/yellow{ + icon_state = "2-8" }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "1-4" +/obj/structure/cable/yellow{ + icon_state = "0-8" }, /turf/open/floor/plating, /area/ruin/space/has_grav/abandonedzoo) @@ -546,41 +493,29 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) -"bq" = ( -/obj/item/stack/cable_coil/cut/red, -/obj/item/stack/tile/plasteel{ - pixel_x = 3; - pixel_y = -4 - }, -/obj/item/wirecutters, -/turf/open/floor/plating, -/area/ruin/space/has_grav/abandonedzoo) "br" = ( /obj/structure/table/reinforced, /obj/machinery/microwave, -/obj/structure/cable{ - icon_state = "4-8" - }, /turf/open/floor/plasteel/dark/side, /area/ruin/space/has_grav/abandonedzoo) "bs" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "0-8" - }, /obj/machinery/shieldwallgen, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, /turf/open/floor/plating, /area/ruin/space/has_grav/abandonedzoo) "bt" = ( -/obj/structure/cable{ +/obj/machinery/shieldwallgen, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/machinery/shieldwallgen, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) "bu" = ( @@ -712,6 +647,7 @@ /area/ruin/space/has_grav/abandonedzoo) "bN" = ( /obj/structure/grille/broken, +/obj/item/stack/cable_coil/cut/yellow, /obj/item/shard{ icon_state = "small" }, @@ -725,18 +661,6 @@ /obj/structure/lattice, /turf/template_noop, /area/space/nearstation) -"bQ" = ( -/obj/machinery/shieldwallgen{ - active = 2; - anchored = 1; - power = 1 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable, -/turf/open/floor/plating/airless, -/area/ruin/space/has_grav/abandonedzoo) "bR" = ( /obj/structure/disposalpipe/trunk{ dir = 1 @@ -745,11 +669,13 @@ /turf/open/floor/plating/airless, /area/space/nearstation) "bS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable, /obj/machinery/shieldwallgen, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) "bT" = ( @@ -774,6 +700,52 @@ "bX" = ( /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) +"eY" = ( +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel/dark/side, +/area/ruin/space/has_grav/abandonedzoo) +"fM" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/dark, +/area/ruin/space/has_grav/abandonedzoo) +"jz" = ( +/obj/machinery/shieldwallgen{ + active = 2; + anchored = 1; + power = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plating/airless, +/area/ruin/space/has_grav/abandonedzoo) +"kj" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/ruin/space/has_grav/abandonedzoo) "lo" = ( /obj/machinery/door/airlock/external, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -791,29 +763,187 @@ }, /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/abandonedzoo) +"nQ" = ( +/obj/machinery/shieldwallgen{ + active = 2; + anchored = 1; + power = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating/airless, +/area/ruin/space/has_grav/abandonedzoo) +"oK" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/ruin/space/has_grav/abandonedzoo) +"rY" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/item/stack/cable_coil/cut/yellow, +/obj/item/stack/tile/plasteel{ + pixel_x = 3; + pixel_y = -4 + }, +/obj/item/wirecutters, +/turf/open/floor/plating, +/area/ruin/space/has_grav/abandonedzoo) +"sC" = ( +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark/side, +/area/ruin/space/has_grav/abandonedzoo) +"tP" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/ruin/space/has_grav/abandonedzoo) +"wF" = ( +/obj/machinery/door/airlock/hatch{ + name = "Bio-Research Station" + }, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/ruin/space/has_grav/abandonedzoo) +"AX" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Bio Containment"; + req_one_access_txt = "47" + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel/dark/side, +/area/ruin/space/has_grav/abandonedzoo) +"Ck" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/ruin/space/has_grav/abandonedzoo) +"Hx" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Bio Containment"; + req_one_access_txt = "47" + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark/side, +/area/ruin/space/has_grav/abandonedzoo) "KN" = ( /turf/template_noop, /area/space/nearstation) +"Ld" = ( +/obj/machinery/shieldwallgen{ + active = 2; + anchored = 1; + power = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/turf/open/floor/plating/airless, +/area/ruin/space/has_grav/abandonedzoo) +"VW" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Bio Containment"; + req_one_access_txt = "47" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel/dark/side, +/area/ruin/space/has_grav/abandonedzoo) (1,1,1) = {" ab -ag -ag -ag -ag -ab +kj +kj +kj +kj +jz aa aa aa aa aa aa -ab -ag -ag -ag -ag -ab +ae +kj +kj +kj +kj +nQ aa "} (2,1,1) = {" @@ -847,10 +977,10 @@ aD aL aR aL -aL +eY aR aL -aD +VW bv bv bJ @@ -868,7 +998,7 @@ ac at at bb -bb +wF at at ac @@ -888,8 +1018,8 @@ ar ac at aS -ay -ay +Ck +oK be at ac @@ -902,23 +1032,23 @@ aa "} (6,1,1) = {" ad -ak -ak -ak -ak +kj +kj +kj +kj aE -aM +at aT -bc +ay bd bf -aM +at bo -ak -ak -ak -ak -bQ +kj +kj +kj +kj +Ld aa "} (7,1,1) = {" @@ -927,14 +1057,14 @@ aa aa at at -aF +at at aU ay -ay +fM bg at -aF +at by bF bK @@ -952,7 +1082,7 @@ aG aN aV ay -ay +tP bh bm bp @@ -969,14 +1099,14 @@ aa aa ag ay -aH +ay aO ay ay +tP ay ay ay -aH ay bG bL @@ -990,14 +1120,14 @@ aa aa ag ay -aH ay ay ay ay +tP +ay ay ay -bq ay bG bM @@ -1015,7 +1145,7 @@ aI aP aW ay -ay +tP bi bn br @@ -1032,14 +1162,14 @@ aa aa at at -aF +at at aX ay -ay +tP bj at -aF +at at at aa @@ -1049,22 +1179,22 @@ aa "} (13,1,1) = {" ae -ak -ak -ak -ak +kj +kj +kj +kj aJ at aY ay -ay +tP bk at bs -ak -ak -ak -ak +kj +kj +kj +kj bS aa "} @@ -1078,7 +1208,7 @@ ac at aZ ay -ay +tP bl at ac @@ -1099,7 +1229,7 @@ ac at at bb -bb +wF at at ac @@ -1116,14 +1246,14 @@ an aq au am -aD +Hx aL ba aL +sC +rY aL -ba -aL -aD +AX bD bB bX @@ -1154,11 +1284,11 @@ aa "} (18,1,1) = {" af -ak -ak -ak -ak -af +kj +kj +kj +kj +Ld aa aa aa @@ -1166,8 +1296,8 @@ aa aa aa bt -ag -ag +kj +kj bN bP KN diff --git a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm b/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm index 61ddc1f8ba4..9dadb1d4d7c 100644 --- a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm +++ b/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm @@ -58,7 +58,7 @@ /turf/open/floor/engine, /area/ruin/space/has_grav/derelictoutpost/cargobay) "an" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -70,7 +70,7 @@ name = "Cargo Bay APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -102,7 +102,7 @@ /turf/closed/wall/mineral/titanium, /area/ruin/space/has_grav/derelictoutpost/dockedship) "au" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -295,7 +295,7 @@ /area/ruin/space/has_grav/derelictoutpost/powerstorage) "bb" = ( /obj/machinery/power/smes, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel, @@ -303,17 +303,17 @@ "bc" = ( /obj/structure/table, /obj/item/stock_parts/cell/hyper, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/powerstorage) "bd" = ( /obj/machinery/power/smes, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -455,7 +455,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/powerstorage) "bs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -801,10 +801,10 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/powerstorage) "bZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -814,10 +814,10 @@ start_charge = 0; dir = 4; name = "Power Storage APC"; - pixel_x = 23; + pixel_x = 24; pixel_y = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -850,7 +850,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -915,7 +915,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost) "cj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -925,9 +925,9 @@ start_charge = 0; dir = 2; name = "Tradepost APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -967,14 +967,14 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/powerstorage) "cp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/powerstorage) "cq" = ( /obj/structure/barricade/wooden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -985,19 +985,19 @@ req_access_txt = "10" }, /obj/structure/barricade/wooden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/powerstorage) "cs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/cargobay) "ct" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -1028,10 +1028,10 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -1042,7 +1042,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1053,14 +1053,14 @@ id = "bigderelictcheckpoint"; name = "checkpoint security doors" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost) "cz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1071,13 +1071,13 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost) "cB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -1154,13 +1154,13 @@ /obj/structure/closet/crate{ icon_state = "crateopen" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/cargobay) "cI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/janitorialcart, @@ -1172,7 +1172,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/mop, @@ -1189,7 +1189,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1205,7 +1205,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1217,7 +1217,7 @@ name = "gelatinous floor" }, /obj/structure/glowshroom/single, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1228,10 +1228,10 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -1390,7 +1390,7 @@ name = "gelatinous floor" }, /obj/machinery/light, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -1406,7 +1406,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1427,7 +1427,7 @@ desc = "A pried-open airlock. Scratch marks mark the sidings of the door."; name = "pried-open airlock" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -1444,7 +1444,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -1539,7 +1539,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -1659,7 +1659,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -1743,7 +1743,7 @@ desc = "A thick gelatinous surface covers the floor. Someone get the golashes."; name = "gelatinous floor" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -1793,7 +1793,7 @@ icon_state = "trails_1"; dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -1958,7 +1958,7 @@ icon_state = "trails_1"; name = "dried blood trail" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -2020,7 +2020,7 @@ name = "Cargo Storage APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -2077,7 +2077,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/derelictoutpost/cargostorage) "eu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -2123,7 +2123,7 @@ icon_state = "trails_1"; dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -2186,7 +2186,7 @@ icon_state = "trails_1"; dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -2202,7 +2202,7 @@ icon_state = "trails_1"; dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -2213,7 +2213,7 @@ icon_state = "trails_1"; dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, diff --git a/_maps/RandomRuins/SpaceRuins/bus.dmm b/_maps/RandomRuins/SpaceRuins/bus.dmm index b94f5bcb620..1e280377d23 100644 --- a/_maps/RandomRuins/SpaceRuins/bus.dmm +++ b/_maps/RandomRuins/SpaceRuins/bus.dmm @@ -100,7 +100,7 @@ /obj/structure/fluff/bus/passable/seat{ icon_state = "backseat" }, -/obj/item/reagent_containers/food/snacks/grown/citrus/orange, +/obj/item/reagent_containers/food/snacks/grown/cherry_bomb, /turf/open/floor/plasteel/airless/dark{ icon_state = "bus" }, @@ -110,8 +110,8 @@ icon_state = "driverseat"; pixel_y = 17 }, -/obj/item/reagent_containers/food/snacks/grown/cherry_bomb, /obj/effect/decal/cleanable/dirt, +/obj/item/reagent_containers/food/snacks/grown/citrus/orange, /turf/open/floor/plasteel/airless/dark{ icon_state = "bus" }, diff --git a/_maps/RandomRuins/SpaceRuins/caravanambush.dmm b/_maps/RandomRuins/SpaceRuins/caravanambush.dmm index 61ce30f7144..c5207e4df4b 100644 --- a/_maps/RandomRuins/SpaceRuins/caravanambush.dmm +++ b/_maps/RandomRuins/SpaceRuins/caravanambush.dmm @@ -98,7 +98,7 @@ /obj/machinery/power/apc{ dir = 8; name = "Tiny Freighter APC"; - pixel_x = -24; + pixel_x = -25; req_access = null; start_charge = 0 }, @@ -244,7 +244,7 @@ /obj/machinery/power/apc{ dir = 8; name = "Tiny Freighter APC"; - pixel_x = -24; + pixel_x = -25; req_access = null; start_charge = 0 }, diff --git a/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm b/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm index 1fb4e60aff8..260cec96c33 100644 --- a/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm +++ b/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm @@ -180,7 +180,7 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/powered/ancient_shuttle) "w" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 1 }, /obj/effect/turf_decal/tile/blue{ @@ -201,7 +201,7 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/powered/ancient_shuttle) "y" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 1 }, /obj/effect/turf_decal/tile/blue{ diff --git a/_maps/RandomRuins/SpaceRuins/crashedship.dmm b/_maps/RandomRuins/SpaceRuins/crashedship.dmm index 723b4c21e03..0814901809d 100644 --- a/_maps/RandomRuins/SpaceRuins/crashedship.dmm +++ b/_maps/RandomRuins/SpaceRuins/crashedship.dmm @@ -499,7 +499,7 @@ dir = 1; environ = 0; equipment = 3; - pixel_y = 32; + pixel_y = 23; req_access = null }, /turf/open/floor/carpet, @@ -844,7 +844,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/awaymission/BMPship/Aft) "cR" = ( -/obj/structure/closet/secure_closet/freezer/meat{ +/obj/structure/closet/secure_closet/freezer/meat/open{ opened = 1 }, /turf/open/floor/plasteel/white, @@ -877,7 +877,7 @@ dir = 1; environ = 0; equipment = 3; - pixel_y = 32; + pixel_y = 23; req_access = null }, /turf/open/floor/plating, @@ -1006,25 +1006,10 @@ /area/awaymission/BMPship/Aft) "do" = ( /obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-4" + icon_state = "1-8" }, /turf/open/floor/plating, /area/awaymission/BMPship/Aft) -"dp" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/BMPship/Aft) "dq" = ( /obj/item/multitool, /turf/open/floor/engine, @@ -1198,7 +1183,7 @@ }, /obj/machinery/power/apc/unlocked{ dir = 1; - pixel_y = 28; + pixel_y = 23; req_access = null }, /obj/effect/turf_decal/tile/bar, @@ -1314,26 +1299,11 @@ /turf/open/floor/plating, /area/awaymission/BMPship/Aft) "eb" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, /obj/machinery/power/terminal{ dir = 8 }, /turf/open/floor/plating, /area/awaymission/BMPship/Aft) -"ec" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/BMPship/Aft) "ed" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 4 @@ -1345,7 +1315,7 @@ /turf/open/floor/carpet, /area/awaymission/BMPship/Fore) "ef" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 8 }, /turf/open/floor/carpet, @@ -1455,15 +1425,6 @@ }, /turf/open/floor/plasteel, /area/awaymission/BMPship/Aft) -"eu" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/BMPship/Aft) "ev" = ( /obj/structure/cable{ icon_state = "2-4" @@ -1640,15 +1601,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/awaymission/BMPship/Aft) -"eR" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/BMPship/Aft) "eS" = ( /obj/effect/decal/cleanable/cobweb, /obj/machinery/power/port_gen/pacman/super, @@ -5294,12 +5246,12 @@ aa aa ac cX -dp -eu -ec -eu -eu -eR +fr +cX +cX +cX +cX +cX cX fr fH diff --git a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm index 986d6c4ee72..0342f821435 100644 --- a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm +++ b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm @@ -19,7 +19,7 @@ /turf/open/floor/plasteel/freezer, /area/ruin/space/has_grav/deepstorage/kitchen) "ai" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /turf/open/floor/plasteel/freezer, /area/ruin/space/has_grav/deepstorage/kitchen) "ak" = ( @@ -144,7 +144,7 @@ /obj/machinery/power/apc/away{ dir = 2; name = "Recycling APC"; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/plating, /area/ruin/space/has_grav/deepstorage/crusher) @@ -647,7 +647,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/deepstorage/storage) "bI" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/item/storage/box/ingredients/wildcard, /obj/item/storage/box/ingredients/wildcard, /obj/item/storage/box/ingredients/wildcard, @@ -694,7 +694,7 @@ /obj/machinery/power/apc/away{ dir = 2; name = "Kitchen APC"; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/plasteel/cafeteria, /area/ruin/space/has_grav/deepstorage/kitchen) @@ -1762,7 +1762,7 @@ /obj/machinery/power/apc/away{ dir = 2; name = "Main Area APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/effect/turf_decal/stripes/corner, /obj/effect/decal/cleanable/dirt, @@ -2172,7 +2172,7 @@ /obj/machinery/power/apc/away{ dir = 1; name = "Airlock Control APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, @@ -2804,17 +2804,17 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /turf/open/floor/plating, /area/ruin/space/has_grav/deepstorage/power) "gj" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/cable/yellow{ +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ icon_state = "2-8" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/ruin/space/has_grav/deepstorage/power) "gk" = ( @@ -2867,13 +2867,13 @@ /area/ruin/space/has_grav/deepstorage/power) "gt" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ + icon_state = "2-8" + }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/deepstorage/power) "gu" = ( @@ -2928,10 +2928,10 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/ruin/space/has_grav/deepstorage/power) "gB" = ( @@ -2989,16 +2989,16 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, /turf/open/floor/plating, /area/ruin/space/has_grav/deepstorage/power) "gK" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -3008,17 +3008,17 @@ name = "RTG Observation"; req_access_txt = "200" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, /area/ruin/space/has_grav/deepstorage/power) "gM" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/cable/yellow{ +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable{ icon_state = "1-8" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/ruin/space/has_grav/deepstorage/power) "gN" = ( @@ -3053,7 +3053,7 @@ /area/ruin/space/has_grav/deepstorage) "gR" = ( /obj/structure/grille, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -3101,10 +3101,10 @@ /area/ruin/space/has_grav/deepstorage/power) "gX" = ( /obj/machinery/power/rtg/advanced, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/yellow, +/obj/structure/cable, /turf/open/floor/plating, /area/ruin/space/has_grav/deepstorage/power) "gY" = ( @@ -3116,13 +3116,13 @@ /area/ruin/space/has_grav/deepstorage/power) "gZ" = ( /obj/machinery/power/rtg/advanced, -/obj/structure/cable/yellow, +/obj/structure/cable, /turf/open/floor/plating, /area/ruin/space/has_grav/deepstorage/power) "ha" = ( /obj/machinery/power/rtg/advanced, /obj/machinery/light/small, -/obj/structure/cable/yellow, +/obj/structure/cable, /turf/open/floor/plating, /area/ruin/space/has_grav/deepstorage/power) "hb" = ( diff --git a/_maps/RandomRuins/SpaceRuins/derelict6.dmm b/_maps/RandomRuins/SpaceRuins/derelict6.dmm index 5a33bb9d75c..dfd54817356 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict6.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict6.dmm @@ -203,7 +203,7 @@ /turf/open/floor/plasteel/airless/cafeteria, /area/ruin/unpowered) "aK" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/machinery/light/broken{ dir = 1 }, diff --git a/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm b/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm index 8956267108a..a7e8fe7f68f 100644 --- a/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm +++ b/_maps/RandomRuins/SpaceRuins/gasthelizards.dmm @@ -175,7 +175,7 @@ dir = 1; name = "Worn-out APC"; pixel_x = 1; - pixel_y = 26 + pixel_y = 23 }, /obj/machinery/light{ dir = 1 @@ -253,7 +253,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/gasthelizard) "G" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel, /area/ruin/space/has_grav/gasthelizard) "H" = ( diff --git a/_maps/RandomRuins/SpaceRuins/hilbertshoteltestingsite.dmm b/_maps/RandomRuins/SpaceRuins/hilbertshoteltestingsite.dmm index 367372c0027..a89d1422d2e 100644 --- a/_maps/RandomRuins/SpaceRuins/hilbertshoteltestingsite.dmm +++ b/_maps/RandomRuins/SpaceRuins/hilbertshoteltestingsite.dmm @@ -169,7 +169,7 @@ /turf/open/floor/plasteel/grimy, /area/ruin/space/has_grav/hilbertresearchfacility) "E" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel/grimy, /area/ruin/space/has_grav/hilbertresearchfacility) "F" = ( diff --git a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm index bff36316033..5f8aa156cb7 100644 --- a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm @@ -61,7 +61,7 @@ /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/listeningstation) "ai" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -877,15 +877,13 @@ /obj/machinery/syndicatebomb/self_destruct{ anchored = 1 }, -/obj/structure/sign/warning/securearea{ - desc = "A warning sign which reads 'DANGER: SELF DESTRUCT DEVICE'."; - name = "DANGER: SELF DESTRUCT DEVICE"; - pixel_x = 32 - }, /obj/machinery/door/window/brigdoor{ dir = 8; req_access_txt = "150" }, +/obj/structure/sign/warning/explosives/alt{ + pixel_x = 32 + }, /turf/open/floor/circuit/red, /area/ruin/space/has_grav/listeningstation) "bm" = ( @@ -1035,8 +1033,7 @@ "bx" = ( /obj/effect/mob_spawn/human/lavaland_syndicate/comms/space{ assignedrole = "Space Syndicate"; - dir = 8; - flavour_text = "You are a syndicate agent, assigned to a small listening post station situated near your hated enemy's top secret research facility: Space Station 13. Monitor enemy activity as best you can, and try to keep a low profile. DON'T 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!" + dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8; diff --git a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm index 5bc1da71749..53e5b229578 100644 --- a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm +++ b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm @@ -53,7 +53,7 @@ /turf/open/floor/mineral/titanium/blue, /area/ruin/space/has_grav/powered/mechtransport) "n" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/mineral/titanium/blue, diff --git a/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm b/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm index 9d0292140af..6a43d33b7aa 100644 --- a/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm @@ -47,7 +47,7 @@ dir = 1; name = "Worn-out APC"; pixel_x = 1; - pixel_y = 26 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-4" diff --git a/_maps/RandomRuins/SpaceRuins/oldstation.dmm b/_maps/RandomRuins/SpaceRuins/oldstation.dmm index 928f62179de..a998f1e3a32 100644 --- a/_maps/RandomRuins/SpaceRuins/oldstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldstation.dmm @@ -245,7 +245,7 @@ pixel_x = 24; start_charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -297,7 +297,7 @@ /area/ruin/space/has_grav/ancientstation) "aU" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -529,7 +529,7 @@ /area/ruin/space/has_grav/ancientstation/betanorth) "bx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch, @@ -618,7 +618,7 @@ /turf/closed/wall/rust, /area/ruin/space/has_grav/ancientstation) "bP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -630,7 +630,7 @@ /area/ruin/space/has_grav/ancientstation) "bQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -777,7 +777,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/powered) "cl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -891,17 +891,17 @@ /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-25" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot/strong, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/strong, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "cA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -912,7 +912,7 @@ "cB" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/science, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -920,16 +920,16 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "cC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot/range, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/range, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "cD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -937,7 +937,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "cE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -946,8 +946,8 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "cF" = ( /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot/range, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/range, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "cG" = ( @@ -999,7 +999,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation) "cO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1070,13 +1070,13 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "cY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "cZ" = ( @@ -1085,8 +1085,8 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "da" = ( @@ -1104,8 +1104,8 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/mob/living/simple_animal/hostile/hivebot/range, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/range, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "dc" = ( @@ -1122,8 +1122,8 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/mob/living/simple_animal/hostile/hivebot/range, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/range, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "de" = ( @@ -1140,14 +1140,14 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/mob/living/simple_animal/hostile/hivebot/strong, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/strong, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "dg" = ( /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot/strong, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/strong, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "dh" = ( @@ -1178,7 +1178,7 @@ /turf/closed/wall/rust, /area/ruin/space/has_grav/ancientstation/engi) "dm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1283,7 +1283,7 @@ /turf/closed/wall/rust, /area/ruin/space/has_grav/ancientstation/sec) "dw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1361,17 +1361,17 @@ /area/template_noop) "dK" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /turf/template_noop, /area/template_noop) "dL" = ( /obj/machinery/power/solar, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating/airless, @@ -1438,13 +1438,13 @@ "dS" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 8; name = "Charlie Security APC"; - pixel_x = -24; + pixel_x = -25; start_charge = 0 }, /obj/effect/turf_decal/tile/red{ @@ -1490,7 +1490,7 @@ /turf/closed/wall/rust, /area/ruin/space/has_grav/ancientstation/sec) "dW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1528,7 +1528,6 @@ /area/ruin/space/has_grav/ancientstation/rnd) "ec" = ( /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot/strong, /obj/effect/turf_decal/tile/purple{ dir = 1 }, @@ -1538,12 +1537,13 @@ /obj/effect/turf_decal/tile/purple{ dir = 8 }, +/mob/living/simple_animal/hostile/hivebot/strong, /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/ancientstation/rnd) "ed" = ( /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "ee" = ( @@ -1552,8 +1552,8 @@ dir = 8; pixel_x = 24 }, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "ef" = ( @@ -1569,7 +1569,7 @@ /area/ruin/space/has_grav/ancientstation/betanorth) "ei" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/template_noop, @@ -1666,7 +1666,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/hydroponics) "et" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1714,7 +1714,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/sec) "ey" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1777,14 +1777,14 @@ }, /area/ruin/space/has_grav/ancientstation/betanorth) "eI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/solar, /turf/open/floor/plating/airless, /area/template_noop) "eJ" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /turf/open/floor/plating/airless, @@ -1834,7 +1834,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/engi) "eO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1888,7 +1888,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/hydroponics) "eU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1915,27 +1915,27 @@ /area/ruin/space/has_grav/ancientstation/sec) "eW" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "eX" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "eY" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "eZ" = ( @@ -1967,7 +1967,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -1976,7 +1976,7 @@ /obj/machinery/power/smes/engineering{ charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/decal/cleanable/dirt, @@ -1993,7 +1993,7 @@ /area/ruin/space/has_grav/ancientstation/engi) "fg" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -2108,7 +2108,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/sec) "ft" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -2131,8 +2131,8 @@ /area/ruin/space/has_grav/ancientstation/rnd) "fw" = ( /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot/strong, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/strong, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/rnd) "fx" = ( @@ -2177,7 +2177,7 @@ /area/ruin/space/has_grav/ancientstation/engi) "fE" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -2235,7 +2235,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/sec) "fL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -2275,31 +2275,31 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "fQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Delta Main Corridor APC"; - pixel_y = 24; + pixel_y = 23; start_charge = 0 }, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/deltacorridor) "fR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "fS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "fT" = ( @@ -2360,19 +2360,19 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/effect/decal/cleanable/dirt, /obj/structure/cable{ icon_state = "4-8" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/airless, /area/ruin/space/has_grav/ancientstation/betanorth) "ga" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/ancientstation/betanorth) "gb" = ( @@ -2390,10 +2390,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, /turf/template_noop, @@ -2403,7 +2403,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/template_noop, @@ -2413,13 +2413,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /turf/template_noop, @@ -2436,7 +2436,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -2446,7 +2446,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -2457,10 +2457,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -2468,19 +2468,19 @@ "gj" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/engi) "gk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -2495,14 +2495,14 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/engi) "gm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -2511,10 +2511,10 @@ /area/ruin/space/has_grav/ancientstation/engi) "gn" = ( /obj/effect/spawner/structure/window/hollow/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2526,13 +2526,13 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/powered) "go" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -2543,7 +2543,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation) "gp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -2552,7 +2552,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation) "gq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch, @@ -2563,7 +2563,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation) "gr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -2577,13 +2577,13 @@ /obj/machinery/power/apc{ dir = 1; name = "Charlie Hydroponics APC"; - pixel_y = 24; + pixel_y = 23; start_charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2592,7 +2592,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/hydroponics) "gt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -2603,7 +2603,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation) "gu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -2614,19 +2614,19 @@ /obj/machinery/power/apc{ dir = 2; name = "Charlie Kitchen APC"; - pixel_y = -24; + pixel_y = -23; start_charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/kitchen) "gw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -2638,7 +2638,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation) "gx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch, @@ -2646,7 +2646,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation) "gy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -2657,7 +2657,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation) "gz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2669,10 +2669,10 @@ /area/ruin/space/has_grav/ancientstation) "gA" = ( /obj/effect/spawner/structure/window/hollow/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2684,11 +2684,11 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/sec) "gB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2699,7 +2699,7 @@ /area/ruin/space/has_grav/ancientstation/sec) "gC" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2710,7 +2710,7 @@ /area/ruin/space/has_grav/ancientstation/sec) "gD" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -2724,10 +2724,10 @@ /area/ruin/space/has_grav/ancientstation/sec) "gE" = ( /obj/effect/spawner/structure/window/hollow/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2736,7 +2736,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/sec) "gF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2746,7 +2746,7 @@ /area/space/nearstation) "gG" = ( /obj/effect/spawner/structure/window/hollow/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2756,7 +2756,7 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "gH" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2766,10 +2766,10 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "gI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2779,7 +2779,7 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "gJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch, @@ -2789,13 +2789,13 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/deltacorridor) "gK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -2813,7 +2813,7 @@ pixel_x = 24; start_charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -2906,14 +2906,14 @@ /area/ruin/space/has_grav/ancientstation/engi) "gW" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/engi) "gX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3004,7 +3004,7 @@ /area/ruin/space/has_grav/ancientstation/engi) "hl" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow{ @@ -3018,7 +3018,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/yellow, +/obj/structure/cable, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/engi) "hn" = ( @@ -3031,7 +3031,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/engi) "ho" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3044,7 +3044,7 @@ /area/ruin/space/has_grav/ancientstation/engi) "hq" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3060,7 +3060,7 @@ /area/ruin/space/has_grav/ancientstation/kitchen) "hs" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/cafeteria, /area/ruin/space/has_grav/ancientstation/kitchen) "ht" = ( @@ -3136,7 +3136,7 @@ /area/ruin/space/has_grav/ancientstation/sec) "hC" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3155,8 +3155,8 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "hE" = ( /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/rnd) "hF" = ( @@ -3241,14 +3241,14 @@ /turf/open/floor/plating/airless, /area/ruin/space/has_grav/ancientstation/betanorth) "hM" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /turf/open/floor/plating/airless, /area/template_noop) "hN" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, /turf/template_noop, @@ -3260,7 +3260,7 @@ dir = 8 }, /obj/effect/decal/cleanable/oil, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/firealarm{ @@ -3285,7 +3285,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/engi) "hQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3382,7 +3382,7 @@ /area/ruin/space/has_grav/ancientstation/rnd) "ib" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /turf/template_noop, @@ -3428,7 +3428,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/engi) "ig" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3439,7 +3439,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/engi) "ih" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3518,8 +3518,8 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/mob/living/simple_animal/hostile/hivebot/range, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot/range, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/rnd) "ir" = ( @@ -3683,7 +3683,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/sec) "iC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -3691,8 +3691,8 @@ dir = 4; pixel_x = -23 }, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "iD" = ( @@ -3872,7 +3872,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -3882,10 +3882,10 @@ charge = 0; name = "backup power storage unit" }, -/obj/structure/cable{ +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/engi) "iW" = ( @@ -3974,11 +3974,11 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/structure/cable/yellow, /obj/machinery/firealarm{ dir = 8; pixel_x = -24 }, +/obj/structure/cable, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/engi) "jj" = ( @@ -3990,7 +3990,7 @@ name = "Backup Generator Room" }, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -4068,8 +4068,8 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "ju" = ( @@ -4095,8 +4095,8 @@ "jw" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "jx" = ( @@ -4107,8 +4107,8 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "jy" = ( @@ -4157,7 +4157,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/engi) "jE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -4168,7 +4168,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation) "jF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -4199,7 +4199,7 @@ /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-25" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -4207,17 +4207,17 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "jK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "jL" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -4225,7 +4225,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "jM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -4247,7 +4247,7 @@ /turf/template_noop, /area/space/nearstation) "jR" = ( -/obj/structure/cable/yellow, +/obj/structure/cable, /turf/open/floor/plating/airless, /area/template_noop) "jS" = ( @@ -4281,7 +4281,7 @@ name = "Prototype Laboratory"; req_access_txt = "200" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white/side, @@ -4352,17 +4352,17 @@ /obj/machinery/power/apc{ dir = 1; name = "Delta Prototype Lab APC"; - pixel_y = 24; + pixel_y = 23; start_charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/ancientstation/proto) "kh" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/white, @@ -4719,9 +4719,9 @@ pixel_x = 24; start_charge = 0 }, -/obj/structure/cable, /obj/item/storage/backpack/old, /obj/item/storage/backpack/old, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation) "kZ" = ( @@ -4927,7 +4927,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -4938,8 +4938,8 @@ dir = 1; pixel_y = -26 }, -/mob/living/simple_animal/hostile/hivebot, /obj/effect/decal/cleanable/dirt, +/mob/living/simple_animal/hostile/hivebot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "qB" = ( @@ -4952,7 +4952,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation/deltacorridor) "rv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -5022,7 +5022,7 @@ /area/ruin/space/has_grav/ancientstation/rnd) "Af" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5102,18 +5102,18 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/deltacorridor) "LY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/ruin/space/has_grav/ancientstation) "MS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -5171,7 +5171,7 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "Pl" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/solar_assembly, @@ -5242,12 +5242,12 @@ /area/ruin/space/has_grav/ancientstation/deltacorridor) "XJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/ruin/space/has_grav/ancientstation/engi) "Yc" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch, @@ -5257,7 +5257,7 @@ "Yi" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plating, diff --git a/_maps/RandomRuins/SpaceRuins/onehalf.dmm b/_maps/RandomRuins/SpaceRuins/onehalf.dmm index ef2301b3c8d..0eef2eb953b 100644 --- a/_maps/RandomRuins/SpaceRuins/onehalf.dmm +++ b/_maps/RandomRuins/SpaceRuins/onehalf.dmm @@ -3,35 +3,35 @@ /turf/template_noop, /area/template_noop) "ab" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/lattice/catwalk, /turf/template_noop, /area/space/nearstation) "ac" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/lattice/catwalk, /turf/template_noop, /area/space/nearstation) "ad" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/lattice/catwalk, /turf/template_noop, /area/space/nearstation) "ae" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /obj/structure/lattice/catwalk, /turf/template_noop, /area/space/nearstation) "af" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/lattice/catwalk, @@ -45,7 +45,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/onehalf/dorms_med) "ai" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/lattice/catwalk, @@ -85,7 +85,7 @@ /area/ruin/space/has_grav/onehalf/dorms_med) "aq" = ( /obj/machinery/door/airlock/external, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -174,7 +174,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/dorms_med) "aD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light/small{ @@ -216,13 +216,13 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/onehalf/dorms_med) "aL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/onehalf/dorms_med) "aM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/closet/crate/medical, @@ -233,7 +233,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Crew Quarters APC"; - pixel_x = 26 + pixel_x = 24 }, /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/onehalf/dorms_med) @@ -282,7 +282,7 @@ /turf/template_noop, /area/space/nearstation) "aT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless{ @@ -296,7 +296,7 @@ /area/ruin/space/has_grav/onehalf/hallway) "aV" = ( /obj/machinery/door/airlock/medical/glass, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -306,10 +306,10 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/dorms_med) "aX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -318,13 +318,13 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/drone_bay) "aY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 1; name = "Mining Drone Bay APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -425,7 +425,7 @@ /obj/structure/disposalpipe/broken{ dir = 4 }, -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/open/floor/plating/airless{ @@ -436,10 +436,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/airless{ @@ -450,7 +450,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless{ @@ -461,7 +461,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, @@ -470,10 +470,10 @@ /obj/structure/disposalpipe/junction{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless{ @@ -484,10 +484,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/airless, @@ -496,7 +496,7 @@ /obj/structure/disposalpipe/junction{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/airless, @@ -506,7 +506,7 @@ dir = 4 }, /obj/machinery/door/airlock/public/glass, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -515,7 +515,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -599,12 +599,12 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable, /obj/machinery/power/apc{ dir = 2; name = "Hallway APC"; - pixel_y = -24 + pixel_y = -23 }, +/obj/structure/cable/yellow, /turf/open/floor/plasteel/airless, /area/ruin/space/has_grav/onehalf/hallway) "bA" = ( @@ -661,7 +661,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/drone_bay) "bJ" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 4 }, /obj/effect/decal/cleanable/dirt, @@ -775,18 +775,18 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/bridge) "cf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 1; name = "Bridge APC"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/bridge) "cg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/table/reinforced, @@ -848,7 +848,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/bridge) "cm" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 8 }, /turf/open/floor/plasteel, @@ -857,16 +857,16 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/bridge) "co" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 1 }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/bridge) "cp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/table/reinforced, @@ -875,13 +875,13 @@ /area/ruin/space/has_grav/onehalf/bridge) "cq" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -931,19 +931,19 @@ /area/ruin/space/has_grav/onehalf/bridge) "cy" = ( /obj/machinery/power/solar_control, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plasteel, /area/ruin/space/has_grav/onehalf/bridge) "cz" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/preopen{ id = "bridge_onehalf"; name = "bridge blast door" }, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/ruin/space/has_grav/onehalf/bridge) "cA" = ( @@ -1006,7 +1006,7 @@ /area/ruin/space/has_grav/onehalf/bridge) "cK" = ( /obj/structure/lattice, -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/template_noop, @@ -1060,28 +1060,28 @@ /area/ruin/space/has_grav/onehalf/bridge) "cV" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable, /obj/machinery/door/poddoor/preopen{ id = "bridge_onehalf"; name = "bridge blast door" }, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/ruin/space/has_grav/onehalf/bridge) "cW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/lattice/catwalk, /turf/template_noop, /area/space/nearstation) "cX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/airless{ @@ -1111,7 +1111,7 @@ /area/ruin/space/has_grav/onehalf/bridge) "dc" = ( /obj/structure/grille/broken, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating/airless{ @@ -1127,10 +1127,10 @@ /area/ruin/space/has_grav/onehalf/hallway) "de" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -1141,10 +1141,10 @@ /area/ruin/space/has_grav/onehalf/bridge) "df" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -1155,10 +1155,10 @@ /area/ruin/space/has_grav/onehalf/bridge) "dg" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -1173,7 +1173,7 @@ /turf/template_noop, /area/space/nearstation) "di" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/shard{ @@ -1183,10 +1183,10 @@ /turf/template_noop, /area/space/nearstation) "dj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/item/stack/rods, @@ -1194,17 +1194,17 @@ /turf/template_noop, /area/space/nearstation) "dk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/lattice/catwalk, /turf/template_noop, /area/space/nearstation) "dl" = ( -/obj/item/stack/cable_coil/cut/red{ +/obj/item/stack/cable_coil/cut/yellow{ amount = 2 }, /turf/template_noop, diff --git a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm b/_maps/RandomRuins/SpaceRuins/spacehotel.dmm index 25b83b7f9f4..a65193db047 100644 --- a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm +++ b/_maps/RandomRuins/SpaceRuins/spacehotel.dmm @@ -12,54 +12,54 @@ /area/space/nearstation) "ad" = ( /obj/machinery/power/solar, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-2" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "ae" = ( /obj/machinery/power/solar, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-2" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "af" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "ag" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "ah" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "ai" = ( /obj/machinery/power/tracker, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "aj" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plating/airless, @@ -67,13 +67,13 @@ "ak" = ( /obj/machinery/power/solar, /obj/structure/cable/yellow, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "al" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, /turf/open/floor/plating/airless, @@ -483,15 +483,15 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Guest Room APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/ruin/space/has_grav/hotel/guestroom/room_3) "bO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -531,15 +531,15 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Guest Room APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/ruin/space/has_grav/hotel/guestroom/room_4) "bU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -579,15 +579,15 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Guest Room APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/ruin/space/has_grav/hotel/guestroom/room_5) "ca" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -627,15 +627,15 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Guest Room APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/ruin/space/has_grav/hotel/guestroom/room_6) "cg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -669,7 +669,7 @@ id_tag = "a3"; name = "Guest Room A3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -684,7 +684,7 @@ id_tag = "a4"; name = "Guest Room A4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -699,7 +699,7 @@ id_tag = "a5"; name = "Guest Room A5" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -714,7 +714,7 @@ id_tag = "a6"; name = "Guest Room A6" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -756,7 +756,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "cy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -839,7 +839,7 @@ /turf/closed/wall, /area/ruin/space/has_grav/hotel) "cI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -848,7 +848,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "cJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -861,7 +861,7 @@ name = "Hotel Maintenance"; req_access_txt = "201" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -870,7 +870,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "cL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -879,20 +879,20 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "cM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "cN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -902,7 +902,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "cO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -911,7 +911,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "cP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -920,7 +920,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "cQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -931,7 +931,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "cS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -985,7 +985,7 @@ id_tag = "a2"; name = "Guest Room A2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1003,7 +1003,7 @@ id_tag = "a1"; name = "Guest Room A1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1035,7 +1035,7 @@ /obj/machinery/door/airlock/grunge{ name = "Hotel Staff Storage" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -1070,15 +1070,15 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 1; name = "Guest Room APC"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/ruin/space/has_grav/hotel/guestroom/room_2) "do" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1131,15 +1131,15 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 1; name = "Guest Room APC"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/ruin/space/has_grav/hotel/guestroom/room_1) "dw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1171,7 +1171,7 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/hotel/workroom) "dB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1269,14 +1269,14 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/hotel/workroom) "dW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/hotel/workroom) "dX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -1285,7 +1285,7 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/hotel/workroom) "dY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -1294,7 +1294,7 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/hotel/workroom) "dZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -1401,7 +1401,7 @@ /turf/open/floor/plasteel/white, /area/ruin/space/has_grav/hotel/workroom) "eq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1460,7 +1460,7 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Laundry APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /turf/open/floor/plasteel/white, @@ -1502,23 +1502,23 @@ /turf/closed/wall, /area/ruin/space/has_grav/hotel) "eI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "eJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "eK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -1623,7 +1623,7 @@ /area/ruin/space/has_grav/hotel/dock) "fd" = ( /obj/effect/decal/cleanable/cobweb, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1632,7 +1632,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "fe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1653,7 +1653,7 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Kitchen APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /turf/open/floor/plating, @@ -2023,7 +2023,7 @@ /area/ruin/space/has_grav/hotel/dock) "gj" = ( /obj/effect/decal/cleanable/oil, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2333,7 +2333,7 @@ /turf/closed/wall, /area/ruin/space/has_grav/hotel) "hf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2494,9 +2494,9 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Staff Room APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /mob/living/simple_animal/bot/medbot{ @@ -2595,7 +2595,7 @@ /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/hotel/dock) "hP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2604,10 +2604,10 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "hQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -2616,7 +2616,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "hR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -2624,7 +2624,7 @@ /area/ruin/space/has_grav/hotel) "hS" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2704,7 +2704,7 @@ name = "Power Storage"; req_access_txt = "200,201" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2744,7 +2744,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "ik" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2754,7 +2754,7 @@ /area/ruin/space/has_grav/hotel) "il" = ( /obj/machinery/door/airlock/public/glass, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -2764,7 +2764,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel/dock) "im" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2785,13 +2785,13 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel/dock) "ip" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "iq" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /turf/open/floor/plating/airless, @@ -2814,10 +2814,10 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "it" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2830,7 +2830,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "iu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/fire{ @@ -2848,7 +2848,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "iv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/airalarm{ @@ -2866,9 +2866,9 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 1; name = "Power Storage APC"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -2925,7 +2925,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "iE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -2934,7 +2934,7 @@ /turf/open/floor/wood, /area/ruin/space/has_grav/hotel) "iF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -2959,7 +2959,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "iI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2989,7 +2989,7 @@ /turf/open/floor/wood, /area/ruin/space/has_grav/hotel) "iN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -3000,7 +3000,7 @@ /turf/open/floor/wood, /area/ruin/space/has_grav/hotel) "iP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/wood, @@ -3041,12 +3041,12 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Security APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3055,14 +3055,14 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel/security) "iV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "iW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3072,7 +3072,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel) "iY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/airalarm{ @@ -3088,12 +3088,12 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Pool APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3102,7 +3102,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel/pool) "ja" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3111,7 +3111,7 @@ /turf/open/floor/wood, /area/ruin/space/has_grav/hotel) "jb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -3120,7 +3120,7 @@ /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "jc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -3137,7 +3137,7 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Dock APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /turf/open/floor/wood, @@ -3173,7 +3173,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "jj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3296,7 +3296,7 @@ /obj/machinery/cell_charger, /obj/item/stock_parts/cell/high, /obj/item/stock_parts/cell/high, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/yellow{ @@ -3308,7 +3308,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "jB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -3509,7 +3509,7 @@ /turf/closed/wall, /area/ruin/space/has_grav/hotel/power) "kc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -3525,23 +3525,23 @@ /area/ruin/space/has_grav/hotel/power) "kd" = ( /obj/machinery/power/terminal, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "ke" = ( /obj/machinery/power/terminal, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "kf" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/binary/valve/on{ @@ -3618,7 +3618,7 @@ /area/ruin/space/has_grav/hotel/pool) "kq" = ( /obj/machinery/suit_storage_unit/standard_unit, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/yellow{ @@ -3632,10 +3632,10 @@ /area/ruin/space/has_grav/hotel/power) "kr" = ( /obj/machinery/power/smes/engineering, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/sign/warning/electricshock{ @@ -3649,7 +3649,7 @@ /area/ruin/space/has_grav/hotel/power) "ks" = ( /obj/machinery/power/smes/engineering, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/yellow, @@ -3659,7 +3659,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "kt" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -3673,10 +3673,10 @@ /obj/machinery/power/solar_control{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/yellow, @@ -3686,7 +3686,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "kv" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/structure/sign/warning/vacuum{ @@ -3699,7 +3699,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/power) "kw" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/yellow, @@ -3825,7 +3825,7 @@ /area/ruin/space/has_grav/hotel/power) "kJ" = ( /obj/machinery/door/airlock/external/glass, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, @@ -3979,7 +3979,7 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -4217,7 +4217,7 @@ /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "lD" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4226,7 +4226,7 @@ /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "lE" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4281,10 +4281,10 @@ /turf/open/floor/plasteel/showroomfloor, /area/ruin/space/has_grav/hotel/pool) "lJ" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /turf/open/floor/plating/airless, @@ -4412,46 +4412,46 @@ /area/ruin/space/has_grav/hotel/security) "lV" = ( /obj/machinery/power/solar, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "lW" = ( /obj/machinery/power/solar, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "lX" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "lY" = ( /obj/machinery/power/solar, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "lZ" = ( /obj/machinery/power/solar, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /turf/open/floor/plating/airless, @@ -4478,7 +4478,6 @@ /turf/closed/wall, /area/ruin/space/has_grav/hotel/custodial) "me" = ( -/mob/living/simple_animal/bot/cleanbot, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -4489,6 +4488,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/mob/living/simple_animal/bot/cleanbot, /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/custodial) "mf" = ( @@ -4708,7 +4708,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/custodial) "mw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -4731,7 +4731,7 @@ name = "Custodial Closet"; req_access_txt = "200,201" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -4740,7 +4740,7 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hotel/custodial) "my" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -4875,9 +4875,8 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Custodial APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -4888,6 +4887,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/obj/structure/cable/yellow, /turf/open/floor/plasteel, /area/ruin/space/has_grav/hotel/custodial) "mK" = ( @@ -4917,7 +4917,7 @@ /turf/open/floor/plating/airless, /area/ruin/unpowered/no_grav) "mP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -4927,43 +4927,43 @@ name = "Hotel Staff Room"; req_access_txt = "200" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/hotel/workroom) "mR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "mS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "mT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "mU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, /area/ruin/space/has_grav/hotel) "mV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/carpet, @@ -4974,7 +4974,7 @@ /area/ruin/space/has_grav/hotel/pool) "sN" = ( /obj/machinery/door/airlock/external/glass, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ diff --git a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm index aa5126fb650..d8576f631f1 100644 --- a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm +++ b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm @@ -57,7 +57,7 @@ /turf/open/floor/plasteel, /area/ruin/space/has_grav/turretedoutpost) "an" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel, @@ -264,7 +264,7 @@ /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/turretedoutpost) "aN" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel, /area/ruin/space/has_grav/turretedoutpost) "aO" = ( diff --git a/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm b/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm index 873d805a03a..deb91645bae 100644 --- a/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm +++ b/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm @@ -84,7 +84,6 @@ "p" = ( /obj/machinery/mass_driver{ dir = 4; - icon_state = "mass_driver"; id = "oldship_ruin_gun" }, /turf/open/floor/plating, diff --git a/_maps/RandomZLevels/Academy.dmm b/_maps/RandomZLevels/Academy.dmm index 9f7d02f1d19..11f57ba308e 100644 --- a/_maps/RandomZLevels/Academy.dmm +++ b/_maps/RandomZLevels/Academy.dmm @@ -48,7 +48,7 @@ dir = 1; environ = 3; equipment = 3; - pixel_y = 32; + pixel_y = 23; req_access = null }, /turf/open/floor/carpet, @@ -258,7 +258,7 @@ /turf/open/floor/wood, /area/awaymission/academy/headmaster) "aV" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/carpet, /area/awaymission/academy/headmaster) "aW" = ( @@ -303,7 +303,7 @@ /turf/open/floor/wood, /area/awaymission/academy/headmaster) "be" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/carpet, @@ -336,7 +336,7 @@ /turf/open/floor/wood, /area/awaymission/academy/headmaster) "bk" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/cable{ @@ -345,7 +345,7 @@ /turf/open/floor/carpet, /area/awaymission/academy/headmaster) "bl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/carpet, @@ -1284,7 +1284,7 @@ dir = 1; environ = 3; equipment = 3; - pixel_y = 32; + pixel_y = 23; req_access = null }, /turf/open/floor/plasteel/grimy, @@ -1333,7 +1333,7 @@ /turf/open/floor/plasteel, /area/awaymission/academy/classrooms) "er" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/white, /area/awaymission/academy/classrooms) "es" = ( @@ -2539,7 +2539,7 @@ dir = 1; environ = 3; equipment = 3; - pixel_y = 32; + pixel_y = 23; req_access = null }, /turf/open/floor/plasteel, @@ -3571,7 +3571,7 @@ dir = 1; environ = 3; equipment = 3; - pixel_y = 32; + pixel_y = 23; req_access = null }, /obj/structure/cable{ @@ -3915,7 +3915,7 @@ "lp" = ( /obj/machinery/power/apc{ dir = 1; - pixel_y = 32 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-8" diff --git a/_maps/RandomZLevels/Cabin.dmm b/_maps/RandomZLevels/Cabin.dmm index 6724e023a64..97628dbcecf 100644 --- a/_maps/RandomZLevels/Cabin.dmm +++ b/_maps/RandomZLevels/Cabin.dmm @@ -105,7 +105,8 @@ "av" = ( /obj/machinery/power/apc{ dir = 1; - name = "cabin APC" + name = "cabin APC"; + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-4" @@ -314,7 +315,7 @@ /turf/open/floor/carpet, /area/awaymission/cabin) "bd" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/carpet, /area/awaymission/cabin) "be" = ( @@ -673,7 +674,7 @@ /turf/open/floor/wood, /area/awaymission/cabin) "ct" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/freezer, /area/awaymission/cabin) "cu" = ( @@ -747,7 +748,7 @@ /turf/open/floor/plasteel/freezer, /area/awaymission/cabin) "cG" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /turf/open/floor/plasteel/freezer, /area/awaymission/cabin) "cH" = ( diff --git a/_maps/RandomZLevels/VR/mining_VR.dmm b/_maps/RandomZLevels/VR/mining_VR.dmm deleted file mode 100644 index afce8e88e63..00000000000 --- a/_maps/RandomZLevels/VR/mining_VR.dmm +++ /dev/null @@ -1,9807 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/obj/structure/spawner/megafauna/dragon, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"ab" = ( -/obj/effect/landmark/vr_spawn/miner, -/turf/open/floor/bluespace{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"ac" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/accelerator, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"ad" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/crusher, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"ae" = ( -/turf/open/floor/sepia{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"af" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/armor, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"ag" = ( -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"ah" = ( -/turf/open/floor/mineral/gold{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"ai" = ( -/obj/effect/portal/permanent/one_way/recall{ - id = "boss rush entry virtual megafauna"; - name = "boss rush portal" - }, -/turf/open/floor/mineral/gold{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aj" = ( -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"ak" = ( -/turf/closed/indestructible/sandstone, -/area/awaymission/vr/miner) -"al" = ( -/turf/closed/indestructible/riveted/hierophant, -/area/awaymission/vr/miner) -"am" = ( -/turf/open/indestructible/hierophant, -/area/awaymission/vr/miner) -"an" = ( -/obj/effect/light_emitter{ - set_cap = 3; - set_luminosity = 5 - }, -/turf/open/indestructible/hierophant, -/area/awaymission/vr/miner) -"ao" = ( -/turf/open/indestructible/hierophant/two, -/area/awaymission/vr/miner) -"ap" = ( -/obj/structure/spawner/megafauna/blood_drunk, -/obj/effect/portal/permanent/one_way/destroy{ - id = "boss rush entry virtual megafauna"; - name = "boss rush entry portal" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aq" = ( -/obj/effect/light_emitter{ - set_cap = 3; - set_luminosity = 5 - }, -/turf/open/indestructible/hierophant/two, -/area/awaymission/vr/miner) -"ar" = ( -/obj/structure/spawner/megafauna/hierophant, -/obj/effect/portal/permanent/one_way/destroy{ - id = "hierophant virtual arena"; - name = "hierophant arena portal" - }, -/turf/open/indestructible/hierophant/two, -/area/awaymission/vr/miner) -"as" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/healing, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"at" = ( -/obj/structure/spawner/megafauna/bubblegum, -/obj/effect/portal/permanent/one_way/destroy{ - id = "boss rush continue virtual megafauna"; - name = "boss rush continue exit portal" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"au" = ( -/turf/open/floor/bluespace{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"av" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/vr/miner) -"aw" = ( -/obj/structure/spawner/megafauna/hierophant, -/turf/open/indestructible/hierophant/two, -/area/awaymission/vr/miner) -"ax" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/food, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"ay" = ( -/obj/structure/spawner/megafauna/blood_drunk, -/obj/effect/portal/permanent/one_way/destroy{ - id = "blood drunk miner virtual arena"; - name = "blood drunk miner arena portal" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"az" = ( -/turf/closed/indestructible/riveted/boss, -/area/awaymission/vr/miner) -"aA" = ( -/turf/open/indestructible/necropolis, -/area/awaymission/vr/miner) -"aB" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/misc, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aC" = ( -/obj/structure/spawner/megafauna/colossus, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aD" = ( -/obj/structure/spawner/megafauna/bubblegum, -/obj/effect/portal/permanent/one_way/destroy{ - id = "bubblegum virtual arena"; - name = "bubblegum arena portal" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aE" = ( -/obj/structure/spawner/megafauna/legion, -/turf/open/indestructible/necropolis, -/area/awaymission/vr/miner) -"aF" = ( -/obj/effect/portal/permanent/one_way/keep{ - id = "boss rush continue virtual megafauna"; - name = "boss rush continue portal" - }, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aG" = ( -/obj/structure/spawner/megafauna/colossus, -/obj/effect/portal/permanent/one_way/destroy{ - id = "colossus virtual arena"; - name = "colossus arena portal" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aH" = ( -/obj/structure/spawner/megafauna/dragon, -/obj/effect/portal/permanent/one_way/destroy{ - id = "ash drake virtual arena"; - name = "ash drake arena portal" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aI" = ( -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aJ" = ( -/turf/closed/indestructible/necropolis, -/area/awaymission/vr/miner) -"aK" = ( -/turf/closed/indestructible/fakedoor, -/area/awaymission/vr/miner) -"aL" = ( -/obj/effect/decal/cleanable/blood/bubblegum, -/turf/open/floor/mineral/plastitanium{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aM" = ( -/obj/effect/decal/cleanable/blood/bubblegum, -/obj/effect/portal/permanent/one_way/recall{ - id = "bubblegum virtual arena"; - name = "bubblegum arena portal" - }, -/turf/open/floor/mineral/plastitanium{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aN" = ( -/obj/structure/spawner/megafauna/legion, -/obj/effect/portal/permanent/one_way/destroy{ - id = "legion virtual arena"; - name = "legion arena portal" - }, -/turf/open/indestructible/necropolis, -/area/awaymission/vr/miner) -"aO" = ( -/obj/effect/portal/permanent/one_way/recall{ - id = "hierophant virtual arena"; - name = "hierophant arena portal" - }, -/turf/open/indestructible/hierophant, -/area/awaymission/vr/miner) -"aP" = ( -/obj/structure/fluff/drake_statue, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aQ" = ( -/obj/structure/stone_tile/slab, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aR" = ( -/obj/structure/stone_tile/surrounding, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aS" = ( -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aT" = ( -/turf/open/floor/fakepit{ - canSmoothWith = null; - icon = 'icons/turf/floors/magic_chasm.dmi'; - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aU" = ( -/obj/structure/stone_tile/slab/burnt, -/turf/open/lava/smooth/lava_land_surface, -/area/awaymission/vr/miner) -"aV" = ( -/obj/structure/stone_tile/block, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aW" = ( -/obj/structure/stone_tile/slab, -/obj/effect/portal/permanent/one_way/recall{ - id = "blood drunk miner virtual arena"; - name = "blood drunk miner arena portal" - }, -/turf/open/floor/plating/asteroid/basalt/lava_land_surface, -/area/awaymission/vr/miner) -"aX" = ( -/turf/open/floor/clockwork/reebe{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aY" = ( -/obj/structure/chair/sofa/corner{ - dir = 1 - }, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"aZ" = ( -/obj/structure/chair/sofa, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"ba" = ( -/obj/structure/chair/sofa/left, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bb" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/crusher, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bc" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/armor, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bd" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/accelerator, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"be" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/healing, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bf" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/food, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bg" = ( -/obj/effect/portal/permanent/one_way/recall{ - id = "colossus virtual arena"; - name = "colossus arena portal" - }, -/turf/open/floor/fakepit{ - canSmoothWith = null; - icon = 'icons/turf/floors/magic_chasm.dmi'; - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bh" = ( -/obj/structure/closet/crate/necropolis/vr_mining_gear/misc, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bi" = ( -/obj/structure/chair/sofa/right, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bj" = ( -/obj/structure/chair/sofa/corner, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bk" = ( -/obj/structure/chair/sofa{ - dir = 4 - }, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bl" = ( -/obj/structure/chair/sofa{ - dir = 8 - }, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bm" = ( -/obj/structure/chair/sofa/right{ - dir = 4 - }, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bn" = ( -/obj/structure/chair/sofa/left{ - dir = 8 - }, -/turf/open/floor/mineral/silver{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bo" = ( -/obj/structure/table/wood, -/turf/open/floor/mineral/gold{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bp" = ( -/obj/structure/chair/sofa/corner{ - dir = 1 - }, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bq" = ( -/obj/structure/chair/sofa, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"br" = ( -/obj/structure/chair/sofa/left, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bs" = ( -/obj/structure/chair/sofa/right, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bt" = ( -/obj/structure/stone_tile/slab/burnt, -/obj/effect/portal/permanent/one_way/recall{ - id = "ash drake virtual arena"; - name = "ash drake arena portal" - }, -/turf/open/lava/smooth/lava_land_surface, -/area/awaymission/vr/miner) -"bu" = ( -/obj/effect/portal/permanent/one_way/recall{ - id = "legion virtual arena"; - name = "legion arena portal" - }, -/turf/open/indestructible/necropolis, -/area/awaymission/vr/miner) -"bv" = ( -/obj/structure/chair/sofa/corner, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bw" = ( -/obj/structure/chair/sofa{ - dir = 4 - }, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bx" = ( -/obj/structure/table/wood, -/turf/open/floor/clockwork/reebe{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"by" = ( -/obj/structure/chair/sofa{ - dir = 8 - }, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bz" = ( -/obj/structure/chair/sofa/right{ - dir = 4 - }, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"bA" = ( -/obj/structure/chair/sofa/left{ - dir = 8 - }, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"ek" = ( -/obj/item/book/granter/spell/charge, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"eq" = ( -/obj/item/book/granter/spell/forcewall, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"jQ" = ( -/obj/item/gun/magic/staff/healing, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"kN" = ( -/obj/item/wisp_lantern, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"lJ" = ( -/obj/item/sord, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"nv" = ( -/obj/item/gun/energy/pulse/destroyer, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"pY" = ( -/obj/item/gun/magic/staff/honk, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"uE" = ( -/obj/item/book/granter/spell/fireball, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"xx" = ( -/obj/item/katana, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"Ag" = ( -/obj/structure/table/wood, -/obj/item/book/granter/spell/mindswap, -/turf/open/floor/clockwork/reebe{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"JW" = ( -/obj/item/gun/energy/kinetic_accelerator/crossbow, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"RR" = ( -/obj/item/gun/magic/staff/spellblade, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"RY" = ( -/obj/item/book/granter/spell/sacredflame, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"Uf" = ( -/obj/item/book/granter/spell/barnyard, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) -"Wh" = ( -/obj/structure/chair/sofa{ - dir = 8 - }, -/mob/living/simple_animal/hostile/skeleton/plasmaminer, -/turf/open/floor/bronze{ - initial_gas_mix = "o2=14;n2=23;TEMP=300" - }, -/area/awaymission/vr/miner) - -(1,1,1) = {" -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -"} -(2,1,1) = {" -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -av -"} -(3,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -al -am -am -am -am -am -am -am -am -am -am -an -am -am -am -am -am -am -am -am -am -am -al -av -"} -(4,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -av -av -av -av -av -av -av -av -av -av -av -av -ab -ab -ab -av -av -av -av -av -av -av -av -av -av -av -av -av -al -am -am -am -an -an -am -am -am -al -am -am -am -al -am -am -am -an -an -am -am -am -al -av -"} -(5,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -av -av -av -av -av -av -av -av -av -av -av -av -ab -ab -ab -av -av -av -av -av -av -av -av -av -av -av -av -av -al -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -al -av -"} -(6,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -av -av -av -av -av -av -av -av -av -av -av -av -ab -ab -ab -av -av -av -av -av -av -av -av -av -av -av -av -av -al -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -al -av -"} -(7,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -av -av -av -av -av -av -av -av -av -av -av -av -au -au -au -av -av -av -av -av -av -av -av -av -av -av -av -av -al -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -al -av -"} -(8,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ac -au -au -au -as -aI -aI -aI -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -al -av -"} -(9,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ad -au -au -au -ax -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -an -an -ao -ao -ao -al -ao -ao -ao -al -ao -ao -ao -an -an -am -am -am -al -av -"} -(10,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -af -au -au -au -aB -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -ao -ao -ao -ao -ao -aq -ao -ao -ao -ao -ao -am -am -am -am -am -al -av -"} -(11,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -al -am -am -am -ao -al -ao -ao -ao -ao -ao -ao -ao -al -ao -am -am -am -al -am -al -av -"} -(12,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aQ -aR -aQ -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -al -av -"} -(13,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ay -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aQ -aW -aQ -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -al -an -am -am -an -an -ao -ao -aq -ao -ao -ar -ao -ao -aq -ao -ao -an -an -am -am -an -al -av -"} -(14,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aR -aQ -aV -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -al -av -"} -(15,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -al -am -am -am -ao -al -ao -ao -ao -ao -ao -ao -ao -al -ao -am -am -am -al -am -al -av -"} -(16,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -ao -ao -ao -ao -ao -aq -ao -ao -ao -ao -ao -am -am -am -am -am -al -av -"} -(17,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -an -an -ao -ao -ao -al -ao -ao -ao -al -ao -ao -ao -an -an -am -am -am -al -av -"} -(18,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -al -av -"} -(19,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aU -aU -aU -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -al -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -al -av -"} -(20,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aP -aU -bt -aU -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -al -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -al -av -"} -(21,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aU -aU -aU -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -al -av -"} -(22,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -an -an -am -am -am -al -am -am -am -al -am -am -am -an -an -am -am -am -al -av -"} -(23,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -am -am -am -am -am -am -am -am -am -am -an -am -am -am -am -am -am -am -am -am -am -al -av -"} -(24,1,1) = {" -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -av -"} -(25,1,1) = {" -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -"} -(26,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aT -aT -aT -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(27,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aT -bg -aT -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(28,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aT -aT -aT -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(29,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(30,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(31,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(32,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(33,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aL -aL -aL -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(34,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aL -aM -aL -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(35,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aL -aL -aL -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(36,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aD -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aN -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(37,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(38,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(39,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(40,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -am -am -am -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(41,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -am -aO -am -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(42,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -am -am -am -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(43,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(44,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(45,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(46,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -au -au -au -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -az -av -"} -(47,1,1) = {" -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -aj -aj -aj -aj -aj -aj -aA -aA -aA -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -"} -(48,1,1) = {" -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -aj -aj -aj -aj -aj -aj -aA -bu -aA -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -"} -(49,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aA -aA -aA -au -au -au -au -au -au -au -au -au -ae -ae -ae -aj -aj -aj -aj -aj -aj -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(50,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ag -ah -ag -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(51,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ah -ai -ah -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(52,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ag -ah -ag -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(53,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(54,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(55,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(56,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(57,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(58,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(59,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aG -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aH -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(60,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(61,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(62,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(63,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(64,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(65,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(66,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(67,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(68,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(69,1,1) = {" -av -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -av -"} -(70,1,1) = {" -av -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -av -"} -(71,1,1) = {" -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -av -"} -(72,1,1) = {" -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(73,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -aY -bk -bk -bm -ag -ag -ag -ag -ag -ak -"} -(74,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -aZ -bo -bo -bo -ah -ah -ah -ah -ag -ak -"} -(75,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -aZ -bo -ah -ah -ah -ah -ah -ah -ag -ak -"} -(76,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -ba -bo -ah -ah -ah -ah -ah -ah -ag -ak -"} -(77,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(78,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(79,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(80,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -bb -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(81,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -bc -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(82,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -bd -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(83,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ap -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aK -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aa -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aK -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aC -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aK -ag -ah -ah -ah -ah -ah -ah -ah -aF -ak -"} -(84,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -be -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(85,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -bf -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(86,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -bh -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(87,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(88,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(89,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -ag -ah -ah -ah -ah -ah -ah -ah -ag -ak -"} -(90,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -bi -bo -ah -ah -ah -ah -ah -ah -ag -ak -"} -(91,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -aZ -bo -ah -ah -ah -ah -ah -ah -ag -ak -"} -(92,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -aZ -bo -bo -bo -ah -ah -ah -ah -ag -ak -"} -(93,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -ak -bj -bl -bl -bn -ag -ag -ag -ag -ag -ak -"} -(94,1,1) = {" -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -ak -"} -(95,1,1) = {" -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -"} -(96,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -am -am -am -am -am -an -am -am -am -am -am -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -bp -bw -bw -bz -aS -aS -aS -aS -aS -aJ -"} -(97,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -an -an -am -am -am -al -am -am -am -al -am -am -am -an -an -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -bq -bx -bx -bx -aX -aX -aX -aX -aS -aJ -"} -(98,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -bq -bx -aX -aX -aX -aX -aX -aX -aS -aJ -"} -(99,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -br -bx -aX -aX -aX -aX -aX -aX -aS -aJ -"} -(100,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -Uf -aJ -"} -(101,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -uE -aJ -"} -(102,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -an -an -ao -ao -ao -al -ao -ao -ao -al -ao -ao -ao -an -an -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -RY -aJ -"} -(103,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -ao -ao -ao -ao -ao -aq -ao -ao -ao -ao -ao -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -nv -aJ -"} -(104,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -al -am -am -am -ao -al -ao -ao -ao -ao -ao -ao -ao -al -ao -am -am -am -al -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -kN -aJ -"} -(105,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -pY -aJ -"} -(106,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -at -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aK -an -am -am -an -an -ao -ao -aq -ao -ao -aw -ao -ao -aq -ao -ao -an -an -am -am -an -aK -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aE -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aK -aS -aX -aX -aX -aX -aX -aX -aX -RR -aJ -"} -(107,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -jQ -aJ -"} -(108,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -al -am -am -am -ao -al -ao -ao -ao -ao -ao -ao -ao -al -ao -am -am -am -al -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -lJ -aJ -"} -(109,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -ao -ao -ao -ao -ao -aq -ao -ao -ao -ao -ao -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -JW -aJ -"} -(110,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -an -an -ao -ao -ao -al -ao -ao -ao -al -ao -ao -ao -an -an -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -eq -aJ -"} -(111,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -ek -aJ -"} -(112,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -aS -aX -aX -aX -aX -aX -aX -aX -xx -aJ -"} -(113,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -an -am -al -al -am -an -am -am -am -an -am -am -am -an -am -al -al -am -an -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -bs -bx -aX -aX -aX -aX -aX -aX -aS -aJ -"} -(114,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -bq -bx -aX -aX -aX -aX -aX -aX -aS -aJ -"} -(115,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -an -an -am -am -am -al -am -am -am -al -am -am -am -an -an -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -bq -Ag -bx -bx -aX -aX -aX -aX -aS -aJ -"} -(116,1,1) = {" -az -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -aj -az -am -am -am -am -am -am -am -am -am -am -an -am -am -am -am -am -am -am -am -am -am -az -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aA -aJ -bv -Wh -by -bA -aS -aS -aS -aS -aS -aJ -"} -(117,1,1) = {" -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -al -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -az -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -aJ -"} diff --git a/_maps/RandomZLevels/VR/murderdome.dmm b/_maps/RandomZLevels/VR/murderdome.dmm deleted file mode 100644 index 7495f6bc5a7..00000000000 --- a/_maps/RandomZLevels/VR/murderdome.dmm +++ /dev/null @@ -1,2851 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"a" = ( -/turf/open/space/basic, -/area/space) -"b" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/vr/murderdome) -"c" = ( -/obj/structure/rack, -/obj/item/gun/energy/beam_rifle, -/obj/item/gun/energy/beam_rifle, -/obj/item/gun/energy/beam_rifle, -/obj/item/gun/energy/beam_rifle, -/obj/item/gun/energy/beam_rifle, -/obj/item/gun/energy/beam_rifle, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"d" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/automatic/l6_saw/unrestricted, -/obj/item/gun/ballistic/automatic/l6_saw/unrestricted, -/obj/item/gun/ballistic/automatic/l6_saw/unrestricted, -/obj/item/gun/ballistic/automatic/l6_saw/unrestricted, -/obj/item/gun/ballistic/automatic/l6_saw/unrestricted, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"e" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"f" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/automatic/m90/unrestricted, -/obj/item/gun/ballistic/automatic/m90/unrestricted, -/obj/item/gun/ballistic/automatic/m90/unrestricted, -/obj/item/gun/ballistic/automatic/m90/unrestricted, -/obj/item/gun/ballistic/automatic/m90/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"g" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/automatic/tommygun, -/obj/item/gun/ballistic/automatic/tommygun, -/obj/item/gun/ballistic/automatic/tommygun, -/obj/item/gun/ballistic/automatic/tommygun, -/obj/item/gun/ballistic/automatic/tommygun, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"h" = ( -/obj/structure/rack, -/obj/item/gun/energy/decloner, -/obj/item/gun/energy/decloner, -/obj/item/gun/energy/decloner, -/obj/item/gun/energy/decloner, -/obj/item/gun/energy/decloner, -/obj/item/gun/energy/decloner, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"i" = ( -/obj/machinery/recharger, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"j" = ( -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"k" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/automatic/proto/unrestricted, -/obj/item/gun/ballistic/automatic/proto/unrestricted, -/obj/item/gun/ballistic/automatic/proto/unrestricted, -/obj/item/gun/ballistic/automatic/proto/unrestricted, -/obj/item/gun/ballistic/automatic/proto/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/obj/item/gun/ballistic/automatic/c20r/unrestricted, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"l" = ( -/obj/structure/rack, -/obj/item/gun/energy/laser/scatter, -/obj/item/gun/energy/laser/scatter, -/obj/item/gun/energy/laser/scatter, -/obj/item/gun/energy/laser/scatter, -/obj/item/gun/energy/laser/scatter, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"m" = ( -/obj/effect/landmark/vr_spawn, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"n" = ( -/obj/item/firing_pin, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"o" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/shotgun/automatic/combat, -/obj/item/gun/ballistic/shotgun/automatic/combat, -/obj/item/gun/ballistic/shotgun/automatic/combat, -/obj/item/gun/ballistic/shotgun/automatic/combat, -/obj/item/gun/ballistic/shotgun/automatic/combat, -/obj/item/gun/ballistic/shotgun/automatic/combat, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"p" = ( -/obj/structure/rack, -/obj/item/gun/energy/xray, -/obj/item/gun/energy/xray, -/obj/item/gun/energy/xray, -/obj/item/gun/energy/xray, -/obj/item/gun/energy/xray, -/obj/item/gun/energy/xray, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"q" = ( -/obj/item/melee/baton/loaded, -/obj/item/melee/baton/loaded, -/obj/item/melee/baton/loaded, -/obj/item/melee/baton/loaded, -/obj/item/melee/baton/loaded, -/obj/item/melee/baton/loaded, -/obj/item/melee/transforming/energy/sword/saber, -/obj/item/melee/transforming/energy/sword/saber, -/obj/item/melee/transforming/energy/sword/saber, -/obj/item/melee/transforming/energy/sword/saber, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"r" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/rifle/boltaction, -/obj/item/gun/ballistic/rifle/boltaction, -/obj/item/gun/ballistic/rifle/boltaction, -/obj/item/gun/ballistic/rifle/boltaction, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"s" = ( -/obj/structure/rack, -/obj/item/gun/energy/e_gun/nuclear, -/obj/item/gun/energy/e_gun/nuclear, -/obj/item/gun/energy/e_gun/nuclear, -/obj/item/gun/energy/e_gun/nuclear, -/obj/item/gun/energy/e_gun/nuclear, -/obj/item/gun/energy/e_gun/nuclear, -/obj/item/gun/energy/e_gun/nuclear, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"t" = ( -/obj/structure/rack, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/obj/item/gun/energy/pulse/carbine, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"v" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/shotgun/bulldog/unrestricted, -/obj/item/gun/ballistic/shotgun/bulldog/unrestricted, -/obj/item/gun/ballistic/shotgun/bulldog/unrestricted, -/obj/item/gun/ballistic/shotgun/bulldog/unrestricted, -/obj/item/gun/ballistic/shotgun/bulldog/unrestricted, -/obj/item/gun/ballistic/shotgun/bulldog/unrestricted, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"w" = ( -/obj/machinery/light, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"y" = ( -/obj/structure/barricade/security/murderdome, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"z" = ( -/obj/structure/barricade/security/murderdome, -/obj/structure/barricade/security/murderdome, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"A" = ( -/turf/open/indestructible/sound, -/area/awaymission/vr/murderdome) -"B" = ( -/obj/structure/barricade/security/murderdome, -/turf/open/indestructible/sound, -/area/awaymission/vr/murderdome) -"C" = ( -/obj/structure/barricade/security/murderdome, -/obj/structure/barricade/security/murderdome, -/turf/open/indestructible/sound, -/area/awaymission/vr/murderdome) -"D" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/item/gun/ballistic/automatic/wt550, -/obj/machinery/light, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"E" = ( -/obj/structure/rack, -/obj/item/gun/ballistic/automatic/ar, -/obj/item/gun/ballistic/automatic/ar, -/obj/item/gun/ballistic/automatic/ar, -/obj/item/gun/ballistic/automatic/ar, -/obj/item/gun/ballistic/automatic/ar, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"H" = ( -/obj/machinery/telecomms/allinone, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"R" = ( -/obj/effect/spawner/structure/window/reinforced/indestructable, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"W" = ( -/obj/effect/vr_clean_master, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) -"Y" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/vr/murderdome) - -(1,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 -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(2,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(3,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(4,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -y -y -y -y -y -y -y -y -B -j -j -j -j -j -j -j -j -w -R -R -R -j -w -b -b -j -j -j -j -m -j -D -b -"} -(5,1,1) = {" -b -f -j -n -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(6,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(7,1,1) = {" -b -b -b -b -b -b -b -b -Y -R -j -j -j -j -j -j -j -R -Y -j -j -j -j -j -w -R -Y -j -j -j -j -w -R -j -j -j -j -j -j -j -R -w -b -b -b -b -b -b -b -b -"} -(8,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(9,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(10,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -j -j -j -j -j -j -j -j -C -y -y -y -y -y -y -y -j -w -R -R -R -j -j -b -b -j -j -j -j -m -j -D -b -"} -(11,1,1) = {" -b -f -j -n -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(12,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(13,1,1) = {" -b -b -b -b -b -b -b -b -Y -R -j -j -j -j -j -j -j -R -Y -j -j -j -j -j -w -R -Y -j -j -j -j -w -R -j -j -j -j -j -j -j -R -w -b -b -b -b -b -b -b -b -"} -(14,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(15,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(16,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -y -y -z -y -y -y -y -y -B -j -j -j -j -j -j -j -j -w -R -R -R -j -w -b -b -j -j -j -j -m -j -D -b -"} -(17,1,1) = {" -b -f -j -n -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(18,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(19,1,1) = {" -b -b -b -b -b -b -b -b -Y -R -j -j -j -j -j -j -j -R -Y -j -j -j -j -j -w -R -Y -j -j -j -j -w -R -j -j -j -j -j -j -j -R -w -b -b -b -b -b -b -b -b -"} -(20,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(21,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(22,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -j -j -j -j -W -j -j -j -B -y -y -y -y -y -y -y -j -w -R -R -R -j -w -b -b -j -j -j -j -m -j -D -b -"} -(23,1,1) = {" -b -f -j -n -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(24,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(25,1,1) = {" -b -b -b -b -b -b -b -b -Y -R -j -j -j -j -j -j -j -R -Y -j -j -j -j -j -w -R -Y -j -j -j -j -w -R -j -j -j -j -j -j -j -R -w -b -b -b -b -b -b -b -b -"} -(26,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(27,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(28,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -y -y -y -y -y -y -y -y -B -j -j -j -j -j -j -j -j -w -R -R -R -j -w -b -b -j -j -j -j -m -j -D -b -"} -(29,1,1) = {" -b -f -j -n -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(30,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(31,1,1) = {" -b -b -b -b -b -b -b -b -Y -R -j -j -j -j -j -j -j -R -Y -j -j -j -j -j -w -R -Y -j -j -j -j -w -R -j -j -j -j -j -j -j -R -w -b -b -b -b -b -b -b -b -"} -(32,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(33,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(34,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -j -j -j -j -j -j -j -j -B -y -y -y -y -y -y -y -j -w -R -R -R -j -w -b -b -j -j -j -j -m -j -D -b -"} -(35,1,1) = {" -b -f -j -n -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(36,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(37,1,1) = {" -b -b -b -b -b -b -b -b -Y -R -j -j -j -j -j -j -j -R -Y -j -j -j -j -j -w -R -Y -j -j -j -j -w -R -j -j -j -j -j -j -j -R -w -b -b -b -b -b -b -b -b -"} -(38,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(39,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(40,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -y -y -y -y -y -y -y -y -B -j -j -j -j -j -j -j -j -w -R -R -R -j -w -b -b -j -j -j -j -m -j -D -b -"} -(41,1,1) = {" -b -f -j -j -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(42,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(43,1,1) = {" -b -b -b -b -b -b -b -b -Y -R -j -j -j -j -j -j -j -R -Y -j -j -j -j -j -w -R -Y -j -j -j -j -w -R -j -j -j -j -j -j -j -R -w -b -b -b -b -b -b -b -b -"} -(44,1,1) = {" -b -c -h -l -p -s -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -c -h -l -p -s -b -"} -(45,1,1) = {" -b -d -i -i -j -t -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -d -j -i -i -t -b -"} -(46,1,1) = {" -b -e -j -m -j -j -j -j -b -b -Y -j -R -R -R -Y -j -j -j -j -j -j -j -j -j -B -y -y -y -y -y -y -y -j -w -R -R -R -j -w -b -b -j -j -j -j -m -j -D -b -"} -(47,1,1) = {" -b -f -j -n -q -E -b -j -j -j -j -j -j -R -j -j -j -j -j -j -j -j -j -j -j -A -j -j -j -j -j -j -j -j -j -j -R -j -j -j -j -j -j -b -f -q -n -j -E -b -"} -(48,1,1) = {" -b -g -k -o -r -v -b -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -j -j -j -j -b -j -j -j -j -j -j -j -b -j -j -b -g -k -o -r -v -b -"} -(49,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 -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -b -"} -(50,1,1) = {" -H -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -a -"} diff --git a/_maps/RandomZLevels/VR/snowdin_VR.dmm b/_maps/RandomZLevels/VR/snowdin_VR.dmm deleted file mode 100644 index 6d9ef82c423..00000000000 --- a/_maps/RandomZLevels/VR/snowdin_VR.dmm +++ /dev/null @@ -1,81236 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/indestructible/rock/snow, -/area/awaymission/snowdin/cave/mountain) -"ac" = ( -/turf/closed/indestructible/rock/snow, -/area/awaymission/snowdin/cave/mountain) -"ad" = ( -/turf/open/space/basic, -/area/space) -"ae" = ( -/turf/closed/mineral/snowmountain, -/area/awaymission/snowdin/cave/mountain) -"af" = ( -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"ag" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"ah" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/ice, -/area/awaymission/snowdin/cave) -"ai" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/cave) -"aj" = ( -/turf/closed/mineral/snowmountain, -/area/awaymission/snowdin/cave) -"ak" = ( -/obj/structure/flora/bush, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"al" = ( -/obj/structure/flora/tree/dead, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"am" = ( -/obj/structure/flora/grass/both, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"an" = ( -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"ao" = ( -/obj/structure/flora/stump, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"ap" = ( -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"aq" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/research) -"ar" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/research) -"as" = ( -/obj/effect/turf_decal/weather/snow, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"at" = ( -/obj/item/pickaxe, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"au" = ( -/obj/effect/turf_decal/weather/snow, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"av" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"aw" = ( -/obj/machinery/computer, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"ax" = ( -/obj/structure/table, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"ay" = ( -/obj/structure/table, -/obj/item/flashlight/lamp, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"az" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/research) -"aA" = ( -/obj/structure/table, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/disk/holodisk/snowdin/weregettingpaidright, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aB" = ( -/obj/structure/table, -/obj/item/pen, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aC" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/research) -"aD" = ( -/obj/structure/table, -/obj/item/flashlight/lamp, -/obj/item/pen, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aE" = ( -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aF" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aG" = ( -/obj/structure/table, -/obj/item/paper_bin, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aH" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aI" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aJ" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/dorm) -"aK" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/dorm) -"aL" = ( -/obj/item/pen, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aM" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/item/paper/fluff/awaymissions/snowdin/research_feed, -/obj/item/paper/fluff/awaymissions/snowdin/research_feed, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aN" = ( -/obj/item/paper/fluff/awaymissions/snowdin/research_feed, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aO" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aP" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/item/paper/fluff/awaymissions/snowdin/research_feed, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"aQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"aR" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/item/bedsheet/purple, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"aS" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/dorm) -"aT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/bedsheet/purple, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"aU" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"aV" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/dorm) -"aW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"aX" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"aY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"aZ" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/bedsheet/orange, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"ba" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/sign/poster/contraband/kudzu{ - pixel_y = 32 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"bb" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/item/paper/crumpled/ruins/snowdin/dontdeadopeninside, -/obj/item/bedsheet/green, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bc" = ( -/obj/structure/window, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"bd" = ( -/obj/structure/window, -/obj/item/flashlight/lamp, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/research) -"be" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/kitchen) -"bf" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/kitchen) -"bg" = ( -/obj/effect/baseturf_helper/asteroid/snow{ - baseturf = /turf/open/floor/plating/asteroid/snow/ice; - name = "asteroid snowice baseturf editor" - }, -/turf/closed/indestructible/rock/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"bh" = ( -/turf/closed/indestructible/rock/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"bi" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"bj" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light/small/broken{ - dir = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bk" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/paper/crumpled/ruins/snowdin/foreshadowing, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bl" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bm" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bn" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"bo" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/research) -"bp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"br" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bs" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/research) -"bt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"bv" = ( -/obj/machinery/gibber, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"bw" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/kitchenspike, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"bx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"by" = ( -/obj/structure/closet, -/obj/item/clothing/suit/hooded/wintercoat/science, -/obj/item/clothing/shoes/winterboots, -/obj/machinery/button/door/indestructible{ - id = "snowdindormresearch3"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_y = -25; - specialfunctions = 4 - }, -/obj/item/tome, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bz" = ( -/obj/structure/closet, -/obj/item/clothing/suit/hooded/wintercoat/science, -/obj/item/clothing/shoes/winterboots, -/obj/machinery/button/door/indestructible{ - id = "snowdindormresearch2"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_y = -25; - specialfunctions = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"bB" = ( -/obj/structure/closet, -/obj/item/clothing/shoes/winterboots, -/obj/machinery/button/door/indestructible{ - id = "snowdindormresearch1"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_y = -25; - specialfunctions = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bC" = ( -/obj/structure/closet, -/obj/machinery/button/door/indestructible{ - id = "snowdindormhydro2"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_y = -25; - specialfunctions = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bD" = ( -/obj/structure/closet, -/obj/item/clothing/suit/hooded/wintercoat/hydro, -/obj/item/clothing/shoes/winterboots, -/obj/machinery/button/door/indestructible{ - id = "snowdindormhydro1"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_y = -25; - specialfunctions = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bE" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/research) -"bH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bK" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"bM" = ( -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"bN" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"bO" = ( -/obj/structure/rack, -/obj/item/storage/toolbox/electrical, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"bP" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Dorms APC"; - pixel_x = 26 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"bQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - id_tag = "snowdindormresearch3"; - name = "Jouslen McGee's Private Quarters" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - id_tag = "snowdindormresearch2"; - name = "Elizabeth Queef's Private Quarters" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - id_tag = "snowdindormresearch1"; - name = "Jacob Ullman's Private Quarters" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - id_tag = "snowdindormhydro2"; - name = "Rachel Migro's Private Quarters" - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"bU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - id_tag = "snowdindormhydro1"; - name = "Katherine Esterdeen's Private Quarters" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"bV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/research) -"bW" = ( -/obj/machinery/door/firedoor, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bX" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"bY" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/research) -"bZ" = ( -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"ca" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/spider/stickyweb, -/obj/machinery/light/broken{ - dir = 8 - }, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"cb" = ( -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"cc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/kitchenspike, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"cd" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/kitchen) -"ce" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cf" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/structure/spider/stickyweb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cg" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Kitchen APC"; - pixel_x = 1; - pixel_y = 25 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"ch" = ( -/obj/structure/table, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"ci" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"cj" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"ck" = ( -/obj/structure/table, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"cm" = ( -/obj/machinery/light/small, -/obj/structure/rack, -/obj/item/storage/toolbox/mechanical, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"cn" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"co" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"cp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cq" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cr" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"cs" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"ct" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cv" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"cw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/dorm) -"cz" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Research Desks" - }, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"cA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"cB" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"cC" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/research) -"cD" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"cE" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"cF" = ( -/obj/machinery/vending/cola/random, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"cG" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/spider/stickyweb, -/mob/living/simple_animal/hostile/poison/giant_spider/hunter/ice, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"cH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"cI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"cJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/airlock{ - name = "Freezer" - }, -/obj/structure/barricade/wooden, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"cK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/kitchen/fork, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"cM" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/item/storage/box{ - illustration = "donk_kit"; - name = "box of donkpockets" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"cO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"cP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"cS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/food/egg_smudge, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"cT" = ( -/obj/item/stack/sheet/mineral/wood, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"cU" = ( -/obj/effect/turf_decal/weather/snow, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - name = "explosives ordinance" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"cV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"cW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cX" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cY" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"cZ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/item/trash/can, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"da" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"db" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/dorm) -"dc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/dorm) -"dd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"de" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"df" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/dorm) -"dg" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/public/glass{ - name = "Research Desks" - }, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"dh" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"di" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"dj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/research) -"dk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"dl" = ( -/obj/machinery/light, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/research) -"dm" = ( -/obj/machinery/vending/snack/random, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/research) -"dn" = ( -/obj/structure/closet/secure_closet/freezer/meat, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"do" = ( -/obj/structure/closet/secure_closet/freezer/meat, -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel/freezer, -/area/awaymission/snowdin/post/kitchen) -"dp" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/kitchen) -"dq" = ( -/obj/structure/spider/stickyweb, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dr" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"ds" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/kitchen) -"dt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/food/flour, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"du" = ( -/obj/machinery/deepfryer, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dv" = ( -/obj/structure/table, -/obj/item/reagent_containers/glass/beaker/large, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dw" = ( -/obj/machinery/deepfryer, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dx" = ( -/obj/effect/turf_decal/weather/snow, -/obj/structure/closet/crate{ - name = "explosives ordinance" - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"dy" = ( -/obj/effect/turf_decal/weather/snow, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - name = "explosives ordinance" - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"dz" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"dA" = ( -/obj/structure/falsewall, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"dB" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"dC" = ( -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"dD" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"dE" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"dF" = ( -/obj/machinery/washing_machine, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"dG" = ( -/obj/machinery/light, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"dH" = ( -/obj/structure/table, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"dI" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"dJ" = ( -/obj/structure/table, -/obj/item/bedsheet/purple, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"dK" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post) -"dL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"dM" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post) -"dN" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/messhall) -"dO" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/messhall) -"dP" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/messhall) -"dQ" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Kitchen"; - req_access_txt = "35" - }, -/obj/structure/barricade/wooden/crude, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dR" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/closet/secure_closet/freezer/fridge, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dS" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/item/storage/box{ - illustration = "donk_kit"; - name = "box of donkpockets" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dT" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/condiment/enzyme, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"dU" = ( -/obj/structure/table, -/obj/item/kitchen/knife, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"dV" = ( -/obj/effect/decal/cleanable/food/egg_smudge, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/kitchen) -"dW" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/kitchen) -"dX" = ( -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"dY" = ( -/obj/structure/ladder/unbreakable{ - height = 1; - id = "snowdin" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"dZ" = ( -/obj/machinery/light/small/broken{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"ea" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"eb" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/sign/poster/contraband/lusty_xenomorph{ - pixel_x = 32 - }, -/obj/structure/table/wood, -/obj/item/paper_bin, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"ec" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/dorm) -"ed" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"ee" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"ef" = ( -/obj/structure/closet, -/obj/item/clothing/suit/hooded/wintercoat/security, -/obj/item/clothing/shoes/winterboots, -/obj/machinery/button/door/indestructible{ - id = "snowdindormsec"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = -25; - specialfunctions = 4 - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"eg" = ( -/obj/structure/table/wood, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/trash/cheesie, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"eh" = ( -/obj/structure/bed, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/item/bedsheet/red, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"ei" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall, -/area/awaymission/snowdin/post) -"ej" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"ek" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"el" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/grille/broken, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"em" = ( -/obj/machinery/power/apc{ - dir = 2; - name = "Gateway APC"; - pixel_y = -24; - req_access = 150 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/gateway) -"en" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Research Center APC"; - pixel_x = 1; - pixel_y = 25 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/research) -"eo" = ( -/obj/machinery/light/small, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"ep" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"eq" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Mess Hall APC"; - pixel_x = 26 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"er" = ( -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks/beer, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"es" = ( -/obj/structure/table, -/obj/machinery/chem_dispenser/drinks, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"et" = ( -/obj/machinery/vending/boozeomat{ - req_access_txt = "0" - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"eu" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/table, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"ev" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"ew" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"ex" = ( -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"ey" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/obj/structure/closet/secure_closet/freezer/kitchen, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"ez" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"eA" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"eB" = ( -/obj/effect/decal/cleanable/food/flour, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/kitchen) -"eC" = ( -/obj/item/kitchen/knife{ - pixel_x = 6; - pixel_y = 6 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"eD" = ( -/obj/structure/table, -/obj/item/kitchen/rollingpin, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"eE" = ( -/turf/closed/wall/mineral/wood, -/area/awaymission/snowdin/outside) -"eF" = ( -/obj/structure/mineral_door/wood, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/outside) -"eG" = ( -/obj/structure/barricade/wooden, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"eH" = ( -/obj/structure/barricade/wooden, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"eI" = ( -/obj/item/crowbar, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"eJ" = ( -/turf/closed/mineral/snowmountain/cavern, -/area/awaymission/snowdin/cave/cavern) -"eK" = ( -/turf/closed/wall/mineral/cult, -/area/awaymission/snowdin/cave/cavern) -"eL" = ( -/turf/closed/mineral/plasma/ice, -/area/awaymission/snowdin/cave/cavern) -"eM" = ( -/obj/structure/flora/tree/pine, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"eN" = ( -/obj/structure/dresser, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"eO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"eP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"eQ" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/dorm) -"eR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/dorm) -"eS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"eT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/airlock{ - id_tag = "snowdindormsec"; - name = "James Reed's Private Quarters" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"eU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/dorm) -"eV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/trash/cheesie, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"eW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/trash/cheesie, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/dorm) -"eX" = ( -/obj/structure/closet/crate/freezer, -/obj/item/reagent_containers/blood/random, -/obj/item/reagent_containers/blood, -/obj/item/reagent_containers/blood, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"eY" = ( -/obj/machinery/iv_drip, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"eZ" = ( -/obj/structure/table, -/obj/item/clothing/neck/stethoscope, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fa" = ( -/obj/structure/table, -/obj/item/clothing/glasses/hud/health, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fb" = ( -/obj/machinery/vending/wallmed{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fc" = ( -/obj/structure/table, -/obj/item/storage/firstaid/ancient, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fd" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"fe" = ( -/obj/structure/rack, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/item/storage/toolbox/emergency, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"ff" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall, -/area/awaymission/snowdin/post/gateway) -"fg" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/gateway) -"fh" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/gateway) -"fi" = ( -/obj/structure/barricade/wooden/crude, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"fj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/public/glass{ - name = "Kitchen"; - req_access_txt = "35" - }, -/obj/machinery/door/firedoor, -/obj/structure/barricade/wooden/crude, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"fk" = ( -/obj/machinery/smartfridge, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"fl" = ( -/obj/structure/table, -/obj/machinery/door/firedoor, -/obj/structure/barricade/wooden/crude, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/kitchen) -"fm" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/hydro) -"fn" = ( -/obj/structure/rack, -/obj/item/stack/sheet/mineral/wood{ - amount = 15 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/outside) -"fo" = ( -/turf/open/floor/wood, -/area/awaymission/snowdin/outside) -"fp" = ( -/obj/structure/rack, -/obj/item/grown/log/tree, -/obj/item/grown/log/tree{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/grown/log/tree{ - pixel_x = -2; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/outside) -"fq" = ( -/obj/structure/flora/tree/pine, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"fr" = ( -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"fs" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"ft" = ( -/obj/structure/sign/poster/official/no_erp{ - pixel_x = -32 - }, -/obj/machinery/holopad, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/dorm) -"fu" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"fv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/firealarm{ - dir = 4; - pixel_x = 26 - }, -/obj/machinery/light/broken{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"fw" = ( -/obj/machinery/sleeper{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fx" = ( -/obj/item/reagent_containers/blood, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fz" = ( -/obj/item/flashlight/pen, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fB" = ( -/obj/item/storage/firstaid{ - empty = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fC" = ( -/obj/structure/table, -/obj/item/storage/firstaid/brute{ - empty = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"fD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"fE" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Outpost Hallway APC"; - pixel_x = 26 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"fF" = ( -/obj/structure/closet, -/obj/item/clothing/under/assistantformal, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/shoes/winterboots, -/obj/effect/turf_decal/bot, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"fG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"fH" = ( -/obj/structure/bed, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/item/bedsheet/nanotrasen, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"fI" = ( -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"fJ" = ( -/obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"fK" = ( -/obj/structure/table/reinforced, -/obj/item/trash/raisins, -/obj/structure/barricade/wooden/crude, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"fL" = ( -/obj/structure/table/reinforced, -/obj/item/kitchen/fork, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"fM" = ( -/obj/structure/table_frame, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"fN" = ( -/obj/structure/table_frame, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"fO" = ( -/obj/structure/table/reinforced, -/obj/item/storage/fancy/donut_box, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/messhall) -"fP" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/hydro) -"fQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"fR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"fS" = ( -/obj/item/kitchen/knife, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"fT" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"fU" = ( -/obj/machinery/light/broken{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"fV" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"fW" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/hydro) -"fX" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/garage) -"fY" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/garage) -"fZ" = ( -/obj/structure/table/wood, -/obj/item/hatchet, -/obj/item/hatchet{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/outside) -"ga" = ( -/obj/structure/table/wood, -/obj/structure/fireaxecabinet{ - pixel_y = -32 - }, -/obj/effect/spawner/lootdrop/snowdin/dungeonmisc, -/turf/open/floor/wood, -/area/awaymission/snowdin/outside) -"gb" = ( -/obj/structure/table/wood, -/obj/item/storage/toolbox/mechanical/old, -/turf/open/floor/wood, -/area/awaymission/snowdin/outside) -"gc" = ( -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"gd" = ( -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"ge" = ( -/turf/closed/mineral/iron/ice, -/area/awaymission/snowdin/cave/cavern) -"gf" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonheavy, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"gg" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/post/cavern2) -"gh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"gi" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"gj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 24 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"gk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/crowbar, -/obj/item/crowbar, -/obj/item/pickaxe/mini, -/obj/item/storage/toolbox/emergency, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"gl" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"gm" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/closet/crate, -/obj/item/clothing/shoes/winterboots, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/suit/hooded/wintercoat, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"gn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"go" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"gp" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"gq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"gr" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"gs" = ( -/obj/structure/table, -/obj/item/storage/firstaid/fire{ - empty = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"gt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"gu" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"gv" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"gw" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"gy" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"gz" = ( -/obj/machinery/light/broken{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"gA" = ( -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"gB" = ( -/obj/effect/decal/cleanable/food/pie_smudge, -/obj/item/trash/can, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"gC" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/messhall) -"gD" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"gE" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/reagent_containers/spray/plantbgone{ - pixel_y = 3 - }, -/obj/item/reagent_containers/spray/plantbgone{ - pixel_x = 7; - pixel_y = 7 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"gF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"gG" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"gH" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"gI" = ( -/obj/machinery/hydroponics/constructable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"gJ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"gK" = ( -/obj/machinery/hydroponics/constructable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"gL" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/hydro) -"gM" = ( -/obj/item/stack/cable_coil/red{ - amount = 1 - }, -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"gN" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"gO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/garage) -"gP" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"gQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"gR" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Garage APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"gS" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"gT" = ( -/obj/item/clothing/head/cone, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"gU" = ( -/obj/effect/decal/remains/human, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"gV" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"gW" = ( -/turf/closed/mineral/diamond/ice, -/area/awaymission/snowdin/cave/cavern) -"gX" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"gY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/button/door/indestructible{ - id = "snowdindormcap"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 25; - specialfunctions = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"gZ" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/trash/can, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"ha" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"hb" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/airlock/maintenance{ - name = "Misc Storage"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"hc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"hd" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"he" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/clothing/shoes/winterboots, -/obj/item/clothing/shoes/winterboots, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"hf" = ( -/obj/item/storage/firstaid/fire{ - empty = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"hg" = ( -/obj/item/shard, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"hh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/storage/firstaid/o2{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"hi" = ( -/obj/structure/table, -/obj/item/storage/firstaid/o2{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"hj" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"hk" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/machinery/conveyor_switch/oneway{ - id = "snowdin_belt_mine"; - name = "mining conveyor" - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"hl" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"hm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"hn" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"ho" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/loading_area, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"hp" = ( -/obj/item/chair, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"hq" = ( -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"hr" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"hs" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"ht" = ( -/obj/structure/table, -/obj/item/trash/waffles, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"hu" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"hv" = ( -/obj/effect/spawner/structure/window, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"hw" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"hx" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"hy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"hz" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/hydro) -"hA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"hB" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"hC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/garage) -"hD" = ( -/obj/machinery/power/terminal{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"hE" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"hF" = ( -/obj/structure/destructible/cult/pylon, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"hG" = ( -/obj/structure/closet, -/obj/item/clothing/suit/hooded/wintercoat/captain{ - name = "overseer's winter coat" - }, -/obj/item/clothing/shoes/winterboots, -/obj/item/key, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"hH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"hI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"hJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/airlock{ - id_tag = "snowdindormcap"; - name = "Overseer's Private Quarters" - }, -/turf/open/floor/carpet, -/area/awaymission/snowdin/post/dorm) -"hK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/dorm) -"hL" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"hM" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"hN" = ( -/obj/structure/grille/broken, -/obj/item/shard{ - icon_state = "medium" - }, -/obj/item/stack/rods{ - amount = 2 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"hO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/medical/glass{ - name = "Medbay Storage"; - req_access_txt = "45" - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post) -"hP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"hQ" = ( -/obj/structure/window, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"hR" = ( -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"hS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/turf_decal/stripes/line, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"hT" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"hU" = ( -/obj/structure/window, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"hV" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"hW" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"hX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/biogenerator, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"hY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"ib" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/hydro) -"ic" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/garage) -"id" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/garage) -"ie" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/garage) -"if" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"ig" = ( -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave/mountain) -"ih" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 6 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"ii" = ( -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"ij" = ( -/obj/item/clothing/head/cone, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"ik" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 10 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"il" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonmid, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"im" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/structure/spawner/nether{ - max_mobs = 5 - }, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"in" = ( -/mob/living/simple_animal/hostile/netherworld/blankbody{ - desc = "It's Caleb Reed, but their flesh has an ashy texture, and their face is featureless save an eerie smile."; - name = "Caleb Reed" - }, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"io" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"ip" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"iq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"ir" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"is" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock/public/glass{ - name = "Dorms" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"it" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"iu" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"iv" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"iw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/sign/departments/medbay{ - pixel_y = 32 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"ix" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"iy" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"iz" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/obj/item/paper_bin, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"iA" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "snowdin_gate" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"iB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"iC" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"iD" = ( -/obj/structure/table, -/obj/item/crowbar, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"iE" = ( -/obj/item/trash/candy, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"iF" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"iG" = ( -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"iH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"iI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/seed_extractor, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"iJ" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"iK" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/hydro) -"iL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"iM" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"iN" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/cobweb, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"iO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"iP" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"iQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"iR" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Garage" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"iS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"iT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/garage) -"iU" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Garage" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"iV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"iW" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"iX" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"iY" = ( -/obj/structure/fence, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"iZ" = ( -/obj/item/clothing/head/cone, -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"ja" = ( -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"jb" = ( -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"jc" = ( -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"jd" = ( -/obj/structure/bookcase/random, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"je" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"jf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"jg" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"jh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"ji" = ( -/obj/machinery/light, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/dorm) -"jj" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/dorm) -"jk" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Dorms" - }, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/dorm) -"jl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"jm" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"jn" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post) -"jo" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"jp" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"jq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"jr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"js" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"jt" = ( -/obj/structure/table, -/obj/machinery/button/door/indestructible{ - id = "snowdin_gate"; - pixel_x = 7; - pixel_y = -24 - }, -/obj/item/disk/holodisk/snowdin/welcometodie, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"ju" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"jw" = ( -/obj/structure/table, -/obj/item/paper/pamphlet/gateway, -/obj/item/paper/pamphlet/gateway{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/paper/pamphlet/gateway{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"jx" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -26 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"jy" = ( -/obj/structure/table, -/obj/item/trash/candle, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"jz" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/item/kitchen/fork, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"jA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/plantgenes, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"jB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"jC" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"jD" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"jF" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/garage) -"jG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"jH" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"jI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"jJ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"jK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"jL" = ( -/obj/vehicle/ridden/atv, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"jM" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical/old, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"jN" = ( -/obj/effect/spawner/lootdrop/snowdin/dungeonmisc, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"jO" = ( -/mob/living/simple_animal/hostile/netherworld/blankbody{ - desc = "It's Jacob Ullman, but their flesh has an ashy texture, and their face is featureless save an eerie smile."; - name = "Jacob Ullman" - }, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"jP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"jQ" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall, -/area/awaymission/snowdin/post/custodials) -"jR" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/custodials) -"jS" = ( -/obj/machinery/light, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"jT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post) -"jU" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"jV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"jW" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"jX" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"jY" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "snowdin_gate" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/gateway) -"jZ" = ( -/obj/effect/landmark/vr_spawn/snowdin, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"ka" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"kb" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/messhall) -"kc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/messhall) -"kd" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"ke" = ( -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"kf" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"kg" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"kh" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"ki" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/garage) -"kj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"kk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"kl" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"km" = ( -/obj/structure/sign/poster/contraband/tools{ - pixel_x = 32 - }, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/tank/internals/plasma, -/obj/item/tank/internals/plasma, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"kn" = ( -/obj/structure/fence/corner{ - dir = 9 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"ko" = ( -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"kp" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/structure/sign/nanotrasen, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"kq" = ( -/obj/structure/fence/door/opened, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"kr" = ( -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"ks" = ( -/obj/structure/fence/door, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"kt" = ( -/obj/structure/fence/corner, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"ku" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/cave/mountain) -"kv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/shower{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"kw" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/machinery/shower{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"kx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/shower{ - pixel_y = 25 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"ky" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/airlock{ - name = "Showers" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"kz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"kA" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"kB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"kC" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"kD" = ( -/obj/structure/table, -/obj/machinery/power/apc{ - dir = 1; - name = "Custodials APC"; - pixel_x = 1; - pixel_y = 25 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"kE" = ( -/obj/structure/table, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"kF" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post) -"kG" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"kH" = ( -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/item/paper/crumpled/ruins/snowdin/shovel, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"kI" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"kJ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"kK" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "snowdin_belt_mine" - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/post/mining_dock) -"kL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"kM" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Mess Hall" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"kN" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"kO" = ( -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"kP" = ( -/obj/item/trash/candy, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/messhall) -"kQ" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"kR" = ( -/obj/machinery/hydroponics/constructable, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"kS" = ( -/obj/machinery/hydroponics/constructable, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"kT" = ( -/obj/item/stack/cable_coil/red{ - amount = 1 - }, -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"kU" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"kV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"kW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"kX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"kY" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"kZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/garage) -"la" = ( -/obj/structure/filingcabinet, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"lb" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"lc" = ( -/obj/vehicle/ridden/atv, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"ld" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"le" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lg" = ( -/obj/machinery/light/small/broken{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"li" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/broken, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lk" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"ll" = ( -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"lm" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/janitorialcart, -/obj/item/mop, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"ln" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post) -"lo" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/snowdin_station_sign/up, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"lp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/snowdin_station_sign/up/two, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"lq" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/snowdin_station_sign/up/three, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"lr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/snowdin_station_sign/up/four, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"ls" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/snowdin_station_sign/up/five, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"lt" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/snowdin_station_sign/up/six, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"lu" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/snowdin_station_sign/up/seven, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"lw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"lx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"ly" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Mess Hall" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"lz" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"lA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"lB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"lC" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"lD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"lE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/public/glass{ - name = "Hydroponics"; - req_access_txt = "35" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"lF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"lG" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 2; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"lH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"lI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"lJ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"lK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/hydro) -"lL" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"lM" = ( -/obj/machinery/door/airlock/external/glass, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"lN" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"lO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"lP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"lQ" = ( -/obj/machinery/door/airlock{ - name = "Mechanic's Quarters" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"lR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"lS" = ( -/obj/structure/fence/corner{ - dir = 10 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"lT" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"lU" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/obj/machinery/shower{ - dir = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lV" = ( -/obj/machinery/shower{ - dir = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lW" = ( -/obj/machinery/shower{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lX" = ( -/obj/machinery/door/airlock{ - name = "Private Stall" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"lY" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/custodials) -"lZ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"ma" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"mb" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"mc" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock{ - name = "Custodial Closet" - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"md" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post) -"me" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mf" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/snowdin_station_sign, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mg" = ( -/obj/effect/turf_decal/snowdin_station_sign/two, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mh" = ( -/obj/effect/turf_decal/snowdin_station_sign/three, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mi" = ( -/obj/effect/turf_decal/snowdin_station_sign/four, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mj" = ( -/obj/effect/turf_decal/snowdin_station_sign/five, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mk" = ( -/obj/effect/turf_decal/snowdin_station_sign/six, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"ml" = ( -/obj/effect/turf_decal/snowdin_station_sign/seven, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mn" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"mo" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"mp" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"mq" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Hydroponics"; - req_access_txt = "35" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"mr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"ms" = ( -/obj/machinery/hydroponics/constructable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"mt" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"mu" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/hydro) -"mv" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"mw" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/weather/snow, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"mx" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"my" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"mz" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"mB" = ( -/obj/item/storage/toolbox/electrical, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"mC" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"mD" = ( -/obj/structure/toilet{ - dir = 1 - }, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/dorm) -"mE" = ( -/obj/structure/table, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"mF" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"mG" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"mH" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -26 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"mI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"mJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mL" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mM" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"mO" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/messhall) -"mP" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/engineering/glass{ - name = "Engineering"; - req_access_txt = "32" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/messhall) -"mQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"mR" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"mS" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"mT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"mU" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/shoes/winterboots{ - pixel_x = 2; - pixel_y = -2 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"mV" = ( -/obj/structure/table, -/obj/item/key, -/obj/item/key, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"mW" = ( -/obj/structure/table, -/obj/machinery/light/small, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"mX" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical, -/obj/item/storage/toolbox/mechanical{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/garage) -"mY" = ( -/obj/machinery/button/door/indestructible{ - id = "snowdingarage1"; - name = "garage door toggle"; - pixel_x = -24; - pixel_y = -7 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"mZ" = ( -/obj/structure/flora/grass/both, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"na" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/custodials) -"nb" = ( -/obj/structure/table, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"nc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/light/broken, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"nd" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post) -"ne" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"nf" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"ng" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"nh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"ni" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"nj" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"nk" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"nl" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall, -/area/awaymission/snowdin/post/engineering) -"nm" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"nn" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"no" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"np" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"nq" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/engineering) -"nr" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Engineering APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"ns" = ( -/obj/machinery/computer/monitor, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"nt" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/engineering) -"nu" = ( -/obj/machinery/vending/hydronutrients, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"nv" = ( -/obj/machinery/vending/hydroseeds, -/obj/machinery/light, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"nw" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/obj/item/watertank, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"nx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"ny" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"nz" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/hydro) -"nA" = ( -/obj/structure/reagent_dispensers/watertank/high, -/obj/item/reagent_containers/glass/bucket, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"nB" = ( -/obj/machinery/door/poddoor/shutters{ - id = "snowdingarage1"; - name = "garage door" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"nC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"nD" = ( -/obj/structure/closet/jcloset, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/custodials) -"nE" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/secpost) -"nF" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/secpost) -"nG" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/security{ - name = "Security Checkpoint"; - req_access = null; - req_access_txt = "1" - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"nH" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"nI" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/item/shard, -/obj/item/stack/cable_coil/red{ - amount = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"nJ" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"nK" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"nL" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"nM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"nN" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/engineering) -"nO" = ( -/obj/machinery/power/smes/engineering, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"nP" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"nQ" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"nR" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"nS" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"nT" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"nU" = ( -/obj/machinery/power/port_gen/pacman, -/obj/item/stack/sheet/mineral/plasma{ - amount = 10 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"nV" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/hydro) -"nW" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/hydro) -"nX" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/public/glass{ - name = "Hydroponics"; - req_access_txt = "35" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"nY" = ( -/obj/effect/spawner/structure/window, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) -"nZ" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/post/garage) -"oa" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"ob" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/secpost) -"oc" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/secpost) -"od" = ( -/obj/item/gun/ballistic/rifle/boltaction, -/obj/item/ammo_box/a762, -/obj/item/ammo_box/a762, -/obj/structure/closet/secure_closet{ - icon_state = "sec"; - locked = 1; - name = "security officer's locker"; - req_access_txt = "201" - }, -/obj/item/restraints/handcuffs, -/obj/item/assembly/flash, -/obj/item/storage/box/rubbershot, -/obj/structure/fireaxecabinet{ - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"oe" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Security Outpost APC"; - pixel_x = 1; - pixel_y = 25 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"of" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"og" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oh" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/obj/item/shard, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"oi" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oj" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/door/airlock/public/glass, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"ok" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/door/airlock/public/glass, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"ol" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/electricshock{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"om" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"on" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"oo" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4; - pixel_x = 5; - pixel_y = 5; - piping_layer = 3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"op" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 4; - pixel_x = 5; - pixel_y = 5; - piping_layer = 3 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"oq" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/table, -/obj/item/stack/sheet/glass/fifty{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/stack/sheet/metal/fifty{ - pixel_x = -1; - pixel_y = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"or" = ( -/obj/structure/table, -/obj/item/cultivator, -/obj/item/cultivator{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"ot" = ( -/obj/machinery/firealarm{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"ou" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"ov" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Hydroponics APC"; - pixel_x = 26 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"ow" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/cavern2) -"ox" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/cavern2) -"oy" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oz" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oA" = ( -/obj/machinery/door/window/brigdoor/westleft, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oB" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/machinery/holopad, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oC" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oD" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"oF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oG" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"oH" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"oI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"oJ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"oK" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"oL" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"oM" = ( -/obj/machinery/power/smes/engineering, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"oN" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"oO" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"oP" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"oQ" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/storage/toolbox/mechanical, -/obj/structure/sign/warning/enginesafety{ - pixel_x = 32 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"oR" = ( -/obj/structure/table, -/obj/item/hatchet{ - pixel_x = 4; - pixel_y = 4 - }, -/obj/item/hatchet, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"oS" = ( -/obj/structure/closet/crate/hydroponics, -/obj/item/shovel/spade, -/obj/item/wrench, -/obj/item/reagent_containers/glass/bucket, -/obj/item/wirecutters, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"oT" = ( -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"oU" = ( -/obj/machinery/chem_master/condimaster, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"oV" = ( -/obj/structure/closet/secure_closet/hydroponics, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/hydro) -"oW" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/engineering) -"oX" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/engineering) -"oY" = ( -/obj/structure/flora/rock/pile/icy, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"oZ" = ( -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"pa" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/cavern2) -"pb" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/item/paper_bin, -/obj/item/pen, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"pc" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"pd" = ( -/obj/structure/bed, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"pe" = ( -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/cavern2) -"pf" = ( -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/cavern2) -"pg" = ( -/obj/structure/table, -/obj/machinery/microwave, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/cavern2) -"ph" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pi" = ( -/obj/structure/bed, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pj" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/obj/structure/sign/poster/official/do_not_question{ - pixel_y = -32 - }, -/obj/item/wirecutters, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/screwdriver, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pl" = ( -/obj/machinery/light, -/obj/item/crowbar, -/obj/structure/noticeboard{ - dir = 1; - pixel_y = -32 - }, -/obj/item/paper/fluff/awaymissions/snowdin/secnotice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"pm" = ( -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pn" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"po" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pp" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post) -"pq" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"pr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"ps" = ( -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ - dir = 8; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"pt" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"pu" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"pv" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/visible{ - dir = 8 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/engineering) -"pw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"px" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"py" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/stock_parts/cell/high/plus, -/obj/item/storage/toolbox/electrical{ - pixel_x = 4; - pixel_y = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"pz" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/rack, -/obj/machinery/atmospherics/pipe/simple/supply/visible, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"pA" = ( -/turf/closed/wall, -/area/awaymission/snowdin/cave/cavern) -"pB" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"pC" = ( -/obj/item/chair, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"pD" = ( -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"pE" = ( -/turf/closed/wall/mineral/cult, -/area/awaymission/snowdin/post/cavern2) -"pF" = ( -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/cavern2) -"pG" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"pH" = ( -/turf/closed/wall/r_wall, -/area/awaymission/snowdin/post/secpost) -"pI" = ( -/turf/closed/wall/r_wall/rust, -/area/awaymission/snowdin/post/secpost) -"pJ" = ( -/obj/machinery/door/airlock/vault{ - name = "Armory"; - req_access_txt = "3" - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/secpost) -"pK" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/secpost) -"pM" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/item/paper/fluff/awaymissions/snowdin/profile/engi1, -/obj/item/paper/fluff/awaymissions/snowdin/profile/hydro1, -/obj/item/paper/fluff/awaymissions/snowdin/profile/overseer, -/obj/item/paper/fluff/awaymissions/snowdin/profile/research1, -/obj/item/paper/fluff/awaymissions/snowdin/profile/research2, -/obj/item/paper/fluff/awaymissions/snowdin/profile/research3, -/obj/item/paper/fluff/awaymissions/snowdin/profile/sec1, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"pN" = ( -/obj/structure/closet/emcloset, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"pO" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"pP" = ( -/obj/machinery/light, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"pQ" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"pR" = ( -/obj/structure/closet/emcloset, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post) -"pS" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"pT" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"pU" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/obj/machinery/holopad, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"pV" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"pW" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/visible{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"pX" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/visible{ - dir = 1 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/engineering) -"pY" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/engineering) -"pZ" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"qa" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/pump, -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qb" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qc" = ( -/obj/structure/reagent_dispensers/watertank/high, -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qd" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/item/clothing/head/welding, -/obj/item/weldingtool/largetank, -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qe" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 8 - }, -/turf/closed/wall, -/area/awaymission/snowdin/post/engineering) -"qf" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 9 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"qg" = ( -/obj/structure/flora/rock/pile/icy, -/turf/open/floor/engine/cult{ - initial_gas_mix = "o2=0;n2=82;plasma=24;TEMP=120"; - temperature = 120 - }, -/area/awaymission/snowdin/cave/cavern) -"qh" = ( -/obj/structure/fence, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"qi" = ( -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"qk" = ( -/obj/structure/closet, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"ql" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/cavern2) -"qm" = ( -/obj/structure/table, -/obj/item/storage/box/donkpockets, -/obj/item/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/cavern2) -"qn" = ( -/obj/structure/guncase/shotgun, -/obj/item/gun/ballistic/shotgun/automatic, -/obj/item/gun/ballistic/shotgun/automatic, -/obj/item/gun/ballistic/shotgun/automatic, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/secpost) -"qo" = ( -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/secpost) -"qp" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/secpost) -"qq" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/obj/structure/barricade/wooden/crude/snow, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/secpost) -"qr" = ( -/obj/machinery/door/airlock/external/glass, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/barricade/wooden/crude, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"qs" = ( -/obj/machinery/door/airlock/external/glass, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/structure/barricade/wooden/crude, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"qt" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 6; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"qu" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qv" = ( -/obj/machinery/atmospherics/components/binary/volume_pump{ - name = "Air Mix To Turbine Mix" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qw" = ( -/obj/machinery/atmospherics/pipe/simple/supply/visible{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qx" = ( -/obj/machinery/atmospherics/components/trinary/mixer/airmix/flipped{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qy" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/visible{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qz" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/visible{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qA" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/visible{ - dir = 10 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/engineering) -"qB" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qC" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"qD" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"qE" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/obj/machinery/light/small/broken{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/post/cavern2) -"qF" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/cavern2) -"qG" = ( -/obj/machinery/door/airlock{ - name = "Private Quarters" - }, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/cavern2) -"qH" = ( -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"qI" = ( -/obj/structure/closet/secure_closet/freezer/fridge, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/cavern2) -"qJ" = ( -/obj/structure/rack, -/obj/item/storage/box/rubbershot, -/obj/machinery/light/small, -/obj/item/storage/box/rubbershot{ - pixel_x = 2; - pixel_y = 2 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/secpost) -"qK" = ( -/obj/structure/rack, -/obj/item/storage/box/lethalshot, -/obj/item/storage/box/lethalshot{ - pixel_x = 2; - pixel_y = 2 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/secpost) -"qL" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post) -"qM" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"qN" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"qO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"qP" = ( -/obj/machinery/power/smes/engineering, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"qQ" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"qR" = ( -/obj/machinery/computer/turbine_computer{ - dir = 1; - id = "snowdin_turbine" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qS" = ( -/obj/machinery/button/door/indestructible{ - id = "snowdinturbineoutlet"; - name = "Turbine Outlet Release"; - pixel_y = -32 - }, -/obj/machinery/button/door/indestructible{ - id = "snowdinturbinegas"; - name = "Turbine Gas Release"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/engineering) -"qT" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qU" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 6 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "snowdin_turbine_exterior"; - idInterior = "snowdin_turbine_interior"; - idSelf = "snowdin_turbine_access"; - name = "Turbine Access Console"; - pixel_x = -8; - pixel_y = -26; - req_access_txt = "32" - }, -/obj/machinery/button/ignition/indestructible{ - id = "snowdin_turbine_ignitor"; - pixel_x = 6; - pixel_y = -24 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qV" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 8 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/extinguisher_cabinet{ - pixel_x = 5; - pixel_y = -32 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qW" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qX" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/frame/computer{ - dir = 1; - name = "Toxins Supply Control" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/engineering) -"qY" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"qZ" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/visible, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"ra" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/obj/structure/frame/computer{ - dir = 1; - name = "Oxygen Supply Control" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"rb" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/obj/structure/frame/computer{ - dir = 1; - name = "Nitrogen Supply Control" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/engineering) -"rc" = ( -/obj/machinery/door/airlock/external/glass, -/obj/structure/fans/tiny, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 1; - piping_layer = 3 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"re" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rf" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern2) -"rg" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"rh" = ( -/obj/structure/window, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"ri" = ( -/obj/structure/window, -/obj/structure/table, -/turf/open/floor/plasteel/cafeteria, -/area/awaymission/snowdin/post/cavern2) -"rj" = ( -/obj/structure/statue/snow/snowman{ - anchored = 1 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"rk" = ( -/obj/structure/rack, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"rl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"rm" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 9; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"rn" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/shoes/winterboots{ - pixel_x = 2; - pixel_y = -2 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"ro" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/engineering) -"rp" = ( -/turf/closed/wall/r_wall, -/area/awaymission/snowdin/post/engineering) -"rq" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/mapping_helpers/airlock/locked, -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - id_tag = "snowdin_turbine_exterior"; - name = "Turbine Exterior Airlock"; - req_access_txt = "32" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/engine, -/area/awaymission/snowdin/post/engineering) -"rr" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/closed/wall/r_wall, -/area/awaymission/snowdin/post/engineering) -"rs" = ( -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"ru" = ( -/obj/machinery/atmospherics/pipe/simple/supplymain/visible, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/engineering) -"rv" = ( -/mob/living/simple_animal/hostile/skeleton/plasmaminer/jackhammer, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"rw" = ( -/obj/structure/fence, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"rx" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"ry" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/cavern2) -"rz" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rA" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rB" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern2) -"rC" = ( -/obj/structure/sign/warning/nosmoking{ - pixel_y = 32 - }, -/obj/machinery/light/broken{ - dir = 1 - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"rD" = ( -/obj/machinery/power/port_gen/pacman, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rE" = ( -/obj/machinery/power/terminal{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rF" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rG" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/obj/structure/barricade/wooden/crude/snow, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"rH" = ( -/obj/machinery/door/airlock/external/glass, -/obj/structure/barricade/wooden/crude/snow, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) -"rI" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/atmos{ - dir = 1; - piping_layer = 3; - pixel_x = 5; - pixel_y = 5 - }, -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/engineering) -"rJ" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "snowdin_turbine_interior"; - idSelf = "snowdin_turbine_access"; - layer = 3.1; - name = "Turbine airlock control"; - pixel_x = 8; - pixel_y = -24 - }, -/turf/open/floor/engine, -/area/awaymission/snowdin/post/engineering) -"rK" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/engine, -/area/awaymission/snowdin/post/engineering) -"rL" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/volume_pump{ - name = "Mix To Turbine" - }, -/obj/machinery/doorButtons/access_button{ - idDoor = "snowdin_turbine_exterior"; - idSelf = "snowdin_turbine_access"; - name = "Turbine airlock control"; - pixel_x = -8; - pixel_y = 24 - }, -/obj/structure/sign/warning/fire{ - pixel_y = -32 - }, -/turf/open/floor/engine, -/area/awaymission/snowdin/post/engineering) -"rM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon{ - dir = 1; - name = "toxin out" - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/engineering) -"rN" = ( -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/engineering) -"rO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon{ - dir = 1; - name = "oxygen out" - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/engineering) -"rQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon{ - dir = 1; - name = "nitrogen out" - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/engineering) -"rS" = ( -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"rT" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"rU" = ( -/obj/structure/fence, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"rV" = ( -/obj/structure/lattice/catwalk, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"rW" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/plasma/reinforced/unanchored, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"rX" = ( -/obj/machinery/light/small, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"rY" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern2) -"rZ" = ( -/mob/living/simple_animal/hostile/netherworld/migo, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"sa" = ( -/obj/machinery/holopad, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"sb" = ( -/obj/structure/spawner/nether{ - max_mobs = 4; - name = "weak netherworld link" - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"sc" = ( -/obj/item/stack/sheet/mineral/plasma{ - amount = 10 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"sd" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Main Outpost APC"; - pixel_x = 26 - }, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"se" = ( -/obj/structure/flora/tree/dead, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"sf" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"sg" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/mapping_helpers/airlock/locked, -/obj/machinery/door/airlock/glass{ - autoclose = 0; - frequency = 1449; - heat_proof = 1; - id_tag = "snowdin_turbine_interior"; - name = "Turbine Interior Airlock"; - req_access_txt = "32" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/engine, -/area/awaymission/snowdin/post/engineering) -"si" = ( -/obj/machinery/light/small, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/engineering) -"sl" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"sm" = ( -/obj/structure/lattice/catwalk, -/obj/structure/fence/door{ - dir = 4 - }, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"sn" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/plasma/reinforced/spawner/east, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"so" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/plasma/reinforced/spawner/west, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"sp" = ( -/obj/structure/fence/door{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"sq" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/post/cavern2) -"sr" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"ss" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/cavern2) -"st" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern2) -"su" = ( -/obj/machinery/door/airlock/maintenance{ - name = "SMES Storage"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"sv" = ( -/obj/machinery/computer/monitor{ - dir = 8 - }, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"sw" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 9 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sx" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sy" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 5 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sz" = ( -/obj/machinery/door/poddoor{ - id = "snowdinturbinegas"; - name = "Turbine Gas Release" - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/post/engineering) -"sA" = ( -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/post/engineering) -"sB" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/igniter{ - id = "snowdin_turbine_ignitor" - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/post/engineering) -"sC" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/atmos{ - dir = 1; - id = "snowdin_incin_in" - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/post/engineering) -"sD" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"sE" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"sF" = ( -/obj/structure/fence, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"sG" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/plasma/reinforced/spawner/north, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"sH" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sI" = ( -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sJ" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sK" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 1 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sL" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sM" = ( -/obj/machinery/power/compressor{ - comp_id = "snowdin_turbine"; - dir = 1; - luminosity = 2 - }, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/post/engineering) -"sN" = ( -/obj/structure/fence/corner{ - dir = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"sO" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"sP" = ( -/obj/structure/fence/corner, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"sQ" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Misc Storage"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"sR" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern2) -"sS" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line{ - dir = 4 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sU" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/obj/machinery/computer{ - desc = "A console meant for calling and sending a transit ferry. It seems iced-over and non-functional."; - dir = 4; - icon_screen = null; - name = "Shuttle Transist Console" - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"sV" = ( -/obj/structure/statue/snow/snowman{ - anchored = 1 - }, -/obj/item/clothing/head/bowler{ - pixel_y = 13 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"sW" = ( -/obj/machinery/power/turbine{ - dir = 2; - luminosity = 2 - }, -/obj/structure/cable, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/post/engineering) -"sX" = ( -/obj/structure/flora/rock/icy, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"sY" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"sZ" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"ta" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"tb" = ( -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern2) -"tc" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern2) -"td" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line{ - dir = 4 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"te" = ( -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"tf" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 4 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"tg" = ( -/obj/machinery/door/poddoor{ - id = "snowdinturbineoutlet"; - name = "Turbine Outlet" - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/post/engineering) -"th" = ( -/obj/structure/rack, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern2) -"ti" = ( -/obj/machinery/shower{ - dir = 1 - }, -/obj/structure/curtain, -/obj/structure/window{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern2) -"tj" = ( -/obj/machinery/light/small, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern2) -"tk" = ( -/obj/structure/toilet{ - dir = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern2) -"tl" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"tm" = ( -/mob/living/simple_animal/hostile/asteroid/basilisk, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"tn" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 10 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"to" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 6 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"tp" = ( -/turf/closed/wall/mineral/snow, -/area/awaymission/snowdin/cave/cavern) -"tq" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/outside) -"tr" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"ts" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonheavy, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tt" = ( -/mob/living/simple_animal/hostile/skeleton/templar, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tu" = ( -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tv" = ( -/obj/structure/barricade/wooden/crude/snow, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tw" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonmid, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tx" = ( -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"ty" = ( -/mob/living/simple_animal/hostile/netherworld/blankbody{ - desc = "It's Caleb Reed, but their flesh has an ashy texture, and their face is featureless save an eerie smile."; - name = "Caleb Reed" - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"tz" = ( -/mob/living/simple_animal/hostile/skeleton/ice, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tA" = ( -/obj/structure/flora/bush, -/obj/structure/flora/bush, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"tB" = ( -/obj/structure/flora/grass/both, -/obj/structure/flora/grass/both, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"tC" = ( -/obj/structure/flora/grass/both, -/obj/structure/flora/tree/pine, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"tD" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tE" = ( -/turf/closed/indestructible/rock/snow, -/area/awaymission/snowdin/cave) -"tF" = ( -/turf/closed/mineral/snowmountain, -/area/awaymission/snowdin/outside) -"tG" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/mineral/snowmountain, -/area/awaymission/snowdin/cave) -"tH" = ( -/obj/structure/spider/stickyweb, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"tI" = ( -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"tJ" = ( -/obj/effect/decal/remains/human, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"tK" = ( -/obj/effect/mob_spawn/human/clown/corpse, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"tL" = ( -/mob/living/simple_animal/hostile/poison/giant_spider/nurse/ice, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"tN" = ( -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/outside) -"tO" = ( -/obj/effect/spawner/lootdrop/snowdin/dungeonmid, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"tP" = ( -/obj/structure/barricade/wooden/snowed, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"tQ" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"tR" = ( -/obj/structure/barricade/wooden/snowed, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"tS" = ( -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"tT" = ( -/obj/structure/fence{ - pixel_x = 16 - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/outside) -"tU" = ( -/obj/structure/fence{ - pixel_x = -16 - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/outside) -"tV" = ( -/mob/living/simple_animal/hostile/poison/giant_spider/ice, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"tW" = ( -/obj/structure/fence{ - pixel_x = 16 - }, -/turf/open/floor/plating/ice, -/area/awaymission/snowdin/outside) -"tX" = ( -/obj/structure/fence{ - pixel_x = -16 - }, -/turf/open/floor/plating/ice, -/area/awaymission/snowdin/outside) -"tY" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/cavern1) -"tZ" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/cavern1) -"ua" = ( -/turf/open/floor/plating/ice, -/area/awaymission/snowdin/outside) -"ub" = ( -/obj/structure/bed, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/cavern1) -"uc" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/cavern1) -"ud" = ( -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"ue" = ( -/turf/open/floor/wood, -/area/awaymission/snowdin/post/cavern1) -"uf" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/closet, -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/cavern1) -"ug" = ( -/obj/structure/table, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uh" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"ui" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Main Outpost APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uj" = ( -/obj/machinery/power/port_gen/pacman, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uk" = ( -/turf/open/floor/wood{ - icon_state = "wood-broken" - }, -/area/awaymission/snowdin/post/cavern1) -"ul" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"um" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"un" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uo" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"up" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uq" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/outside) -"ur" = ( -/obj/machinery/door/airlock{ - name = "Private Quarters" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/cavern1) -"us" = ( -/obj/machinery/door/airlock/maintenance{ - name = "SMES Storage"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"ut" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uu" = ( -/obj/machinery/power/terminal, -/obj/structure/cable, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uv" = ( -/obj/structure/fence{ - pixel_x = 16 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"uw" = ( -/mob/living/simple_animal/hostile/poison/giant_spider/hunter/ice, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"ux" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/cavern1) -"uy" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uz" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uA" = ( -/obj/machinery/computer/monitor{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uB" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uC" = ( -/obj/structure/fence{ - pixel_x = -16 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"uD" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Misc Storage"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uE" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/cavern1) -"uF" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/cavern1) -"uG" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uH" = ( -/obj/structure/table, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/item/storage/firstaid/brute, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uI" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/cavern1) -"uJ" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uK" = ( -/mob/living/simple_animal/hostile/skeleton/plasmaminer, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uL" = ( -/obj/structure/table, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uM" = ( -/obj/structure/table, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/cavern1) -"uN" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uO" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uP" = ( -/obj/structure/spider/stickyweb, -/mob/living/simple_animal/hostile/poison/giant_spider/hunter/ice, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"uQ" = ( -/obj/structure/spider/stickyweb, -/obj/structure/spider/stickyweb, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"uR" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/post/cavern1) -"uS" = ( -/mob/living/simple_animal/hostile/skeleton/plasmaminer, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/cavern1) -"uT" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uU" = ( -/obj/item/chair, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uV" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"uW" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"uX" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"uY" = ( -/obj/structure/barricade/wooden/snowed, -/obj/structure/spider/stickyweb, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"uZ" = ( -/obj/machinery/door/airlock/external/glass, -/obj/structure/fans/tiny, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"va" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vb" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vc" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/cavern1) -"vd" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"ve" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/light/broken, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vf" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vg" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Observation Deck" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vh" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/cavern1) -"vi" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/cavern1) -"vj" = ( -/obj/structure/table, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vk" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vl" = ( -/obj/effect/mob_spawn/human/corpse/assistant, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"vm" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vn" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vo" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/cavern1) -"vp" = ( -/obj/machinery/door/airlock{ - name = "Bathroom" - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern1) -"vq" = ( -/obj/machinery/light/broken{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vr" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vs" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vt" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vu" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vv" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern1) -"vw" = ( -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern1) -"vx" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vy" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vz" = ( -/obj/machinery/light/small/broken{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/post/cavern1) -"vA" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/cavern1) -"vB" = ( -/obj/structure/closet/emcloset, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/cavern1) -"vC" = ( -/obj/structure/rack, -/obj/machinery/light, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/cavern1) -"vD" = ( -/obj/machinery/shower{ - dir = 1 - }, -/obj/structure/curtain, -/obj/structure/window{ - dir = 4 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern1) -"vE" = ( -/obj/structure/toilet{ - dir = 1 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/awaymission/snowdin/post/cavern1) -"vF" = ( -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave/mountain) -"vG" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/atmos{ - dir = 1; - id = "snowdin_incin_in" - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/post/cavern1) -"vH" = ( -/obj/structure/flora/tree/pine, -/obj/structure/flora/grass/both, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"vI" = ( -/mob/living/simple_animal/hostile/asteroid/basilisk, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave/mountain) -"vJ" = ( -/obj/effect/decal/remains/human, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"vK" = ( -/obj/effect/decal/cleanable/blood/old, -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"vL" = ( -/turf/closed/wall/mineral/titanium, -/area/awaymission/snowdin/post/broken_shuttle) -"vM" = ( -/obj/effect/spawner/structure/window/shuttle, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/broken_shuttle) -"vN" = ( -/obj/effect/spawner/structure/window/shuttle, -/obj/effect/baseturf_helper/asteroid/snow, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/broken_shuttle) -"vO" = ( -/obj/structure/fluff/fokoff_sign, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"vP" = ( -/obj/structure/bed, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"vQ" = ( -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"vR" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/awaymission/snowdin/post/broken_shuttle) -"vS" = ( -/obj/structure/chair, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"vT" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"vU" = ( -/obj/item/chair, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"vV" = ( -/obj/structure/barricade/wooden/snowed, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"vW" = ( -/mob/living/simple_animal/hostile/skeleton/ice, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"vX" = ( -/obj/machinery/door/airlock/shuttle, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"vY" = ( -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"vZ" = ( -/obj/structure/flora/grass/both, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"wa" = ( -/obj/structure/flora/bush, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"wb" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"wc" = ( -/obj/machinery/computer{ - name = "Shuttle Transist Console"; - desc = "A console meant for calling and sending a transit ferry. It seems iced-over and non-functional."; - dir = 1; - icon_screen = null - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"wd" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/snowdin/post/broken_shuttle) -"we" = ( -/mob/living/simple_animal/hostile/skeleton/ice{ - name = "Captain Bones" - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wf" = ( -/obj/structure/bed, -/mob/living/simple_animal/hostile/skeleton/ice{ - name = "Privateer Jones" - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wg" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 8 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wh" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 10 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wi" = ( -/obj/effect/turf_decal/weather/snow/corner, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wj" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wk" = ( -/obj/structure/barricade/sandbags, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"wl" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wm" = ( -/obj/machinery/porta_turret/centcom_shuttle/weak{ - desc = "A turret built with substandard parts and run down further with age."; - icon_state = "syndie_off"; - dir = 9; - faction = list("pirate") - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"wn" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wo" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 6 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wp" = ( -/obj/structure/flora/tree/pine/xmas/presents, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"wq" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 5 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wr" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"ws" = ( -/obj/structure/closet/crate/wooden, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"wt" = ( -/obj/structure/table/wood, -/obj/effect/spawner/lootdrop/snowdin/dungeonmisc, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wu" = ( -/obj/structure/table/wood, -/obj/item/trash/candy, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wv" = ( -/obj/item/trash/can, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"ww" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wx" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/remains/human, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"wy" = ( -/obj/structure/bonfire/prelit{ - burn_icon = "bonfire_warm" - }, -/obj/effect/light_emitter{ - light_color = "#FAA019"; - light_power = 1; - light_range = 4; - name = "fire light" - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wz" = ( -/obj/structure/closet/crate/wooden, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wA" = ( -/obj/structure/table/wood, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"wB" = ( -/obj/item/key, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"wC" = ( -/obj/vehicle/ridden/atv{ - icon_state = "atv"; - dir = 4 - }, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"wD" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/mining_dock) -"wE" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/mining_dock) -"wF" = ( -/obj/effect/decal/remains/human, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"wG" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wH" = ( -/obj/structure/sign/warning/electricshock{ - pixel_y = 32 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wI" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wJ" = ( -/obj/machinery/computer/monitor, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wK" = ( -/obj/machinery/power/terminal{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wL" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wM" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wN" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "Main Outpost APC"; - pixel_x = 26 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wO" = ( -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wP" = ( -/turf/closed/wall/mineral/cult, -/area/awaymission/snowdin/post/mining_dock) -"wQ" = ( -/turf/closed/indestructible/rock/snow/ice, -/area/awaymission/snowdin/cave/mountain) -"wR" = ( -/obj/machinery/door/airlock/maintenance{ - name = "SMES Storage"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"wS" = ( -/turf/closed/indestructible/rock/snow/ice, -/area/awaymission/snowdin/cave) -"wT" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"wU" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/sign/warning/docking{ - pixel_y = 32 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"wV" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"wW" = ( -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/mining_dock) -"wX" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"wY" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/mining_dock) -"wZ" = ( -/obj/structure/sign/warning/docking{ - pixel_y = 32 - }, -/obj/machinery/light/broken{ - dir = 1 - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/mining_dock) -"xa" = ( -/obj/effect/turf_decal/stripes/white/line, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xb" = ( -/obj/effect/turf_decal/stripes/white/line, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xc" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xd" = ( -/obj/structure/closet/crate, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xe" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"xf" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"xg" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xh" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/mining_dock) -"xi" = ( -/obj/effect/turf_decal/stripes/line, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/mining_dock) -"xj" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/spawner/nether{ - max_mobs = 4; - name = "weak netherworld link" - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/mining_dock) -"xk" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xl" = ( -/turf/open/floor/plasteel/elevatorshaft{ - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/awaymission/snowdin/cave) -"xp" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xq" = ( -/obj/machinery/light/broken{ - dir = 8 - }, -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"xr" = ( -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"xs" = ( -/obj/item/gun/energy/e_gun{ - dead_cell = 1 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"xt" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/mob_spawn/human/corpse/nanotrasensoldier{ - brute_damage = 145; - mob_name = "James Reed"; - name = "James Reed"; - oxy_damage = 55 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xu" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/engine/cult, -/area/awaymission/snowdin/post/mining_dock) -"xx" = ( -/obj/effect/spawner/lootdrop/crate_spawner, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xy" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"xz" = ( -/obj/machinery/door/firedoor, -/obj/structure/grille/broken, -/obj/item/shard, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"xA" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/mob/living/simple_animal/hostile/netherworld/migo, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xC" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 4 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xD" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xE" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 6 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xF" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xG" = ( -/obj/machinery/holopad, -/obj/item/disk/holodisk/snowdin/overrun, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xH" = ( -/obj/machinery/door/airlock/vault{ - name = "Relic Storage"; - req_access_txt = "3" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xI" = ( -/obj/item/shard, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xJ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"xK" = ( -/obj/docking_port/stationary{ - area_type = /area/awaymission/snowdin/cave; - dir = 4; - dwidth = 3; - height = 6; - id = "snowdin_excavation_top"; - name = "snowdin excavation top"; - roundstart_template = /datum/map_template/shuttle/snowdin/excavation; - width = 6 - }, -/turf/open/floor/plasteel/elevatorshaft{ - initial_gas_mix = "o2=22;n2=82;TEMP=180" - }, -/area/awaymission/snowdin/cave) -"xL" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xM" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xN" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"xP" = ( -/obj/docking_port/stationary{ - area_type = /area/awaymission/snowdin/post/mining_dock; - dir = 4; - dwidth = 3; - height = 6; - id = "snowdin_excavation_down"; - name = "snowdin excavation down"; - width = 6 - }, -/turf/open/floor/plasteel/elevatorshaft, -/area/awaymission/snowdin/post/mining_dock) -"xQ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"xR" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"xS" = ( -/obj/machinery/power/port_gen/pacman, -/obj/item/stack/sheet/mineral/plasma{ - amount = 3 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"xT" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 5 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xU" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 10 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"xV" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3 - }, -/turf/closed/mineral/snowmountain/cavern, -/area/awaymission/snowdin/cave/cavern) -"xW" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/mining_dock) -"xX" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"xY" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"xZ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"ya" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yb" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yc" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yd" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"ye" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"yf" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/turf/open/floor/plating, -/area/awaymission/snowdin/cave) -"yg" = ( -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/cave) -"yi" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/fence, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"yj" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/structure/closet/crate, -/obj/item/relic, -/obj/item/relic, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"yk" = ( -/obj/structure/closet/crate, -/obj/item/relic, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yl" = ( -/obj/structure/sign/warning/nosmoking{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"ym" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/computer/shuttle/snowdin/mining{ - dir = 8; - name = "Excavation Elevator Console"; - possible_destinations = "snowdin_excavation_top;snowdin_excavation_down"; - shuttleId = "snowdin_excavation" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yn" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yo" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yp" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"yq" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/obj/effect/turf_decal/caution/stand_clear, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"yr" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/obj/machinery/computer/shuttle/snowdin/mining{ - dir = 8; - name = "Excavation Elevator Console"; - possible_destinations = "snowdin_excavation_top;snowdin_excavation_down"; - shuttleId = "snowdin_excavation" - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"ys" = ( -/obj/machinery/atmospherics/pipe/manifold4w/orange/visible, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"yt" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/cave) -"yu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon/on{ - name = "toxin out"; - dir = 8; - id_tag = "snowdin_toxins_mine_1"; - frequency = 1442 - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/cave) -"yv" = ( -/turf/closed/wall/mineral/snow, -/area/awaymission/snowdin/outside) -"yw" = ( -/obj/structure/closet/crate, -/obj/item/relic, -/obj/item/relic, -/obj/item/relic, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yx" = ( -/obj/structure/closet/crate, -/obj/item/relic, -/obj/item/relic, -/obj/item/relic, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"yy" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yz" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"yA" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"yB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"yC" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"yD" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"yE" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"yF" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"yG" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/obj/effect/turf_decal/caution/stand_clear, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"yH" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 5 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yI" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 10 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yJ" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yK" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"yL" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"yM" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/canister, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"yN" = ( -/obj/structure/barricade/sandbags, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"yO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/fence/door{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"yP" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yQ" = ( -/obj/structure/sign/warning/docking{ - pixel_y = -32 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yR" = ( -/obj/machinery/light/broken, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"yS" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yT" = ( -/obj/machinery/light, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"yU" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/weather/snow/corner, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/outside) -"yV" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/post/minipost) -"yW" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/minipost) -"yX" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/minipost) -"yY" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/minipost) -"yZ" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall, -/area/awaymission/snowdin/post/minipost) -"za" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon/on{ - dir = 4; - frequency = 1442; - id_tag = "snowdin_toxins_mine_1"; - name = "toxin out" - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/cave) -"zc" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"zd" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"ze" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 9 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"zf" = ( -/obj/structure/rack, -/obj/item/pickaxe/drill, -/obj/item/pickaxe/drill{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"zg" = ( -/obj/structure/barricade/sandbags, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 8 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zh" = ( -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zi" = ( -/obj/structure/barricade/sandbags, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 5 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zj" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/structure/fence/corner{ - dir = 9 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"zk" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/structure/fence/corner, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"zl" = ( -/obj/structure/lattice/catwalk, -/obj/structure/window/plasma/reinforced/spawner/north, -/obj/structure/window/plasma/reinforced/unanchored, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"zm" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zn" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zo" = ( -/obj/machinery/door/poddoor/shutters{ - id = "snowdingarage2"; - name = "garage door" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"zp" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"zq" = ( -/obj/vehicle/ridden/atv{ - icon_state = "atv"; - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"zr" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 10 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zs" = ( -/obj/effect/turf_decal/weather/snow/corner, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zt" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/mineral/wood, -/area/awaymission/snowdin/igloo) -"zu" = ( -/turf/closed/wall/mineral/wood, -/area/awaymission/snowdin/igloo) -"zv" = ( -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/closet/emcloset, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zw" = ( -/obj/structure/rack, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zx" = ( -/obj/machinery/light/small, -/obj/machinery/button/door/indestructible{ - id = "snowdingarage2"; - name = "garage door toggle"; - pixel_x = -7; - pixel_y = -24 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"zy" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"zz" = ( -/obj/structure/rack, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"zA" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 8 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zB" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zC" = ( -/obj/structure/rack, -/obj/item/grown/log/tree, -/obj/item/grown/log/tree{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/item/grown/log/tree{ - pixel_x = -2; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"zD" = ( -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"zE" = ( -/obj/structure/rack, -/obj/item/stack/sheet/mineral/wood{ - amount = 15 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"zF" = ( -/mob/living/simple_animal/hostile/skeleton/eskimo, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"zG" = ( -/obj/machinery/space_heater, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4; - piping_layer = 3 - }, -/obj/machinery/space_heater, -/obj/structure/sign/warning/xeno_mining{ - pixel_x = 32 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 4; - piping_layer = 3 - }, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/mining_dock) -"zJ" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/post/mining_dock) -"zK" = ( -/obj/item/stack/sheet/metal, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"zL" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Garage" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"zM" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"zN" = ( -/obj/structure/rack, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"zO" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 6 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"zP" = ( -/obj/structure/table/wood, -/obj/effect/spawner/lootdrop/snowdin/dungeonmisc, -/obj/effect/spawner/lootdrop/snowdin/dungeonmisc, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"zQ" = ( -/obj/item/hatchet{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"zR" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zS" = ( -/obj/machinery/door/airlock/external/glass, -/obj/structure/fans/tiny, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"zT" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/fence/corner{ - dir = 6 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"zU" = ( -/obj/structure/girder, -/obj/item/stack/sheet/metal, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"zV" = ( -/obj/structure/filingcabinet, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"zW" = ( -/obj/structure/filingcabinet, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"zX" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"zY" = ( -/obj/effect/turf_decal/bot, -/obj/structure/ore_box, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"zZ" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall/mineral/snow, -/area/awaymission/snowdin/igloo) -"Aa" = ( -/turf/closed/wall/mineral/snow, -/area/awaymission/snowdin/igloo) -"Ab" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 8 - }, -/obj/effect/turf_decal/weather/snow/corner{ - dir = 4 - }, -/mob/living/simple_animal/hostile/skeleton/eskimo, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"Ac" = ( -/obj/structure/table/wood, -/obj/item/hatchet{ - pixel_x = 4; - pixel_y = 4 - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"Ad" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/structure/fence/corner{ - dir = 10 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Ae" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Af" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Ag" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hooded/wintercoat, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Ah" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/obj/item/clothing/suit/hooded/wintercoat, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"Ai" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/minipost) -"Aj" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"Ak" = ( -/obj/structure/table, -/obj/item/paper_bin, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"Al" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"Am" = ( -/obj/effect/turf_decal/bot, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"An" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 9 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"Ao" = ( -/obj/structure/mineral_door/wood, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"Ap" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/fence, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Aq" = ( -/mob/living/simple_animal/hostile/skeleton/plasmaminer, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Ar" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/structure/fence/corner{ - dir = 10 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"As" = ( -/obj/effect/turf_decal/stripes/line, -/obj/structure/fence/door, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"At" = ( -/obj/effect/turf_decal/stripes/line, -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Au" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/structure/flora/grass/both, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Av" = ( -/obj/machinery/door/airlock/external/glass, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"Aw" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/minipost) -"Ax" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"Ay" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"Az" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"AA" = ( -/mob/living/simple_animal/hostile/skeleton/eskimo, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"AB" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"AC" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"AE" = ( -/obj/item/pen, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/minipost) -"AF" = ( -/obj/structure/table, -/obj/item/flashlight/lamp, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"AG" = ( -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/minipost) -"AH" = ( -/obj/structure/bed, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/minipost) -"AI" = ( -/obj/structure/bonfire/prelit{ - burn_icon = "bonfire_warm" - }, -/obj/effect/light_emitter{ - light_color = "#FAA019"; - light_power = 1; - light_range = 4; - name = "fire light" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"AJ" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"AK" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/fence/door, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"AL" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/structure/fence/corner, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"AM" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"AN" = ( -/obj/item/key, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/minipost) -"AO" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"AP" = ( -/obj/machinery/door/airlock{ - id_tag = "snowdindormabandoned1"; - name = "Private Quarters" - }, -/turf/open/floor/wood, -/area/awaymission/snowdin/post/minipost) -"AQ" = ( -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/minipost) -"AR" = ( -/obj/structure/girder, -/obj/item/stack/sheet/metal, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/minipost) -"AS" = ( -/obj/item/stack/sheet/mineral/wood, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"AT" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"AU" = ( -/obj/structure/table/wood, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"AV" = ( -/obj/structure/table/wood, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"AW" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"AX" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"AY" = ( -/obj/structure/closet/emcloset, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"AZ" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"Ba" = ( -/obj/item/wrench, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/minipost) -"Bb" = ( -/obj/machinery/button/door/indestructible{ - id = "snowdindormabandoned1"; - name = "Dorm Bolt Control"; - normaldoorcontrol = 1; - pixel_x = -25; - specialfunctions = 4 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/post/minipost) -"Bc" = ( -/obj/structure/barricade/wooden, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Bd" = ( -/mob/living/simple_animal/hostile/skeleton/eskimo, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"Bf" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/minipost) -"Bg" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 4 - }, -/mob/living/simple_animal/hostile/skeleton/eskimo, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"Bh" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"Bi" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/fence/door, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Bj" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"Bk" = ( -/obj/item/clothing/neck/stethoscope, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/minipost) -"Bl" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/minipost) -"Bm" = ( -/obj/structure/table, -/obj/item/storage/firstaid/fire, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/minipost) -"Bn" = ( -/obj/effect/turf_decal/weather/snow/corner{ - dir = 5 - }, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"Bo" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Bp" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/fence/door{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Bq" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Recon Post APC"; - pixel_x = 1; - pixel_y = 25 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"Br" = ( -/obj/machinery/computer/monitor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"Bs" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/minipost) -"Bt" = ( -/obj/structure/table, -/obj/machinery/light/small, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/minipost) -"Bu" = ( -/obj/structure/table, -/obj/item/clothing/glasses/hud/health, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/minipost) -"Bv" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Bw" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Bx" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"By" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Bz" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BA" = ( -/obj/machinery/power/smes, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"BB" = ( -/obj/machinery/power/terminal{ - dir = 8 - }, -/obj/machinery/light/small, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"BC" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/power/port_gen/pacman, -/obj/item/stack/sheet/mineral/plasma{ - amount = 3 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"BD" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/obj/structure/fence/corner{ - dir = 10 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BE" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BF" = ( -/obj/structure/lattice/catwalk, -/obj/structure/fence/door, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"BG" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BH" = ( -/obj/structure/fence, -/turf/closed/mineral/snowmountain/cavern, -/area/awaymission/snowdin/cave/cavern) -"BI" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 9 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"BJ" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"BK" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"BL" = ( -/obj/effect/turf_decal/weather/snow/corner, -/mob/living/simple_animal/hostile/skeleton/eskimo, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"BM" = ( -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/awaymission/snowdin/igloo) -"BN" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 9 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"BO" = ( -/obj/effect/turf_decal/stripes/end{ - icon_state = "warn_end"; - dir = 1 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BP" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/lava/plasma, -/area/awaymission/snowdin/cave/cavern) -"BQ" = ( -/obj/effect/turf_decal/stripes/end{ - icon_state = "warn_end"; - dir = 8 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BR" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BS" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 10 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"BT" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BU" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"BV" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 1 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"BW" = ( -/obj/item/clothing/head/cone, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"BX" = ( -/obj/machinery/light/small, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"BY" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"BZ" = ( -/obj/effect/turf_decal/bot, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Ca" = ( -/obj/effect/turf_decal/bot, -/obj/structure/closet/crate{ - icon_state = "crateopen"; - name = "explosives ordinance" - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Cb" = ( -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Cc" = ( -/obj/structure/fence/door, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Cd" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Ce" = ( -/obj/effect/turf_decal/bot, -/obj/structure/closet/crate{ - name = "explosives ordinance" - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Cf" = ( -/obj/machinery/power/port_gen/pacman, -/obj/item/stack/sheet/mineral/plasma{ - amount = 3 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Cg" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"Ch" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Ci" = ( -/obj/item/stack/ore/iron, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Cj" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/structure/sign/mining, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"Ck" = ( -/obj/structure/fence/door, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"Cl" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/cave/cavern) -"Cm" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Cn" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/mob_spawn/human/corpse/syndicatesoldier, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Co" = ( -/obj/item/stack/rods, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Cp" = ( -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Cq" = ( -/obj/item/stack/sheet/mineral/plastitanium, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Cr" = ( -/obj/item/shard, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Cs" = ( -/obj/structure/girder, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"Ct" = ( -/turf/closed/wall/mineral/plastitanium, -/area/awaymission/snowdin/outside) -"Cu" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"Cv" = ( -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Cw" = ( -/obj/item/shard{ - icon_state = "medium" - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Cy" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Cz" = ( -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"CA" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"CB" = ( -/obj/item/shard, -/turf/open/floor/plating/ice/smooth, -/area/awaymission/snowdin/cave) -"CC" = ( -/turf/closed/wall/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"CD" = ( -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/awaymission/snowdin/cave) -"CE" = ( -/obj/structure/girder, -/obj/item/stack/sheet/mineral/plastitanium, -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"CF" = ( -/obj/item/stack/rods, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"CG" = ( -/obj/item/shard, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"CH" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CI" = ( -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CJ" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CK" = ( -/obj/structure/closet/syndicate{ - desc = "It's a storage unit for a Syndicate boarding party." - }, -/obj/effect/turf_decal/bot_white, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CL" = ( -/obj/structure/closet/syndicate{ - desc = "It's a storage unit for a Syndicate boarding party." - }, -/obj/effect/turf_decal/bot_white, -/obj/item/gun/ballistic/automatic/pistol, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CM" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CN" = ( -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CO" = ( -/obj/machinery/recharge_station, -/turf/open/floor/circuit/red, -/area/awaymission/snowdin/cave) -"CP" = ( -/obj/structure/shuttle/engine/heater{ - icon_state = "heater"; - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"CQ" = ( -/obj/structure/shuttle/engine/propulsion/left{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"CR" = ( -/obj/effect/gibspawner/generic, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"CS" = ( -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"CT" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CU" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/mob_spawn/human/corpse/syndicatesoldier, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CV" = ( -/obj/effect/decal/cleanable/vomit/old, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CW" = ( -/obj/item/shard, -/obj/item/stack/cable_coil/red{ - amount = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CX" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CY" = ( -/obj/item/aicard, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"CZ" = ( -/obj/structure/frame/machine, -/obj/item/stack/cable_coil/red{ - amount = 1 - }, -/turf/open/floor/circuit/red, -/area/awaymission/snowdin/cave) -"Da" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Db" = ( -/obj/structure/fence, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Dc" = ( -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"Dd" = ( -/obj/item/shard, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"De" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/built{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Df" = ( -/obj/item/stack/rods, -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Dg" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/item/shard, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"Dh" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"Di" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Dj" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Dk" = ( -/obj/item/stack/cable_coil/red{ - amount = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Dl" = ( -/obj/structure/shuttle/engine/propulsion/right{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Dm" = ( -/obj/effect/light_emitter{ - name = "cave light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/structure/fence/door{ - dir = 4 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"Dn" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"Do" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/item/stack/rods, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"Dp" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Dq" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"Dr" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/item/stack/rods, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"Ds" = ( -/obj/item/grenade/plastic/c4, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Dt" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Du" = ( -/obj/structure/girder, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"Dv" = ( -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/cave) -"Dw" = ( -/obj/item/stack/rods, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"Dx" = ( -/obj/machinery/light/built, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"Dy" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/bot_white, -/obj/item/chair, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Dz" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/bot_white, -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"DA" = ( -/obj/item/stack/rods, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"DB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"DC" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"DD" = ( -/obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"DE" = ( -/obj/item/stack/sheet/mineral/plastitanium, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/outside) -"DF" = ( -/obj/machinery/light/small, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"DG" = ( -/obj/machinery/door/airlock/external{ - name = "Ready Room"; - req_access_txt = "150" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"DH" = ( -/obj/structure/window/plastitanium, -/obj/structure/grille, -/turf/open/floor/plating, -/area/awaymission/snowdin/cave) -"DI" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/awaymission/snowdin/cave) -"DJ" = ( -/obj/machinery/door/airlock/hatch{ - req_access_txt = "150" - }, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"DK" = ( -/obj/structure/grille, -/obj/item/shard, -/turf/open/floor/plating, -/area/awaymission/snowdin/cave) -"DL" = ( -/obj/item/stack/rods, -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"DM" = ( -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"DN" = ( -/obj/effect/gibspawner/human, -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"DO" = ( -/obj/item/shard, -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"DP" = ( -/obj/item/stack/rods, -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"DQ" = ( -/obj/item/paper/crumpled/ruins/snowdin/misc1, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"DR" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/item/shard, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"DT" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/awaymission/snowdin/cave) -"DU" = ( -/obj/structure/shuttle/engine/heater{ - icon_state = "heater"; - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/cave) -"DV" = ( -/obj/structure/shuttle/engine/propulsion/left{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"DW" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"DX" = ( -/obj/item/shard, -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"DY" = ( -/obj/effect/turf_decal/weather/snow, -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"DZ" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/decal/cleanable/blood/drip, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Ea" = ( -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Eb" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/mob_spawn/human/corpse/syndicatesoldier, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Ec" = ( -/obj/item/shard, -/obj/item/stack/cable_coil/red{ - amount = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Ed" = ( -/obj/machinery/telecomms/allinone/indestructable, -/turf/open/floor/circuit/red, -/area/awaymission/snowdin/cave) -"Ee" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Ef" = ( -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Eg" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"Eh" = ( -/obj/structure/shuttle/engine/propulsion/right{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave) -"Ei" = ( -/obj/item/shard, -/mob/living/simple_animal/hostile/bear/snow, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"Ej" = ( -/obj/structure/grille/broken, -/obj/item/stack/rods, -/turf/open/floor/plating, -/area/awaymission/snowdin/cave) -"Ek" = ( -/obj/structure/door_assembly/door_assembly_hatch, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"El" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/bot_white, -/obj/structure/tank_dispenser/oxygen, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Em" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/turf_decal/bot_white, -/obj/machinery/light{ - dir = 1 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"En" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Eo" = ( -/obj/effect/turf_decal/weather/snow, -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Ep" = ( -/obj/item/shard, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Eq" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/item/shard, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"Er" = ( -/obj/structure/table/reinforced, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Es" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Et" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/mob_spawn/human/corpse/syndicatesoldier, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark/snowdin, -/area/awaymission/snowdin/cave) -"Eu" = ( -/obj/structure/table/reinforced, -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Ev" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/item/stack/rods, -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"Ew" = ( -/obj/machinery/iv_drip, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Ex" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced, -/obj/effect/spawner/lootdrop/snowdin/dungeonlite, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Ey" = ( -/obj/structure/girder, -/obj/effect/turf_decal/weather/snow, -/turf/open/floor/plating/asteroid/snow{ - floor_variance = 0; - icon_state = "snow_dug"; - slowdown = 1 - }, -/area/awaymission/snowdin/cave) -"Ez" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EA" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/obj/item/shard, -/obj/item/reagent_containers/food/drinks/beer{ - list_reagents = null - }, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"EB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/item/reagent_containers/glass/beaker, -/turf/open/floor/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"EC" = ( -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/item/circular_saw, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"ED" = ( -/obj/item/toy/plush/nukeplushie, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EE" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/suit_storage_unit{ - state_open = 1 - }, -/turf/open/floor/mineral/plastitanium{ - initial_gas_mix = "o2=22;n2=82;TEMP=180"; - planetary_atmos = 1; - temperature = 180 - }, -/area/awaymission/snowdin/cave) -"EF" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/suit_storage_unit/syndicate, -/turf/open/floor/mineral/plastitanium{ - initial_gas_mix = "o2=22;n2=82;TEMP=180"; - planetary_atmos = 1; - temperature = 180 - }, -/area/awaymission/snowdin/cave) -"EG" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/obj/effect/turf_decal/weather/snow, -/obj/machinery/suit_storage_unit{ - state_open = 1 - }, -/turf/open/floor/mineral/plastitanium{ - initial_gas_mix = "o2=22;n2=82;TEMP=180"; - planetary_atmos = 1; - temperature = 180 - }, -/area/awaymission/snowdin/cave) -"EH" = ( -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EI" = ( -/obj/item/stack/rods, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EJ" = ( -/obj/item/reagent_containers/dropper, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EK" = ( -/obj/structure/bed/roller, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EL" = ( -/obj/item/shard, -/obj/item/retractor, -/obj/item/cautery, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EM" = ( -/obj/structure/table/optable, -/obj/effect/turf_decal/bot_white, -/obj/item/surgical_drapes, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EN" = ( -/obj/machinery/sleeper/syndie{ - icon_state = "sleeper_s"; - dir = 1 - }, -/obj/effect/turf_decal/bot_white, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EO" = ( -/obj/effect/turf_decal/bot_white, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EP" = ( -/obj/effect/turf_decal/bot_white, -/obj/machinery/sleeper/syndie{ - icon_state = "sleeper_s"; - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"EQ" = ( -/obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"ER" = ( -/obj/structure/table/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"ES" = ( -/obj/structure/table/reinforced, -/obj/machinery/light/built, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"ET" = ( -/obj/machinery/porta_turret/syndicate{ - dir = 10 - }, -/turf/closed/wall/mineral/plastitanium, -/area/awaymission/snowdin/cave) -"EU" = ( -/obj/item/stack/ore/iron, -/turf/closed/mineral/iron/ice, -/area/awaymission/snowdin/cave/cavern) -"EV" = ( -/obj/structure/mecha_wreckage/ripley, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"EW" = ( -/obj/structure/ore_box, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"EX" = ( -/obj/item/pickaxe/drill{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"EY" = ( -/obj/item/shard, -/obj/structure/flora/grass/both, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"EZ" = ( -/obj/effect/turf_decal/weather/snow, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fa" = ( -/obj/structure/flora/grass/both, -/obj/structure/flora/bush, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Fb" = ( -/obj/structure/fence{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Fc" = ( -/obj/structure/fence/corner{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Fd" = ( -/obj/structure/statue/snow/snowman{ - anchored = 1; - name = "Officer Snowlby" - }, -/obj/item/clothing/head/helmet{ - pixel_y = 8 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Fe" = ( -/obj/structure/fence, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Ff" = ( -/obj/structure/fence/corner{ - dir = 10 - }, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Fg" = ( -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/loading_area, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"Fh" = ( -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/loading_area, -/obj/vehicle/ridden/atv, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"Fi" = ( -/obj/structure/flora/bush, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Fj" = ( -/obj/effect/turf_decal/bot, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"Fk" = ( -/obj/item/shard, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Fl" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Fm" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fn" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/toxins, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fo" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fp" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fq" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/machinery/portable_atmospherics/canister/toxins, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fr" = ( -/obj/structure/statue/snow/snowman{ - anchored = 1; - name = "Officer Norm" - }, -/obj/item/gun/energy/e_gun/mini{ - pixel_y = -5 - }, -/obj/item/clothing/head/helmet{ - pixel_y = 8 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Fs" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Ft" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fu" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fv" = ( -/obj/machinery/light/small, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/post/mining_dock) -"Fw" = ( -/obj/item/shard, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Fx" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fy" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 5 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Fz" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"FA" = ( -/obj/effect/mob_spawn/human/corpse/assistant{ - brute_damage = 150; - oxy_damage = 50 - }, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"FB" = ( -/obj/structure/statue/snow/snowman{ - anchored = 1; - name = "Officer Norm" - }, -/obj/item/clothing/head/helmet{ - pixel_y = 8 - }, -/obj/item/melee/baton{ - pixel_x = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"FC" = ( -/obj/effect/baseturf_helper/asteroid/snow{ - baseturf = /turf/open/floor/plating/asteroid/snow/ice; - name = "asteroid snowice baseturf editor" - }, -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/mining_dock) -"FD" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/structure/holosign/barrier/atmos, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"FE" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/obj/structure/lattice/catwalk, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"FF" = ( -/obj/structure/statue/snow/snowman{ - name = "Snow-Luc Price" - }, -/obj/item/clothing/head/HoS{ - pixel_y = 10 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"FG" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/item/shard, -/obj/item/stack/rods{ - amount = 2 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"FH" = ( -/obj/item/shard, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"FI" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"FJ" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/item/stack/rods{ - amount = 2 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"FK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 4; - piping_layer = 3 - }, -/obj/structure/sign/warning/xeno_mining{ - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"FL" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/on{ - dir = 8 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/post/mining_dock) -"FM" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"FQ" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/obj/machinery/light/small, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/post/mining_main) -"FR" = ( -/obj/machinery/light/small, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/post/mining_main) -"FS" = ( -/obj/structure/fence/door{ - dir = 4 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"FT" = ( -/obj/structure/ore_box, -/turf/closed/mineral/snowmountain/cavern, -/area/awaymission/snowdin/cave/cavern) -"FU" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"FV" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"FW" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"FZ" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/mining_main) -"Ga" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Gb" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Gc" = ( -/obj/structure/statue/snow/snowman{ - anchored = 1; - name = "snowman" - }, -/obj/item/pickaxe/mini{ - pixel_x = 5; - pixel_y = 3 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Gd" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/mining_main/robotics) -"Ge" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/robotics) -"Gf" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/robotics) -"Gg" = ( -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/robotics) -"Gh" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"Gi" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Gj" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Gk" = ( -/turf/closed/wall/ice, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Gl" = ( -/obj/machinery/door/poddoor/shutters{ - id = "snowdingarageunder"; - name = "garage door" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Gm" = ( -/obj/machinery/door/poddoor/shutters{ - id = "snowdingarageunder2"; - name = "garage door" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Gn" = ( -/obj/structure/plasticflaps, -/obj/machinery/conveyor{ - dir = 2; - id = "snowdin_belt_mine" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Go" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/mining_main) -"Gp" = ( -/obj/machinery/space_heater, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Gq" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Gr" = ( -/obj/structure/flora/stump, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Gs" = ( -/obj/machinery/light/small, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Gt" = ( -/obj/machinery/atmospherics/pipe/manifold/orange/visible{ - dir = 1 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Gu" = ( -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Gv" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 8 - }, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Gw" = ( -/obj/machinery/atmospherics/pipe/simple/orange/visible{ - dir = 8 - }, -/turf/open/floor/plating/snowed, -/area/awaymission/snowdin/outside) -"Gx" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/mining_main/robotics) -"Gy" = ( -/obj/structure/table, -/obj/item/clothing/head/welding{ - pixel_x = -3; - pixel_y = 5 - }, -/obj/item/clothing/glasses/welding, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/robotics) -"Gz" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/robotics) -"GA" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/robotics) -"GB" = ( -/obj/machinery/mecha_part_fabricator, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/robotics) -"GC" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/robotics) -"GD" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"GE" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/item/disk/holodisk/snowdin/ripjacob, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"GF" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"GG" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"GH" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/mining_main/mechbay) -"GI" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/structure/table, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"GJ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"GK" = ( -/obj/machinery/button/door/indestructible{ - id = "snowdingarageunder2"; - name = "right garage door toggle"; - pixel_x = 7; - pixel_y = 24 - }, -/obj/machinery/button/door/indestructible{ - id = "snowdingarageunder"; - name = "left garage door toggle"; - pixel_x = -7; - pixel_y = 24 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"GL" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/mechbay) -"GN" = ( -/turf/closed/wall, -/area/awaymission/snowdin/post/mining_main/mechbay) -"GO" = ( -/obj/machinery/mineral/unloading_machine{ - dir = 1; - icon_state = "unloader-corner"; - input_dir = 1; - output_dir = 2 - }, -/obj/machinery/conveyor{ - dir = 2; - id = "snowdin_belt_mine" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"GP" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/mining_main) -"GQ" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/shoes/winterboots, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"GR" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main) -"GS" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/turf/open/floor/plating, -/area/awaymission/snowdin/outside) -"GT" = ( -/obj/structure/window/reinforced/fulltile/ice, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/floor/plating, -/area/awaymission/snowdin/outside) -"GU" = ( -/turf/closed/wall/rust, -/area/awaymission/snowdin/post/mining_main/robotics) -"GV" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical{ - pixel_x = 3; - pixel_y = 7 - }, -/obj/item/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/robotics) -"GW" = ( -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/robotics) -"GX" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main/robotics) -"GY" = ( -/obj/effect/turf_decal/stripes/line, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/robotics) -"GZ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Ha" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Hb" = ( -/mob/living/simple_animal/hostile/netherworld/migo, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Hc" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hd" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"He" = ( -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hf" = ( -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hg" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hh" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hi" = ( -/obj/effect/turf_decal/bot, -/obj/structure/mecha_wreckage/ripley, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hj" = ( -/obj/machinery/door/firedoor, -/obj/structure/grille, -/obj/structure/window/reinforced/fulltile/ice, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hk" = ( -/obj/machinery/conveyor{ - dir = 2; - id = "snowdin_belt_mine" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Hl" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/turf/closed/wall, -/area/awaymission/snowdin/post/mining_main) -"Hm" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Hn" = ( -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/cave/mountain) -"Ho" = ( -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/outside) -"Hp" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon/on{ - dir = 1; - frequency = 1442; - id_tag = "snowdin_toxins_mine_1"; - name = "toxin out" - }, -/turf/open/floor/engine/vacuum, -/area/awaymission/snowdin/outside) -"Hq" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"Hr" = ( -/obj/structure/fence, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/outside) -"Hs" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/robotics) -"Ht" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main/robotics) -"Hu" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"Hv" = ( -/obj/structure/closet/wardrobe/robotics_black, -/obj/machinery/power/apc{ - dir = 4; - name = "Robotics APC"; - pixel_x = 26 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"Hw" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"Hx" = ( -/obj/machinery/holopad, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"Hy" = ( -/obj/machinery/door/airlock/research/glass{ - name = "Mech Lab"; - req_access_txt = "29" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Hz" = ( -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HA" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HB" = ( -/obj/machinery/mineral/processing_unit_console, -/turf/closed/wall, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HC" = ( -/obj/machinery/mineral/processing_unit{ - dir = 1; - output_dir = 2 - }, -/obj/machinery/conveyor{ - dir = 2; - id = "snowdin_belt_mine" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"HD" = ( -/obj/structure/table, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main) -"HE" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_main) -"HF" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_main) -"HG" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"HI" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/canister, -/obj/effect/light_emitter{ - name = "outdoor light"; - set_cap = 3; - set_luminosity = 6 - }, -/turf/open/floor/plating/snowed/smoothed, -/area/awaymission/snowdin/outside) -"HJ" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/robotics) -"HK" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/item/stack/sheet/glass{ - amount = 20; - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/robotics) -"HL" = ( -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"HM" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"HN" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -23 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HO" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HP" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HQ" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HR" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HS" = ( -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"HT" = ( -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/mining_main) -"HU" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/mining_main) -"HV" = ( -/obj/machinery/door/airlock{ - name = "Private Quarters" - }, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/mining_main) -"HW" = ( -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"HX" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"HY" = ( -/obj/structure/closet/emcloset, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"HZ" = ( -/obj/structure/closet/emcloset, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Ia" = ( -/obj/machinery/door/poddoor/shutters{ - id = "snowdingarage3"; - name = "garage door" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Ib" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"Ic" = ( -/obj/machinery/door/airlock/research{ - name = "Robotics Lab"; - req_access_txt = "29" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"Id" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"Ie" = ( -/obj/structure/barricade/sandbags, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_dock) -"If" = ( -/obj/structure/sign/warning/nosmoking{ - pixel_y = -32 - }, -/obj/machinery/light, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Ig" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Ih" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Ii" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/machinery/light, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Ij" = ( -/obj/effect/turf_decal/bot, -/turf/open/floor/mech_bay_recharge_floor, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Ik" = ( -/obj/machinery/computer/mech_bay_power_console{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Il" = ( -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Im" = ( -/obj/machinery/mech_bay_recharge_port, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/post/mining_main/mechbay) -"In" = ( -/obj/mecha/working/ripley/mining{ - dir = 1; - ruin_mecha = 1 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/mech_bay_recharge_floor, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Io" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Ip" = ( -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"Iq" = ( -/obj/structure/bed, -/obj/item/bedsheet/grey, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/mining_main) -"Ir" = ( -/obj/structure/closet, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/mining_main) -"Is" = ( -/obj/structure/table/wood, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/mining_main) -"It" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Iu" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_main) -"Iv" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Iw" = ( -/obj/machinery/button/door/indestructible{ - id = "snowdingarage3"; - name = "garage door toggle"; - pixel_x = 7; - pixel_y = 24 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Ix" = ( -/obj/vehicle/ridden/atv{ - icon_state = "atv"; - dir = 1 - }, -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Iy" = ( -/obj/structure/table, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Iz" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"IA" = ( -/obj/structure/rack, -/obj/item/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = 6 - }, -/obj/item/storage/belt/utility, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"IB" = ( -/obj/structure/table, -/turf/open/floor/plasteel/white, -/area/awaymission/snowdin/post/mining_main/robotics) -"IC" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"ID" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"IE" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/mechbay) -"IF" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"IG" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"IH" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Garage" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"II" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main) -"IJ" = ( -/obj/structure/sign/warning/electricshock{ - pixel_x = 32 - }, -/turf/closed/wall, -/area/awaymission/snowdin/post/mining_main/robotics) -"IK" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_dock) -"IL" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"IM" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"IN" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"IO" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"IP" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Main Outpost APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"IQ" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Mechbay APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main/mechbay) -"IR" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"IS" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"IT" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel{ - heat_capacity = 1e+006 - }, -/area/awaymission/snowdin/post/mining_main) -"IU" = ( -/obj/machinery/light, -/obj/structure/table, -/obj/item/storage/box/donkpockets, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"IV" = ( -/obj/structure/table, -/obj/structure/showcase/machinery/microwave, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"IW" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"IX" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/stack/sheet/mineral/plasma{ - amount = 10 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"IY" = ( -/obj/machinery/light, -/turf/open/floor/plating{ - icon_state = "platingdmg1" - }, -/area/awaymission/snowdin/post/mining_main) -"IZ" = ( -/obj/machinery/computer/monitor, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Ja" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jb" = ( -/obj/machinery/door/airlock/maintenance{ - name = "SMES Storage"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jc" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Jd" = ( -/obj/item/shard, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Je" = ( -/obj/effect/turf_decal/delivery, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jf" = ( -/obj/structure/plasticflaps, -/obj/machinery/conveyor{ - dir = 8; - id = "snowdin_belt_mine" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jg" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "snowdin_belt_mine" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jh" = ( -/obj/machinery/conveyor{ - dir = 10; - id = "snowdin_belt_mine" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Ji" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Jj" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Misc Storage"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Jk" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jl" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Mining Dock"; - req_access_txt = "48" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Jm" = ( -/obj/machinery/door/firedoor, -/obj/structure/grille/broken, -/obj/item/stack/rods{ - amount = 2 - }, -/obj/item/shard, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jn" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jo" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jp" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/storage/toolbox/emergency, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/suit/hooded/wintercoat, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Jq" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/plating/snowed/cavern, -/area/awaymission/snowdin/cave/cavern) -"Jr" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Mining Dock"; - req_access_txt = "48" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Js" = ( -/obj/structure/door_assembly/door_assembly_min{ - anchored = 1; - name = "broken airlock" - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Jt" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/storage/toolbox/emergency, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Ju" = ( -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Jv" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Jw" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Jx" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Jy" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Jz" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"JA" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/electricshock{ - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"JB" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JC" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JD" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JE" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/storage/toolbox/emergency, -/obj/item/clothing/suit/hooded/wintercoat, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"JF" = ( -/obj/structure/ore_box, -/obj/effect/turf_decal/bot, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JG" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JH" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JI" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JJ" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JK" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/awaymission/snowdin/post/mining_main) -"JL" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"JM" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"JN" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/shoes/winterboots, -/obj/item/clothing/shoes/winterboots, -/obj/item/clothing/shoes/winterboots, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"JO" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"JP" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"JU" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"JV" = ( -/obj/machinery/power/port_gen/pacman, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"JW" = ( -/obj/machinery/power/terminal{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"JX" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"JY" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"JZ" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Misc Storage"; - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Ka" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Kb" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Kc" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Kg" = ( -/obj/structure/ore_box, -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Kh" = ( -/obj/machinery/airalarm{ - pixel_y = 23 - }, -/obj/structure/sign/warning/docking{ - pixel_x = 32 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Ki" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Kj" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Kk" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/machinery/computer/monitor, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Kl" = ( -/obj/structure/sign/warning/docking{ - pixel_x = 32 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Km" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 8 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Kn" = ( -/obj/docking_port/stationary{ - area_type = /area/awaymission/snowdin/post/mining_main; - dir = 4; - dwidth = 2; - height = 5; - id = "snowdin_mining_top"; - name = "snowdin mining top"; - roundstart_template = /datum/map_template/shuttle/snowdin/mining; - width = 5 - }, -/turf/open/floor/plasteel/elevatorshaft, -/area/awaymission/snowdin/post/mining_main) -"Ko" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Kp" = ( -/obj/machinery/holopad, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Kq" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Kr" = ( -/obj/structure/door_assembly/door_assembly_min{ - anchored = 1; - name = "broken airlock" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Ks" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Kt" = ( -/obj/docking_port/stationary{ - area_type = /area/awaymission/snowdin/post/mining_dock; - dir = 4; - dwidth = 2; - height = 5; - id = "snowdin_mining_down"; - name = "snowdin mining bottom"; - width = 5 - }, -/turf/open/floor/plasteel/elevatorshaft, -/area/awaymission/snowdin/post/mining_dock) -"Ku" = ( -/obj/machinery/light{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"Kv" = ( -/obj/machinery/power/terminal{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Kw" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Kx" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Ky" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"Kz" = ( -/obj/machinery/power/apc{ - dir = 1; - name = "Mining Post APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"KA" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KB" = ( -/obj/structure/door_assembly/door_assembly_min{ - anchored = 1; - name = "broken airlock" - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KD" = ( -/obj/structure/ore_box, -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"KE" = ( -/obj/machinery/light, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"KF" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"KG" = ( -/obj/structure/sign/warning/docking{ - pixel_x = 32 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"KH" = ( -/obj/structure/cable, -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"KI" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"KJ" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty{ - pixel_x = -1; - pixel_y = 1 - }, -/obj/item/stack/rods, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"KK" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Engineering"; - req_access_txt = "32" - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"KL" = ( -/obj/machinery/light, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KM" = ( -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KN" = ( -/obj/structure/sign/warning/docking{ - pixel_x = 32 - }, -/turf/open/floor/plating{ - icon_state = "platingdmg2" - }, -/area/awaymission/snowdin/post/mining_main) -"KO" = ( -/obj/machinery/computer/shuttle/snowdin/mining{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KP" = ( -/turf/open/floor/plasteel/elevatorshaft, -/area/awaymission/snowdin/post/mining_main) -"KQ" = ( -/obj/machinery/computer/shuttle/snowdin/mining{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"KR" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KT" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KU" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/caution/stand_clear, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KV" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"KX" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"KY" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/caution/stand_clear, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"KZ" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"La" = ( -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) -"Lw" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/minipost) -"Lx" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"ND" = ( -/turf/open/floor/plasteel/elevatorshaft, -/area/awaymission/snowdin/post/mining_dock) -"OF" = ( -/obj/machinery/door/airlock/external{ - name = "Ready Room"; - req_access_txt = "150" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"PR" = ( -/obj/machinery/door/airlock/external{ - name = "Ready Room"; - req_access_txt = "150" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/awaymission/snowdin/cave) -"Qd" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main/mechbay) -"QX" = ( -/obj/effect/baseturf_helper/asteroid/snow, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"Sf" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_dock) -"SX" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_main) -"TP" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/snowdin/post/mining_main) -"VW" = ( -/obj/machinery/door/airlock/external/glass, -/obj/structure/fans/tiny, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/mining_dock) -"Yn" = ( -/obj/machinery/door/airlock/external/glass, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"Zj" = ( -/turf/open/floor/plating/asteroid/snow, -/area/awaymission/snowdin/post/engineering) - -(1,1,1) = {" -aa -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(2,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(3,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(4,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(5,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(6,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(7,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(8,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(9,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(10,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -tI -tI -aj -aj -aj -aj -aj -aj -aj -ae -aj -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(11,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -ag -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -tI -tI -tQ -tI -aj -tI -tQ -tI -tI -tI -aj -aj -aj -tI -tI -tI -tI -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(12,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tI -tI -tI -aj -tI -vJ -tI -tI -ud -tI -tI -tI -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(13,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -am -af -ak -af -af -af -fq -af -am -af -af -ag -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -aj -tQ -tx -tx -tx -tx -tx -tx -tx -tx -tQ -tI -tI -tI -tI -tQ -tI -tI -tI -tI -tI -tI -aj -aj -ae -aj -aj -aj -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(14,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -am -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tI -aj -aj -tx -tx -tx -tI -tQ -aj -aj -aj -tx -tx -tx -tx -tx -tx -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(15,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -eM -af -af -al -af -af -jc -af -af -af -af -af -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -ud -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -vJ -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(16,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -aK -aK -aK -aK -af -af -af -af -af -af -ak -af -af -af -fq -af -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -tQ -aj -aj -tx -tx -tx -tx -tx -tx -tx -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(17,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -ag -af -ak -af -af -af -aK -dz -dY -aK -af -af -af -ag -af -af -am -af -af -af -af -af -af -al -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -aj -aj -aj -tx -tx -tx -tx -tx -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(18,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -av -af -af -af -af -ag -af -af -aK -dA -aV -aK -aK -aK -aK -aK -aK -af -af -af -al -af -af -af -af -af -af -af -ag -af -ak -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -tI -tI -tI -tx -tx -tx -tx -tx -aj -aj -aj -aj -aj -aj -ae -aj -aj -aj -tI -tI -tI -tI -tQ -tI -tI -tQ -tI -tI -tI -tI -tx -tx -tI -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(19,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -af -af -am -af -af -aK -aK -aK -aK -dB -dZ -eN -dC -fH -gX -hG -aK -af -fq -af -af -ak -af -af -af -am -af -af -af -af -fq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tQ -tI -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -tI -ud -tI -tI -vJ -tI -vJ -tI -tI -tI -tI -tI -tI -tI -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -af -fq -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(20,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -aK -bO -cm -aV -dC -ea -eO -fs -eO -eO -hH -aK -ag -af -af -af -af -ag -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -tI -aj -aj -tI -tI -tI -aj -aj -aj -tI -tI -tI -tI -tI -aj -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -ag -af -am -af -ag -af -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(21,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -af -af -af -am -ag -aK -bP -cn -aS -dC -eb -eP -eP -gh -gY -hI -aK -aK -aK -aK -aK -aK -aK -af -af -af -af -fq -am -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -aj -tI -vJ -tI -aj -aj -tI -tQ -tQ -aj -aj -tI -tI -tI -tI -ud -tI -aj -tI -tI -tI -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ku -ae -ae -ae -af -af -af -am -af -af -af -af -af -af -am -af -af -af -af -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(22,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -af -af -aJ -aK -aK -aK -aS -co -aV -aS -aS -aS -aV -aV -aS -hJ -aV -jd -aS -kv -le -lU -aK -af -af -af -af -af -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tG -tI -ja -tx -tx -tS -tx -tx -tS -tx -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -tQ -tI -tI -tI -tI -tI -tI -tI -tI -tI -tQ -aj -tI -tI -tI -aj -aj -aj -tQ -tQ -tI -tI -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -ag -fq -ko -af -ag -am -af -af -af -fq -af -af -af -af -fq -af -am -af -af -fq -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -fq -af -tN -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(23,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -af -af -aK -aQ -bi -bx -bQ -cp -cV -cv -ec -eQ -ft -eQ -eQ -hK -eQ -je -aS -kw -lf -lV -aK -af -af -ak -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -tJ -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -tI -tI -tI -tI -vK -tI -tI -tI -tI -vJ -aj -aj -aj -tI -tI -aj -ae -aj -aj -aj -aj -tI -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -ko -af -ak -af -af -af -af -af -am -af -af -af -af -af -af -al -af -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -tN -fq -af -af -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(24,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -af -ag -aK -aR -bj -by -aV -cq -cW -dD -ed -eR -fu -gi -gZ -hL -io -jf -aV -kx -lg -lW -aK -ag -af -am -af -af -af -af -af -fq -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -af -af -af -sf -af -tN -tN -tN -tN -tN -tN -tN -tN -af -mZ -af -af -af -af -ae -ae -ae -aj -aj -aj -aj -tI -tI -tI -tI -tI -aj -tI -tQ -tI -tI -tI -tI -tI -tI -aj -ae -ae -ae -ae -aj -aj -tI -ud -wx -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ak -af -al -af -af -ko -af -af -af -fq -af -af -af -fq -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -ag -af -af -ak -ag -af -af -af -ag -af -af -af -af -tN -af -am -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(25,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -af -af -aK -aS -aV -aS -aV -cr -cX -dE -ee -eS -fv -gj -ha -dE -ip -jg -aV -ky -aV -aV -aK -aK -af -af -al -am -af -af -af -af -af -se -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -ak -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -fq -af -am -ae -ae -ae -ae -aj -aj -aj -aj -aj -aj -aj -aj -aj -tI -tI -tI -tI -tI -tI -tI -aj -aj -ae -ae -ae -ae -ae -aj -aj -tI -tI -tI -tI -aj -tI -tI -tI -tI -tI -tx -tx -tx -tx -tx -tx -tx -tx -tx -uq -tN -ae -ae -ae -tN -uq -tN -tN -tN -uq -af -af -ag -ag -fq -af -ag -af -af -am -af -af -af -af -ko -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -am -af -am -af -af -am -af -af -af -af -fq -af -am -af -af -fq -af -tN -af -af -af -fq -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(26,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -af -af -af -ak -af -aK -aT -bi -bx -bR -cs -cY -aS -aS -eT -aS -aS -hb -aS -iq -jf -aV -kz -lh -lX -mD -aK -af -af -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -fq -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -uq -af -af -af -am -uX -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -tI -tI -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -tI -tI -tI -tI -tI -tI -tQ -tI -tI -aj -aj -tx -tx -tx -tx -tx -tx -tN -tN -tN -ae -ae -tN -tN -tN -tN -tN -tN -tN -tN -am -af -af -af -am -fq -af -af -af -af -af -af -ko -af -af -af -af -am -af -af -af -af -fq -af -ak -af -am -af -af -af -af -af -af -af -fq -af -af -fq -af -fq -af -af -af -fq -af -af -af -af -tN -tN -af -af -af -ag -af -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(27,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -af -ao -af -af -af -aK -aU -bk -bz -aS -cq -cZ -aS -ef -eU -aV -gk -hc -aV -ir -jh -jP -kA -li -aV -aV -aK -ag -af -af -af -af -af -fq -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -am -af -af -ak -af -jc -af -af -fq -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -aj -aj -aj -aj -aj -tI -tI -tI -tx -tx -tx -tx -xR -tN -tN -tN -tN -tN -uq -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -am -af -af -af -af -fq -af -af -fq -ko -af -af -af -af -af -fq -af -af -af -af -tN -tN -tN -tN -tN -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -am -tN -af -af -am -af -ak -af -af -af -af -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(28,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ag -af -af -af -af -aK -aV -aV -aV -aS -ct -da -aV -eg -eV -aV -gl -hd -aS -iq -ji -aS -kB -lj -lX -mD -aK -af -af -ak -af -am -af -ak -af -am -af -ag -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -am -af -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -tI -aj -aj -aj -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -fq -af -af -af -af -af -af -af -af -af -tq -am -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -fq -af -af -tN -af -af -af -af -af -af -af -fq -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(29,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -af -af -af -am -af -aK -aW -bl -bA -bS -cu -db -aV -eh -eW -aS -gm -he -aV -iq -jj -aS -kC -kC -jR -jR -na -na -ag -af -af -af -af -af -af -af -af -af -af -af -fq -af -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -af -af -af -af -af -af -af -ak -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -ai -aj -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -fq -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -fq -tN -tN -tN -tN -tN -tN -af -af -fq -af -af -am -af -af -af -af -af -af -af -af -af -tN -af -af -fq -am -af -af -af -af -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(30,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -af -af -af -af -ag -aK -aX -bm -bB -aS -cv -dc -aS -aS -aS -aS -aV -aS -aS -iq -jg -jQ -jR -jR -lY -mE -nb -na -na -af -fq -af -al -af -af -af -fq -am -af -af -af -af -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -tC -af -af -af -fq -af -af -am -af -al -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -fq -ag -af -af -af -mZ -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ko -ag -af -af -tN -tN -tN -tN -tN -tN -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -af -af -af -af -am -af -fq -af -ak -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -fq -af -af -ag -af -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(31,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ak -af -af -af -af -aK -aS -aV -aS -aS -cr -dd -dF -ei -eX -fw -fw -fw -dK -is -jk -jR -kD -lk -lZ -mF -mF -nC -ob -ob -ob -ob -ag -af -af -af -af -af -ak -af -am -af -af -ag -tq -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -am -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -ko -af -ak -af -af -af -af -af -af -fq -af -ak -af -af -am -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -fq -af -af -am -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -tN -af -af -af -af -af -fq -af -af -af -fq -af -af -af -af -af -am -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(32,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -af -am -af -af -af -aK -aY -bl -bx -bT -cw -cY -dF -dK -eY -fx -gn -gr -hM -it -jl -jR -kE -ll -ma -mG -mG -nD -oc -oy -ph -pH -pH -pH -pH -fq -af -sw -sH -sH -sH -sH -sH -tn -ko -af -ag -af -af -af -ag -af -af -af -af -af -af -af -fq -af -af -af -ak -af -af -af -fq -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -af -af -af -af -af -fq -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ae -ae -af -af -af -af -ko -sw -sH -sH -sH -sH -sH -tn -af -af -af -am -af -af -af -af -am -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -am -af -af -fq -af -ak -af -af -af -fq -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -fq -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(33,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ag -af -af -af -ao -aK -aZ -bm -bC -aS -cx -de -dF -dM -eY -fy -go -hf -hM -it -jm -jR -jR -lm -mb -mG -mG -nD -oc -oz -pi -pH -qn -qn -pH -af -af -sx -sI -sS -td -sS -td -sS -tq -af -am -af -af -af -am -ak -af -af -af -fq -af -af -af -af -ak -af -af -af -af -am -af -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -am -af -af -af -ag -af -fq -af -ag -af -af -ag -af -af -eM -af -af -af -ag -af -ae -ae -ae -ae -ae -ae -ae -af -af -af -ae -ae -af -af -af -ae -ae -af -af -af -af -tq -sS -td -sS -td -sS -sI -yU -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tq -tN -tN -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -am -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -fq -af -af -af -af -af -ak -af -af -af -fq -af -af -am -af -af -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(34,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -af -af -af -af -aK -aS -aV -aV -aV -cx -de -dG -dM -eZ -fz -gp -hg -hN -it -jn -jS -jR -jR -mc -lY -jR -nE -oc -oA -oH -pI -qo -qp -pH -am -af -sx -sJ -te -te -te -te -te -dX -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -af -vL -vR -vX -vR -vL -af -af -af -af -af -af -af -af -ag -af -af -af -ag -af -af -af -af -ae -af -af -af -ag -af -af -af -af -af -dX -te -te -te -te -te -yF -yU -af -am -af -af -fq -af -af -af -af -af -af -fq -af -af -af -af -tN -tN -tN -af -af -fq -kp -am -af -af -af -af -af -af -fq -ak -af -af -af -af -af -fq -af -af -af -af -af -fq -af -af -af -fq -af -af -af -af -af -am -af -af -fq -tN -tN -tN -tN -tN -tN -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -ak -af -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -Go -Go -GP -Go -Go -GP -GP -Go -ae -ac -ac -ac -ac -ac -ac -ac -"} -(35,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -am -af -af -af -aK -ba -bl -bx -bU -cy -df -dH -dK -fa -fA -gq -hh -hO -iu -jm -jT -kF -ln -md -mH -nc -nF -od -oB -pj -pI -qp -qJ -pH -af -am -sx -sK -te -te -te -te -te -dX -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -ua -ua -ua -ua -ua -ua -ua -tN -af -af -af -af -af -af -af -af -af -af -vM -vS -vY -wb -vM -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ag -af -af -af -af -af -af -af -af -af -dX -te -te -te -te -te -yG -yU -af -af -af -af -af -am -af -ak -af -af -af -af -af -am -af -af -af -tN -af -af -af -af -ko -af -af -af -af -af -am -af -af -af -af -am -af -af -af -af -af -af -fq -af -af -af -am -af -af -af -af -af -fq -af -af -af -fq -ak -af -tN -tN -fq -ak -af -tN -af -af -af -af -af -af -af -af -af -af -al -af -af -af -fq -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -GP -Gq -Gq -Gq -Gq -Gq -Gq -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(36,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -am -af -af -ag -aK -bb -bn -bD -aS -cq -de -dI -dK -fb -fB -gr -gr -hM -iv -jo -jU -js -jU -me -mI -nd -nF -oe -oC -pk -pJ -qo -qK -pH -ak -af -sx -sJ -te -te -te -te -te -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -te -te -te -te -te -te -te -te -dX -dX -dX -dX -dX -dX -dX -dX -dX -oa -vN -vT -vY -wc -vM -oa -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -dX -te -te -te -te -te -yF -yU -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -ak -af -af -ks -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -tN -tN -tN -af -af -af -tN -tN -tN -tN -tN -tN -af -af -fq -af -af -af -af -af -af -af -af -af -fq -af -ko -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -Go -Gq -Gq -Gq -Gq -Gq -Gq -Go -ae -ac -ac -ac -ac -ac -ac -ac -"} -(37,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ag -af -af -am -aq -ar -ar -aK -aS -aV -aV -aS -cq -dd -dJ -dK -fc -fC -gs -hi -dK -iw -jp -jV -gt -lo -mf -mJ -ne -nG -of -oD -pl -pI -pH -pH -pH -af -fq -sx -sK -te -te -te -te -te -dX -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -ua -ua -ua -ua -ua -ua -tN -tN -tN -af -af -af -af -af -af -af -af -vM -vU -vY -wd -vM -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -dX -te -te -te -te -te -yG -yU -af -fq -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -fq -am -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -fq -af -af -fq -af -af -af -af -af -af -am -af -tN -tN -af -af -am -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -Fl -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -Go -GP -GP -Go -Go -GP -Go -Gq -Gq -Gq -Gq -Gq -Go -ae -ac -ac -ac -ac -ac -ac -ac -"} -(38,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -al -ag -ar -aw -aE -aL -bc -bo -bE -az -cz -dg -dK -dK -dK -dM -dM -dM -dK -ix -jq -jm -jU -lp -mg -mK -nf -nH -og -oE -pm -pK -qq -af -ak -af -sf -sx -sJ -te -te -te -te -te -dX -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -vL -vR -vX -vR -vL -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -dX -te -te -te -te -te -yF -yU -af -af -ak -am -af -af -af -af -af -fq -af -am -af -af -af -af -af -af -af -af -af -af -ks -af -af -af -am -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -tN -tN -am -af -af -af -fq -af -am -af -af -fq -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -ko -am -af -ae -ae -ae -ae -ae -ae -ae -ae -GP -HT -Iq -Go -HT -Iq -Go -Go -Go -GP -Gq -GP -Go -ae -ac -ac -ac -ac -ac -ac -ac -"} -(39,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -af -ar -ax -aF -aE -aE -bo -bE -az -bo -dh -dL -ej -fd -fD -gt -fd -hP -gt -jr -jW -jU -lq -mh -mL -nf -nI -oh -oF -pn -pL -qq -ag -rj -am -af -sx -sI -sU -tf -tl -tf -tl -tq -af -am -af -af -af -af -af -fq -af -am -tB -af -af -fq -af -af -af -al -af -af -af -af -af -am -af -af -fq -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -al -ag -af -af -ag -am -af -ag -fq -af -af -af -af -af -ak -af -af -af -af -af -af -af -al -af -af -af -af -af -af -am -af -af -af -ak -tq -tl -tf -tl -tf -sU -sI -yU -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -ko -af -af -fq -am -af -af -fq -af -fq -af -af -af -af -af -fq -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -af -af -af -af -af -af -af -af -af -af -am -am -af -af -af -af -af -af -af -am -af -af -af -fq -af -ko -af -af -af -ae -ae -ae -ae -ae -ae -ae -GP -HU -Ir -GP -HU -Ir -Go -ae -Go -Kj -Kv -KH -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(40,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -ak -ar -ay -aG -aM -bc -bp -bE -az -br -di -dM -ek -fe -fE -gu -hj -dK -iy -js -jX -kG -lr -mi -mM -nf -nF -oi -oG -po -pM -qq -am -af -af -af -sy -sL -sL -sL -sL -sL -to -ko -fq -af -af -af -af -af -af -af -af -af -am -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -fq -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -fq -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -kp -sy -sL -sL -sL -sL -sL -to -am -am -af -af -af -am -af -af -af -af -af -am -dX -af -fq -ao -af -af -ag -af -fq -af -kp -ag -af -af -af -ag -af -af -af -ag -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -am -am -af -af -af -tN -tN -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -ko -af -am -ag -ae -ae -ae -ae -ae -ae -ae -GP -HT -Is -Go -HT -Is -Go -ae -GP -Kk -Kw -KI -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(41,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -af -ar -az -aC -aC -az -bq -bF -bV -cA -dj -dM -el -ff -fg -fg -fh -fh -fh -fg -fg -kH -ls -mj -jo -ng -nF -oc -oH -oH -oc -ob -qL -qL -qL -ak -am -af -dX -dX -dX -af -af -kp -af -af -af -ak -fq -af -af -af -al -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -am -af -af -af -af -af -af -af -af -ak -af -af -af -af -ak -af -am -af -af -af -af -af -am -af -af -af -af -af -af -af -fq -af -af -af -al -af -tN -ko -af -af -af -dX -dX -dX -dX -dX -af -dX -dX -dX -dX -af -ag -af -am -af -af -af -af -af -ag -ae -ae -ae -ae -ae -ae -ku -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -fq -ag -af -af -af -fq -ag -af -af -ag -af -af -fq -ak -af -af -af -af -fq -af -al -tN -af -af -af -fq -am -af -af -af -af -fq -am -af -af -af -af -af -af -af -fq -af -af -af -af -af -lS -iY -sN -ao -af -af -af -af -ae -ae -ae -ae -Hl -Go -HV -Go -Go -HV -Go -GP -Go -GP -Go -Kx -KJ -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(42,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -ag -ar -aw -aE -aE -bd -br -bI -bW -cB -bo -dK -em -fg -fF -gv -fF -hQ -iz -jt -fh -kI -lt -mk -mL -nh -nJ -hM -oI -pp -pN -dK -qM -rk -rG -af -am -dX -dX -dX -af -fq -af -ko -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -am -af -af -af -af -af -af -af -ak -af -fq -af -af -al -af -af -af -af -af -tN -tN -tN -tN -tN -tN -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -am -af -fq -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ks -af -ak -af -af -fq -af -dX -dX -dX -af -dX -te -te -AC -yW -af -af -ak -eM -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -af -af -af -af -tN -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -ak -af -af -af -af -ak -af -af -fq -ko -af -af -ak -af -af -am -af -af -ae -ae -ae -GP -HD -GR -It -Iu -IR -Go -Is -Ir -Iq -Go -Ky -Gq -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(43,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ag -af -af -af -ar -aA -aH -aN -aE -bs -bH -bX -cB -bE -az -en -fh -fF -fG -fG -gw -hl -hR -jY -kJ -lu -ml -jU -ni -nK -oj -oJ -pq -pO -qr -qN -js -rH -dX -dX -dX -dX -dX -dX -af -af -ks -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -af -fq -am -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -am -af -af -af -af -af -ao -af -af -af -af -ko -af -af -af -af -am -af -am -am -af -zK -oa -te -Au -te -yW -af -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -am -af -af -af -af -tN -tN -tN -tN -af -am -af -af -ak -af -af -af -af -af -af -fq -am -af -af -af -af -af -af -af -af -af -af -af -kp -af -af -af -af -af -af -af -FQ -FZ -Go -GP -Go -HE -Gq -Gq -HW -IS -HV -HT -JK -HT -GP -Kz -Gq -Go -ae -ac -ac -ac -ac -ac -ac -ac -"} -(44,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -af -ar -aB -aG -aO -bc -br -bI -bY -cC -bE -dK -eo -fh -fF -fG -fG -fI -hm -hS -iA -iB -iC -js -jW -nj -nL -dK -js -pr -pP -dK -qO -rl -qL -oa -dX -dX -dX -dX -af -af -af -ko -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -fq -af -af -af -am -am -af -af -af -fq -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -ks -af -af -af -fq -af -af -af -af -dX -af -zU -Ag -te -te -yW -AX -AX -yW -yW -yY -yX -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -fq -tN -af -af -af -af -af -al -af -af -fq -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -ko -am -af -am -af -af -af -af -af -Ga -Gp -GQ -Hm -HF -HW -Gq -Gq -IS -Go -GP -Go -GP -Go -Go -KK -Go -ae -ac -ac -ac -ac -ac -ac -ac -"} -(45,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -ak -af -ao -ar -aC -aC -aC -az -bt -bJ -bZ -bp -dk -dK -ep -fh -fF -fG -fG -gy -hn -hR -jY -kJ -lw -jo -js -nk -nM -ok -oK -ps -pQ -qs -pQ -rm -rH -dX -dX -dX -dX -dX -af -dX -dX -ks -af -af -af -af -af -af -al -af -af -af -af -fq -af -af -af -af -af -am -am -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -af -af -am -am -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -tN -af -tN -af -af -af -af -af -af -af -ko -af -af -af -ak -af -ao -yV -oa -dX -yW -yW -Ah -Av -Lw -yX -AY -jZ -yX -Bq -BA -yX -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -fq -af -af -af -af -tN -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -fq -af -af -af -af -af -fq -af -af -ks -af -af -af -af -af -dX -am -dX -Gb -Gq -Gq -SX -GR -HW -Gq -GR -IT -IR -Jr -Gq -Kc -Kc -Gq -Gq -Go -ae -ac -ac -ac -ac -ac -ac -ac -"} -(46,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -af -ar -aw -aE -aE -bc -br -bs -az -cD -dl -dM -eq -fg -fF -gz -fF -hU -iD -jw -fh -kL -lx -mm -jX -jX -jm -hM -oL -pt -pR -dK -qM -rn -rG -af -af -af -dX -af -af -af -af -ko -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -al -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -af -af -tN -tN -af -af -af -af -af -af -af -am -af -af -af -af -fq -af -af -af -kp -af -af -af -ag -af -af -yW -zo -zo -yW -zV -Ai -Aw -zp -AM -AZ -zp -Bj -zp -BB -yY -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -am -af -af -am -af -tN -fq -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -ko -af -af -af -dX -af -af -af -dX -Gb -Gq -GR -SX -HG -HX -HX -IF -HW -Gq -Hm -JL -HW -GR -GR -KL -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(47,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -am -ag -ar -ax -aI -aE -aE -bp -bs -az -cE -dk -dN -dO -dO -dO -dP -dP -dO -dP -dP -dP -kM -ly -dP -dP -nl -nN -nt -nt -nt -nN -nN -nN -oW -qL -fq -am -af -af -ak -af -af -dX -kp -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -am -am -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -am -tN -tN -af -af -ao -af -af -ak -af -af -af -af -af -af -af -af -af -am -ko -af -fq -af -af -ae -ae -yX -zp -zx -yX -zW -Aj -Aj -Ai -AN -Aj -Bf -yY -Br -BC -yX -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -ag -af -af -af -ag -af -am -af -af -fq -af -af -am -af -af -af -af -af -af -af -af -af -af -ks -af -af -af -af -af -af -af -FR -FZ -FZ -Go -Go -GP -GP -Go -HF -Gq -IW -Js -JM -Gq -Gq -GR -KM -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(48,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -af -af -af -af -ar -aD -aG -aP -bc -bo -bK -az -cF -dm -dO -er -ex -fJ -gA -hp -gA -gA -jx -ka -kb -lz -mn -dO -nm -nO -ol -oM -pu -oM -ol -qP -oW -af -af -ak -af -sV -af -af -af -af -ko -af -af -ak -af -af -af -af -af -af -af -af -am -am -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -tq -uv -tT -tW -tW -tW -tW -tW -tW -tq -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -ao -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -am -af -af -af -af -ko -af -af -am -af -ae -ae -yY -zq -zy -zL -zX -zp -Ax -AE -Ai -Ba -zp -yY -yX -yY -yX -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -CS -af -af -af -CS -af -DW -af -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -am -af -af -ko -af -am -af -af -af -af -ao -af -mZ -ae -ae -ae -FZ -HY -Iu -IG -IS -Go -GP -Go -Go -Kl -KA -KN -GP -ae -ac -ac -ac -ac -ac -ac -ac -"} -(49,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ag -af -af -af -ar -ar -ar -ar -ar -az -az -az -aC -aC -dP -es -fi -fK -gB -hq -gA -gA -jy -gA -kN -lA -gA -dO -nn -nP -om -oN -om -pS -qt -qQ -ro -rI -dX -dX -dX -af -af -am -af -af -ko -af -af -af -af -af -am -af -af -af -am -af -af -af -am -af -af -af -af -af -af -am -af -af -af -am -af -af -af -am -af -dX -te -te -te -te -te -te -te -te -dX -af -af -af -ak -af -am -af -af -af -af -tN -am -af -af -af -am -af -af -am -af -af -af -af -af -am -af -af -af -fq -af -af -af -af -af -af -af -af -fq -af -ko -ag -af -af -ae -ae -ae -yZ -yX -yY -yX -yX -Ak -Ay -AF -AO -AO -zp -Bk -Bs -yX -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -ai -Db -Dm -Db -ai -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -af -af -af -Fd -af -kp -ao -af -af -af -af -am -af -af -af -af -af -am -Ga -HF -HW -HW -IU -Go -Jt -JN -GP -Go -KB -Go -Go -GP -ac -ac -ac -ac -ac -ac -ac -"} -(50,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -af -af -af -af -be -bu -bL -ca -cG -dn -dO -et -ex -fL -gC -hr -gA -iE -hp -gC -gD -lB -gC -mO -no -nQ -nQ -nQ -nQ -nQ -op -qR -rp -rp -rp -sz -rp -af -af -af -dX -dX -ko -af -af -af -ao -af -af -af -af -af -af -af -af -af -am -af -ao -af -af -ak -af -am -af -af -af -af -af -af -ao -af -af -dX -te -te -te -te -te -te -te -te -dX -af -af -af -af -af -am -af -af -af -af -af -af -af -am -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -ag -ku -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -yX -yY -yY -yX -AP -yX -yX -Bl -Bt -yX -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -ii -ii -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -am -af -ak -af -af -af -am -af -af -af -fq -af -al -af -ko -af -af -am -af -af -af -af -af -Gc -af -am -Hn -Ga -HF -GR -HW -IV -Go -Ju -Gq -GP -Gq -Gq -Kc -KR -Go -ac -ac -ac -ac -ac -ac -ac -"} -(51,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -ao -am -af -ag -bf -bv -bM -cb -cH -do -dP -eu -ex -fM -gD -gA -hV -iF -gD -kb -kO -lC -mo -mP -np -nR -on -oO -pv -pT -qu -qS -rp -rJ -rp -sA -rp -rp -rp -ag -dX -dX -ko -af -af -am -af -af -af -af -ak -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -dX -te -te -te -te -te -te -te -te -dX -af -af -af -af -af -af -af -ao -af -am -af -af -af -af -af -af -fq -af -af -af -af -am -af -fq -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -yW -AG -AQ -Bb -yX -Bm -Bu -yY -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -ii -tI -ii -aj -aj -aj -aj -ai -aj -aj -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -ko -af -af -af -af -ao -af -af -ao -af -af -af -ae -FZ -HZ -HX -QX -IW -Jj -Gq -JO -Go -Gq -Gq -HW -KL -Go -ac -ac -ac -ac -ac -ac -ac -"} -(52,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -af -af -af -af -bf -bw -bN -cc -cI -cb -dP -ev -ex -fN -gA -hs -gA -iG -hs -gD -kP -lB -gA -mO -nq -nS -oo -oP -pw -pw -oP -qT -rq -rK -sg -sB -sM -sW -tg -dX -dX -dX -ko -af -af -af -af -af -af -af -af -af -af -ao -af -am -af -af -af -af -af -am -af -af -af -ao -af -af -af -af -ak -af -af -dX -te -te -te -te -te -te -te -te -dX -af -am -af -af -af -am -am -af -af -af -af -ak -af -fq -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -af -am -af -af -af -af -af -af -ak -af -ae -ae -ae -ae -ai -ai -ai -ai -ai -ai -ai -ae -ae -yW -AH -AQ -AQ -yW -yY -yX -yY -ae -ae -ai -ai -ai -ai -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wS -ii -tI -tI -aj -aj -tI -tI -tI -Ch -tI -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -af -af -af -af -af -af -af -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -Gr -ae -ae -GP -Go -Iv -IH -Iv -GP -GP -GP -Go -JL -HW -Gq -KM -GP -ac -ac -ac -ac -ac -ac -ac -"} -(53,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -af -af -ak -ao -bf -bf -bf -cd -cJ -dp -dp -ew -ex -fJ -gA -ht -hW -iH -jz -kc -iH -lD -hV -dO -nr -nT -op -oP -px -pU -nS -qU -rr -rL -rr -sC -rp -rp -rp -dX -af -af -ko -af -af -af -af -af -am -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -am -af -af -tq -tU -tX -tX -tX -tX -tX -tX -tX -tq -af -af -af -af -am -am -am -fq -af -am -af -af -af -af -af -am -af -af -am -am -af -am -af -af -af -af -af -af -fq -af -af -af -af -af -af -ak -af -af -ag -ae -ae -ae -ae -ai -yg -yg -yg -yg -yg -ai -ae -ae -yW -yW -AR -AQ -yW -ae -ae -ae -ae -ae -ai -yg -yg -ai -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wS -tI -aj -aj -aj -aj -tI -tI -tI -tI -tI -tI -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -fq -af -lS -sN -af -af -af -ak -af -af -af -af -af -af -af -ae -ae -FZ -Iw -Gq -IX -GP -Jv -Jv -Jv -Gq -HW -HW -KM -GP -ac -ac -ac -ac -ac -ac -ac -"} -(54,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ag -af -af -af -af -af -af -af -ag -bf -ce -cK -dq -dQ -ex -ex -fO -gA -hu -gA -gA -hp -kd -gA -lB -mp -dO -ns -nU -oq -oQ -py -pV -nS -qV -rp -rp -rp -rp -rp -af -af -af -am -dX -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -am -am -af -af -af -af -fq -af -af -af -af -fq -af -af -af -af -af -af -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ae -aj -aj -aj -ai -yg -yg -yg -yg -yg -ai -ae -ae -ae -aj -tI -tI -aj -aj -ae -ae -wQ -wQ -ai -yg -za -ai -wS -wQ -aj -aj -ai -aj -aj -aj -aj -wS -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wS -tI -ii -ii -ii -ii -tI -tI -ii -ii -tI -tI -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -ag -am -af -af -af -af -af -ko -Fg -Fj -am -ao -af -am -af -af -af -dX -af -af -dX -dX -Ia -Gq -Gq -Ix -GP -Jw -JP -JP -Km -JP -KO -KV -GP -ac -ac -ac -ac -ac -ac -ac -"} -(55,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -am -af -af -af -af -af -af -af -bf -cf -cL -dr -cd -cd -dp -dP -dO -hv -hv -hv -hv -dO -dP -lE -mq -dO -nt -nN -nN -nN -nN -pW -qv -qW -rs -rM -Zj -Zj -af -fq -af -af -af -af -ko -am -af -af -af -af -af -af -af -ak -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -fq -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -am -af -af -af -af -af -am -af -af -af -af -ae -ae -ae -aj -an -xS -ai -yf -yf -za -yg -yg -ai -aj -ai -aj -aj -AS -tI -Bc -aj -ae -wS -wS -wS -ai -yf -yt -ai -wS -wS -aj -tI -Ch -tI -tI -tI -tI -wS -ai -wS -wS -aj -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -ii -ii -Dn -tI -tI -wS -wS -tI -tI -tI -tI -wS -wS -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -ag -af -am -af -ko -Fh -Fj -af -af -af -af -af -af -af -ak -af -dX -dX -oa -Ia -Gq -II -IY -Go -Jx -KP -KP -Kn -KP -KP -KT -Go -ac -ac -ac -ac -ac -ac -ac -"} -(56,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -ao -af -af -af -af -af -bf -cg -cM -ds -dR -ey -cd -fP -gE -hw -hX -iI -jA -ke -kQ -lF -mr -mQ -nu -nV -or -oR -nt -pX -qw -qX -rs -rN -si -oW -am -af -am -af -dX -dX -ko -af -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -af -am -af -af -af -af -af -af -ak -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -fq -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -ag -ae -ae -ae -aj -ii -ii -yb -an -yf -yt -yf -ai -ai -aj -Al -tx -aj -aj -Bc -Bc -wS -ae -wS -wS -wS -BJ -xL -ys -BU -an -wS -aj -wS -wS -wS -tI -tI -tI -tI -Ch -tI -tI -aj -wQ -wQ -ae -ae -wQ -wQ -wQ -ae -ae -ae -ae -ae -aj -aj -aj -wS -ai -wS -aj -wS -wS -tI -tI -ii -ii -tI -tI -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -ko -Fg -Fj -af -af -af -af -af -af -am -af -af -af -dX -dX -Ia -Ix -Gq -Gq -Go -Jx -KP -KP -KP -KP -KP -KT -GP -ac -ac -ac -ac -ac -ac -ac -"} -(57,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -af -af -af -ao -af -af -bf -ch -cN -dt -dS -ez -fj -fQ -gF -fQ -hY -hY -fQ -hY -hY -lG -hx -mt -nv -nV -iJ -iJ -nt -pY -pV -qY -oW -oW -oW -oW -ag -af -af -af -dX -dX -ko -af -af -af -af -af -af -fq -af -af -am -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -al -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -ag -af -ae -ae -ae -ae -wQ -wS -tI -tI -yc -yn -yH -zc -an -an -zM -ii -tx -tx -tx -aj -tI -AS -wS -wS -wS -tI -wS -Bv -BN -BS -BV -an -BZ -Ce -wS -wS -wS -wS -tI -tI -tI -tI -tI -tI -aj -wS -ai -wS -wS -wS -wS -wS -wQ -wQ -wQ -ae -ae -ae -ae -ae -wQ -wQ -wQ -ae -wQ -wS -aj -aj -tI -tI -tI -tI -tI -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ko -Fh -Fj -af -af -af -ao -af -af -af -am -af -af -af -ae -FZ -Iy -Iy -Iy -Go -Jy -KP -KP -KP -KP -KP -KU -GP -ac -ac -ac -ac -ac -ac -ac -"} -(58,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -ak -af -af -af -af -af -bf -ci -cO -du -dT -eA -cd -fR -gG -hx -gI -iJ -gI -gH -kR -lH -ms -mt -nw -nW -iJ -oS -nt -pZ -qx -qZ -ru -rO -rN -Zj -am -am -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -ak -af -af -am -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -wS -wS -ii -tI -yd -yo -yI -zd -an -ii -ij -tI -tI -tI -tx -tx -tI -wS -wS -wS -tI -tx -tI -ii -ii -ii -ii -ii -Ca -Ca -aj -aj -wS -wS -tx -tx -tx -tI -tI -tI -Cj -tI -Cm -tI -tI -tI -tI -aj -wS -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -AT -tI -tI -ii -ii -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -ko -Fh -Fj -am -af -af -af -af -af -af -af -af -ae -ae -ae -Go -Go -GP -GP -GP -Jx -KP -KP -KP -KP -KP -KT -GP -ac -ac -ac -ac -ac -ac -ac -"} -(59,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ag -af -af -af -af -af -af -af -ag -bf -cj -cP -dv -ch -eB -fk -fR -gH -gH -gH -gH -gJ -kf -iJ -lI -mt -hx -nx -nW -ot -oT -nN -qa -qy -ra -rs -rN -rN -Zj -am -am -af -af -dX -af -ko -af -af -af -ao -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -am -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -vH -am -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -fq -af -af -ae -ae -ae -ae -ae -ae -wS -wS -an -ii -tI -wS -wS -yJ -zd -an -ii -tI -tI -tI -tI -tI -tI -tI -wS -ai -wS -tI -tx -tx -tI -tI -tI -BW -tI -aj -aj -aj -aj -wS -wS -tx -tx -tx -tx -tI -tI -Ck -BW -Cn -Cp -tI -Cp -tI -tI -wS -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -ai -wS -wS -ii -ii -BX -ai -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ko -af -af -af -am -af -af -af -am -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -Go -Jx -KP -KP -KP -KP -KP -KT -GP -ac -ac -ac -ac -ac -ac -ac -"} -(60,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -af -af -af -af -af -af -af -af -af -bf -cj -cQ -dw -dU -dr -fl -fS -gI -gH -gI -gJ -gG -kg -kS -lH -kR -iJ -ny -nV -iJ -oU -nN -qb -qz -qY -oW -oW -rN -Zj -am -am -af -dX -dX -fq -ko -af -af -af -af -af -af -af -fq -af -af -af -af -fq -af -af -af -am -af -af -am -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -am -am -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -fq -af -af -af -af -mZ -ae -ae -ae -ae -ae -wQ -wS -an -an -ii -ii -wS -wS -yK -ze -an -ii -tI -ii -ii -ii -ii -ii -tI -ii -yb -ii -ii -tI -ii -ii -ii -ii -tI -BX -ai -wS -wS -aj -aj -aj -tx -tx -tx -tx -tx -tI -Ck -ii -tI -BW -ii -ii -tI -Cp -aj -aj -wS -wQ -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wS -tI -tI -tI -wS -wS -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -Fi -af -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -Go -Jz -JU -JU -Ko -JU -JU -TP -GP -ac -ac -ac -ac -ac -ac -ac -"} -(61,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -am -af -af -ak -bf -ck -cR -ds -dV -eC -cd -fT -gJ -hy -gH -iK -gH -hz -hy -lJ -mu -mR -nz -nX -ou -oV -nt -qc -qA -qZ -ru -rQ -rN -Zj -af -af -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -fq -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -am -am -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -am -ae -ae -ae -ae -tG -aj -aj -an -an -an -an -an -ii -tx -ii -ii -ii -ii -ii -tI -ii -ii -ii -ii -tI -tI -tI -ii -ii -ii -ii -ii -ii -ii -tI -tI -wS -wS -aj -aj -aj -tx -tx -tx -tx -tx -ii -Cj -ii -wS -wS -wS -wS -ai -Cu -tI -tI -wS -wQ -wQ -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wQ -wS -tI -tI -tI -tI -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -af -dX -dX -af -af -af -dX -dX -dX -ae -ae -ae -ae -ae -ae -ae -Go -Go -GP -GP -GP -Go -GP -Go -Go -ac -ac -ac -ac -ac -ac -ac -"} -(62,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -af -af -af -af -bf -cl -cS -dr -dW -eD -cd -fU -gK -hz -gG -iJ -gI -hz -gI -lK -ms -kf -nA -nY -ov -oV -nN -qd -qB -rb -rs -rN -rN -Zj -ag -af -af -af -lS -iY -sN -af -af -af -af -af -af -af -am -af -af -af -fq -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -am -af -af -af -af -ae -ae -ae -ae -aj -an -xk -xk -xC -xC -xk -xk -ii -tx -tI -tI -tI -tI -tx -tx -tI -tI -tI -tI -tI -tI -tx -tI -tI -tI -tx -tI -tI -ii -ii -tI -Cf -aj -aj -aj -aj -tx -tx -tx -tI -tI -ii -wS -wS -aj -wS -wS -wS -wS -tI -Cp -Cp -ai -aj -wS -wS -wS -wS -ae -ae -ae -wQ -wQ -wQ -ae -ae -wQ -wQ -wS -tI -ii -ii -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -Fm -te -dX -dX -ak -am -dX -te -Gs -tq -tq -tq -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(63,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -af -af -af -af -bf -bf -bf -bf -bf -bf -bf -fV -gL -hA -ib -iL -jB -iL -iL -lL -mv -hx -nA -fW -fW -oW -nt -qe -qC -oW -oW -oW -Zj -Zj -af -af -dX -af -ko -af -af -dX -af -af -af -al -af -af -af -af -af -af -am -af -af -af -af -af -af -af -fq -af -af -af -am -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -uq -ae -ae -ae -ae -ae -ae -ae -aj -xa -xl -xl -xl -xK -xl -xl -an -ii -ii -wS -tI -tx -tx -tx -tI -tI -tI -tI -ii -ii -ii -ii -ii -tI -tI -tI -tI -tI -tI -ii -tI -tI -ii -tI -ii -ii -tI -tI -ii -tI -BX -ai -wS -aj -tx -tx -tI -tI -tI -tI -ii -Cy -ii -ii -tI -tI -wS -ae -ae -ae -wS -wS -wS -ai -aj -wS -wS -wS -aj -ii -ii -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -Fn -Fs -Fx -FE -FI -FI -FE -Fx -Fy -GS -Ho -Ho -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(64,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ag -af -af -af -af -af -af -af -af -ag -af -af -fm -fW -fW -fW -fW -fW -fW -fW -fW -fW -fW -fW -fW -fW -jC -oX -pz -qf -qD -oW -af -ag -af -af -af -dX -lS -iY -sN -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -al -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -aj -xa -xl -xl -xl -xl -xl -xl -yp -ii -wS -wS -tI -tx -tx -tx -tI -tI -AT -tI -ii -an -an -an -ii -ii -ii -ij -tI -tI -tI -tI -tx -tx -tx -tI -ii -ii -AT -tI -tI -tI -tI -wS -wS -aj -tx -tx -tx -tx -tI -tI -tI -tI -tI -Cz -tx -tI -wS -aj -ai -aj -aj -tI -tI -Ch -ii -tI -tI -tI -ii -ii -tI -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -Fo -Ft -te -dX -af -af -dX -te -Gt -GT -Hp -Ho -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(65,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -af -af -af -ak -af -af -af -af -af -af -ag -af -af -af -af -am -jC -iM -kT -hB -mw -kT -iM -iM -jD -oW -oW -oW -oW -oW -af -ao -af -af -af -dX -ko -af -af -af -af -af -af -af -af -af -am -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -wQ -ai -xb -xl -xl -xl -xl -xl -xl -yq -ii -wS -wS -wS -tI -tx -Am -Az -wS -ai -wS -wS -wS -Bv -xT -an -xE -xL -xT -Az -Am -Am -tx -Cg -tx -tI -tI -tI -tI -ai -aj -wS -wS -wS -aj -ae -aj -aj -aj -wS -wS -wS -aj -tx -tx -tI -tI -CB -Cz -tx -tx -Al -aj -aj -tI -ii -tI -aj -aj -tI -tI -ii -Dn -tI -tI -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -Fp -Ft -te -dX -dX -af -dX -te -Gu -tq -tq -tq -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(66,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -ak -af -af -gM -hB -hB -iM -jD -ak -am -am -af -am -af -af -am -ag -ao -af -af -af -af -af -am -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -am -af -af -af -af -af -af -af -af -af -af -af -af -am -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -wQ -ai -xb -xl -xl -xl -xl -xl -xl -yq -an -ii -tI -tI -tI -tI -Am -Az -wS -wQ -wQ -wQ -wS -Bw -ys -ye -BI -BK -xM -Az -Az -Am -wS -ai -wS -wS -wS -aj -wS -wS -wS -wQ -wQ -wQ -ae -ae -ae -ae -ae -wQ -wQ -wQ -aj -tx -tx -tx -tI -vQ -CF -tx -tx -tx -aj -tI -tI -ii -tI -aj -aj -tI -tI -tI -ai -aj -aj -wS -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -Fq -Ft -te -te -dX -ao -dX -te -Gv -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(67,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -ak -af -ao -af -af -af -al -af -af -af -af -af -gN -ak -af -af -af -ag -am -am -af -ag -af -af -af -af -af -af -af -af -af -af -af -dX -dX -dX -ko -af -af -fq -af -ao -af -af -am -af -af -af -fq -af -am -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -af -af -tN -tN -tN -tN -tN -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -uq -ae -ae -ae -ae -ae -ae -wQ -wS -xa -xl -xl -xl -xl -xl -xl -yr -an -ii -ii -ii -ii -tI -Am -Az -wS -wQ -wQ -wQ -wS -ai -yt -yf -ai -aj -aj -aj -wS -wS -wS -wS -wQ -wQ -wQ -ae -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wQ -wS -wS -wS -ai -CA -tI -CG -vQ -Dc -ii -ii -ii -tI -wS -wS -aj -aj -aj -wS -wS -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -Fn -Fu -Fy -te -dX -af -dX -te -Gu -tq -tq -tq -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(68,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -ao -af -af -af -af -gN -ag -fY -fY -fY -fY -fY -fY -fY -fY -fY -dX -af -af -dX -dX -dX -dX -af -dX -dX -dX -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -am -am -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -af -af -tN -tN -tN -tN -tN -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -wQ -wS -xa -xl -xl -xl -xl -xl -xl -yp -an -an -an -an -an -zY -aj -wS -wS -ae -ae -wQ -wQ -ai -yu -yg -ai -ae -ae -ae -wQ -wQ -wQ -wQ -wQ -wQ -wQ -ae -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wQ -wS -wS -wS -wS -aj -aj -wS -wS -ai -Do -ii -Dd -tI -wS -ae -wQ -ae -ae -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -tq -Fp -Ft -te -dX -af -dX -te -Gw -GS -Ho -Ho -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(69,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -af -af -fX -gO -hC -ic -iN -hT -kh -kU -lM -mx -mS -Yn -dX -dX -af -af -dX -af -af -dX -af -af -af -af -lS -sN -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -al -af -af -af -af -fq -af -af -af -af -af -af -af -al -af -tN -tN -tN -tN -af -af -tN -tN -tN -tN -tN -af -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -wQ -wS -an -xp -xp -xD -xD -xp -xp -an -gT -an -an -an -an -zY -aj -wQ -wQ -ae -ae -ae -ae -ai -yg -yg -ai -ae -ae -ae -ae -wQ -wQ -wQ -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wQ -wS -tI -wS -wS -aj -tI -tI -tI -tI -tI -Dv -DF -ai -aj -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -Fp -Fz -Fx -FE -FI -FE -Fx -Fu -GT -Hp -Ho -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(70,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -af -ag -af -af -af -af -af -af -af -af -af -af -af -fY -gP -hD -id -iO -iW -ki -kV -lN -my -mT -Yn -dX -dX -af -af -dX -dX -af -af -af -af -af -af -ko -am -am -af -af -af -af -af -af -af -am -af -af -tA -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -tN -tN -tN -af -fq -af -tN -tN -tN -tN -tN -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -wQ -wS -aj -aj -an -an -an -an -an -an -an -zf -zf -zz -zN -aj -aj -ae -ae -ae -ae -ae -ae -ai -ai -ai -ai -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wQ -wS -tI -tI -tI -tI -tI -tI -tI -Dd -Cp -tI -Dd -tI -CF -tI -wS -vQ -vQ -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -tq -tq -tq -af -dX -af -dX -te -Gs -tq -tq -tq -tq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(71,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -am -af -af -af -ao -af -am -af -af -fY -gQ -hE -ie -iP -jF -kj -kW -id -ld -mU -fY -dX -af -af -af -fq -af -af -dX -af -af -af -af -ko -af -af -af -af -fq -af -af -am -af -af -af -af -am -af -af -af -af -af -fq -af -af -af -jc -af -af -af -am -af -af -af -af -tN -tN -tN -tN -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -uq -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wS -wS -xE -xL -xT -an -xE -yL -wS -wS -ai -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -aj -aj -aj -aj -aj -tI -an -vQ -DL -vQ -Dw -Ei -Dw -wS -wS -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -dX -dX -dX -dX -Fj -HI -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(72,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -fY -gR -hE -if -iQ -jG -kk -kX -ie -mz -mz -fY -af -af -ak -af -af -af -af -af -am -af -af -af -ko -af -af -af -af -af -am -am -af -af -af -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -af -af -af -af -fq -af -tN -tN -tN -tN -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wS -wS -xF -xM -xU -ye -ys -yM -wS -wQ -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -Dw -CG -an -Dw -an -Dw -an -vQ -an -CC -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -mZ -af -ak -af -af -af -Fj -Hq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(73,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -ak -af -af -af -af -ao -af -ag -fY -gS -hE -id -iR -jH -ie -kY -id -ju -mV -fY -ag -af -fq -af -af -dX -af -dX -af -af -af -lS -sN -af -af -af -af -af -am -am -af -af -fq -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -fq -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -wS -wS -ai -yf -yt -ai -aj -ae -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -CC -vQ -vQ -DM -wS -vQ -vQ -vQ -an -CC -CC -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -am -af -Hq -Hq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(74,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -fY -fY -fY -fY -iS -jI -id -kZ -lO -mB -mW -fY -af -af -af -af -af -af -af -af -af -af -am -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wQ -ai -yg -yu -ai -ae -ae -wQ -wQ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -CC -CC -an -DN -an -vQ -an -wS -aj -CC -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -iY -iY -FS -iY -FS -iY -Hr -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(75,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -af -ao -af -af -af -af -af -af -dX -fY -iT -jJ -ie -la -lP -mC -mX -fY -af -am -af -fq -dX -af -af -af -af -al -af -ko -af -fq -af -am -af -af -ak -af -af -af -af -af -af -fq -af -af -af -ak -af -af -af -af -fq -am -af -af -af -af -af -am -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -uq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ai -yg -yg -ai -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -CC -CC -Dp -an -an -an -wS -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -am -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(76,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -ao -af -af -af -ak -af -eE -eE -eE -eE -af -fY -iU -jH -id -id -lQ -id -ie -fY -nZ -af -af -af -af -af -dX -af -af -af -af -ko -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ai -ai -ai -ai -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -CC -DO -an -DP -CC -aj -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -ak -af -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(77,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -eE -fn -fZ -eE -af -fY -iV -jK -jK -lb -lR -hE -mY -nB -dX -af -af -af -af -af -af -af -af -am -lS -sN -af -af -af -af -af -al -af -af -af -af -af -ak -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -CC -CC -CC -DP -DX -DO -CC -an -an -an -an -CC -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -fq -af -af -ak -af -fq -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(78,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -dX -eF -fo -ga -eE -ag -fY -iW -jL -kl -lc -hE -jL -iW -nB -dX -dX -af -af -dX -af -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -am -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -am -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -an -CC -an -DY -Dp -CC -an -an -an -an -CC -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -al -am -af -af -af -mZ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(79,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -am -af -af -eE -fp -gb -eE -af -fY -iW -iW -iW -iW -iW -hE -hE -nB -oa -dX -dX -af -af -af -dX -am -af -af -ko -af -af -af -af -fq -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -am -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -uq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wQ -wQ -wS -aj -an -CC -Dp -DZ -an -CC -El -an -an -EE -CC -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -ag -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(80,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -eE -eE -eE -eE -af -fY -iX -jM -km -ld -iW -hE -hE -nB -dX -af -af -af -af -af -af -af -af -af -ko -af -af -af -af -af -am -af -af -af -af -af -af -fq -af -af -af -af -al -af -af -af -af -af -af -af -ak -af -af -al -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -wp -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wS -wS -an -Dx -CC -DH -DG -DH -CC -Em -Dp -an -EF -CC -AJ -Cr -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -am -af -af -fq -af -af -af -vH -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(81,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -ag -af -af -af -ag -dX -af -af -ak -af -fY -fY -fY -fY -fY -fY -fY -fY -fY -nZ -af -af -af -af -af -af -ak -af -lS -kt -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -fq -am -am -af -fq -af -af -af -al -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -am -af -af -am -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -Aa -Aa -Aa -Aa -Aa -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -vH -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -wS -an -an -Dy -PR -CX -CX -CX -OF -En -Es -Dp -EE -CC -zh -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -am -af -af -af -se -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(82,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -dX -af -dX -af -af -ag -af -af -af -af -ag -af -af -af -fq -af -dX -dX -af -af -af -ko -af -af -am -af -af -af -af -af -ak -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -am -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -uq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -zZ -Aa -zD -zD -AU -Aa -Aa -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -am -am -af -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -wS -an -Dp -Dz -DH -CX -Ea -Ef -DH -Eo -Et -Dp -EG -CC -zh -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -ag -ak -af -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(83,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -fq -af -af -fq -dX -af -af -af -dX -am -af -af -dX -af -af -af -af -dX -dX -af -af -af -ko -af -af -af -af -af -af -fq -af -af -fq -af -af -af -af -fq -af -am -af -af -af -am -af -af -af -am -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -ak -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -fq -mZ -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -Aa -zD -AA -zD -zD -zD -Aa -af -af -Aa -Aa -Aa -Aa -Aa -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -am -af -af -af -af -am -af -af -af -ag -am -af -ag -af -ae -ae -ae -CC -CC -CC -CC -CC -CC -CC -CV -CJ -CX -CC -CC -CC -CC -CC -CC -ET -zh -af -af -Cq -af -ae -ae -ae -Ct -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -vH -af -af -am -af -am -af -ak -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(84,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -am -af -af -af -af -fq -af -af -af -af -af -af -am -af -af -af -af -af -am -af -ko -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -jc -af -ak -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -fq -am -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -fq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -Aa -zD -zD -AI -zD -zD -Aa -af -zZ -Aa -zD -zD -AV -Aa -Aa -ae -ae -ae -ae -eM -af -af -mZ -af -af -af -af -af -fq -af -af -am -af -af -af -am -af -af -Co -af -af -AJ -CC -CH -CH -De -CH -CH -DH -CX -Eb -Ef -DH -CH -Eu -Ez -EH -EN -CC -zh -af -af -af -af -ag -zh -Cv -Cv -EZ -Ct -ae -ae -ae -ae -ae -af -ag -af -af -af -am -af -af -fq -am -fq -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(85,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -fq -af -af -af -af -fq -af -af -af -fq -af -af -af -af -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -fq -af -af -af -fq -af -af -fq -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -am -af -ak -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -al -am -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -Aa -zD -zD -zD -zD -zD -Aa -am -Aa -zD -zD -zD -zD -zD -Aa -af -af -ao -yv -af -af -ak -af -af -af -fq -af -af -af -af -af -af -fq -ak -am -af -fq -af -af -af -af -zh -CC -CI -CT -Df -Di -DA -DI -DQ -Ea -CX -Ej -Ep -Di -Di -Di -EO -CC -AJ -af -Cw -af -af -af -zh -zh -Cv -Ct -Ct -ae -ae -ae -ae -af -af -af -am -af -af -am -af -af -af -af -af -am -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(86,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -dX -af -af -am -ko -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -al -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -fq -am -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -fq -mZ -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -Aa -Aa -zD -zD -zD -Aa -Aa -af -Aa -zD -zD -AI -zD -zD -Aa -ag -af -af -yv -af -af -af -af -am -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -zh -CC -CJ -CU -Dg -Dq -DB -DJ -DR -Dq -Eg -Ek -DR -DB -EA -EI -EP -CC -zh -af -af -af -af -af -zh -zh -zh -zh -zh -af -af -ag -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -fq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(87,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -dX -af -af -af -ko -af -af -af -al -af -af -af -af -af -fq -af -af -af -ak -af -af -af -af -am -fq -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -fq -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -Aa -Aa -zD -Aa -Aa -af -af -Aa -zD -zD -zD -AA -zD -Aa -af -af -af -yv -am -af -fq -af -af -af -af -af -af -am -af -fq -Co -af -af -af -af -Co -af -af -am -af -AJ -CC -CK -CV -Dh -Dr -DC -DK -DC -DC -DC -Ej -Eq -Ev -EB -EJ -EH -CC -zh -af -Co -Co -af -af -af -zh -zh -zh -zh -af -af -ak -af -af -fq -am -af -af -af -al -ak -am -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(88,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -am -af -af -af -af -af -am -af -af -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -am -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -am -af -ae -ae -ae -ae -ae -af -yv -ae -ae -af -ag -af -Aa -zD -Aa -af -af -ag -Aa -Aa -zD -zD -zD -Aa -Aa -af -af -am -yv -af -af -af -af -fq -af -af -af -fq -af -af -af -af -am -af -af -am -af -af -af -af -af -zh -CC -CL -CW -Di -Ds -Di -CC -CX -Ec -CX -CC -Di -Ew -Ep -EK -EQ -CC -ag -af -af -af -af -af -af -zh -zh -zh -zh -af -am -af -af -am -af -af -af -fq -af -af -af -af -af -eM -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(89,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -af -af -af -af -af -fq -af -dX -dX -af -af -af -af -ko -fq -af -af -af -af -am -af -af -af -af -af -af -af -fq -af -am -af -af -af -af -af -af -af -af -al -af -af -fq -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -fq -af -af -af -af -am -af -af -fq -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -ag -af -af -af -ag -am -yv -af -ag -af -af -af -Aa -Ao -Aa -af -af -af -af -Aa -Aa -zD -Aa -Aa -af -af -af -af -yv -yv -af -am -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -Cw -af -af -af -af -CC -CM -CX -Dj -Dt -DD -CC -DT -Ed -DT -CC -Er -Ex -EC -Dk -ER -CC -af -af -ao -af -af -af -af -af -zh -zh -zh -af -af -af -af -am -af -af -af -af -af -af -af -vH -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(90,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -fq -af -af -am -af -af -af -af -dX -dX -af -af -af -af -ko -af -af -fq -af -af -af -af -ak -af -af -af -af -af -af -af -af -af -af -af -al -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -am -af -af -af -af -af -af -af -af -af -fq -am -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -fq -af -am -af -af -af -af -af -yv -af -af -fq -af -am -AB -AJ -zs -af -am -af -af -af -Aa -zD -Aa -af -ag -af -fq -af -af -yv -af -af -af -am -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -Ct -af -af -CC -CN -CY -Dk -CC -CC -CC -DU -DU -DU -CC -CC -CC -ED -EL -ES -CC -af -af -Ct -Ct -af -af -af -af -zh -zh -zh -af -af -af -fq -af -af -af -fq -af -am -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(91,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ah -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -ko -af -af -af -af -af -ak -af -af -af -af -fq -af -af -af -af -fq -af -af -af -af -af -af -fq -af -af -fq -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -fq -af -af -al -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -ao -af -yv -yv -af -af -af -af -af -AB -zh -zs -af -af -af -am -af -Aa -Ao -Aa -af -af -af -af -ao -af -yv -yv -af -af -af -af -fq -ak -af -af -am -af -af -af -af -af -Cq -af -af -af -zh -af -ag -CC -CO -CZ -CZ -CD -AJ -CC -DV -Ee -Eh -CC -AJ -CC -CH -EM -CH -CC -zh -af -Cv -zh -af -ao -af -af -af -zh -zh -af -am -af -af -am -af -af -af -af -af -af -af -af -af -fq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(92,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ai -aj -aj -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ae -ae -ig -iY -iY -kn -af -af -af -af -af -af -af -dX -dX -dX -af -af -af -af -ko -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -fq -af -af -af -af -af -af -am -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -am -af -af -af -yv -af -af -am -af -ak -ao -AB -zh -zh -zA -zA -zr -af -af -AB -AJ -zs -af -af -am -ak -af -af -af -yv -fq -am -af -af -af -af -am -af -af -fq -af -af -vH -af -af -am -af -af -zh -af -ao -CD -CP -CP -CP -Du -DE -zh -zh -AJ -zh -zh -zh -CD -CP -CP -CP -CC -AJ -af -zh -zh -af -Ct -af -af -af -zh -zh -af -af -af -fq -af -af -am -af -af -af -af -fq -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(93,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -ap -as -ap -ap -aj -aj -ap -ap -ap -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -af -ko -af -af -af -af -af -af -af -dX -dX -dX -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -fq -af -af -fq -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -am -af -af -af -af -af -af -af -fq -ak -am -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -am -af -yv -zg -zr -af -af -af -An -zh -zh -zB -zB -Bg -zh -zA -zA -zh -zh -zs -af -af -af -zF -af -fq -af -yv -af -am -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -zh -af -af -CE -CQ -Da -Dl -AJ -zh -DE -zh -zh -zh -DE -AJ -Ey -CQ -Da -Dl -CC -zh -Cq -zh -zh -af -zh -Cr -af -ao -zh -zh -af -af -af -af -af -af -af -af -am -af -af -af -ag -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(94,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -an -ap -aj -ap -ap -ap -ap -ap -ap -aj -as -dx -dx -eG -eG -ap -ai -ai -ai -ai -af -kp -af -af -af -af -af -dX -af -af -dX -dX -dX -dX -af -lS -kt -af -al -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -tF -tF -tF -tF -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -yN -yN -zh -zA -zA -Ab -zB -zB -zO -af -af -af -Bn -zB -zh -zh -zh -BL -af -am -af -af -af -af -af -yv -af -tF -tF -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -zh -af -af -AJ -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -AJ -zh -zh -af -zh -zh -af -zh -af -af -af -zh -af -af -af -af -af -am -af -af -fq -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(95,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -an -an -an -aj -aj -an -an -aj -an -ap -ap -ap -eG -eG -ap -ap -as -ih -iZ -dX -ko -af -dX -af -af -af -af -af -af -af -af -dX -dX -af -kp -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -tF -tF -tN -af -af -tN -tN -tN -tN -tN -tN -tN -fq -tF -tF -tF -tF -af -ak -af -af -af -af -af -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -yN -zh -zh -zB -zO -af -af -af -af -af -af -tF -af -af -Bn -zh -zh -zs -af -af -af -af -am -af -af -tF -tF -tF -af -af -fq -af -af -af -fq -af -af -ao -af -Cr -Ct -Ct -Ct -af -Cq -Co -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -zh -af -zh -af -af -af -af -af -am -af -af -fq -af -af -af -af -af -af -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(96,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -aj -at -an -an -an -an -an -aj -an -cT -an -an -eH -an -ap -gT -an -ii -ii -dX -kq -dX -dX -af -dX -af -af -dX -af -af -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -fq -af -am -af -af -af -af -af -tF -tF -tF -tF -tN -tN -tN -tN -tN -tN -tN -af -af -tN -af -tF -tF -tF -tF -tF -af -af -af -af -fq -af -am -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -ao -af -am -af -yN -yN -zs -af -af -af -af -af -af -fq -af -tF -tF -tF -af -AB -zh -zs -af -fq -tF -tF -af -af -tF -tF -af -af -af -af -af -af -af -af -am -af -af -af -af -af -Ct -Cv -zh -af -af -af -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -zh -af -zh -af -af -af -af -af -af -af -af -af -af -am -af -af -af -fq -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(97,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -an -an -an -an -an -aj -aj -aj -aj -aj -at -an -an -cT -an -an -an -ij -ja -dX -ko -af -dX -af -af -af -af -af -af -af -af -af -dX -af -ks -af -af -am -af -af -af -am -af -af -al -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tF -tF -tF -tF -tF -tN -tN -af -af -af -tN -af -af -tN -tN -tF -tF -tF -tF -tF -af -fq -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -ao -af -yv -zi -zh -tF -tF -ag -am -af -af -af -am -tF -tF -tF -af -AB -zh -zs -af -af -tF -tF -tF -tF -tF -tF -tF -af -am -af -af -af -fq -af -af -af -Co -af -af -af -zh -zh -zh -Cr -af -af -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -zh -af -zh -af -af -am -af -af -af -af -af -af -af -vH -af -af -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(98,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -aj -aj -an -an -aj -aj -aj -aj -aj -aj -an -an -eI -an -an -an -an -ij -jb -dX -kr -dX -af -af -dX -dX -af -af -af -af -af -af -af -af -ko -af -af -af -af -ao -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -fq -af -af -fq -af -tF -tF -tF -tF -tF -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tF -tF -tF -tF -tF -af -af -am -af -af -af -af -ak -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -am -af -af -yv -ag -zt -zu -zu -zu -zu -af -af -tF -tF -tF -tF -tF -tF -tF -zh -zs -af -am -tF -tF -tF -tF -tF -tF -tF -af -af -af -af -af -af -af -ak -af -af -af -af -ao -zh -zh -zh -af -af -ao -Co -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -zh -af -zh -af -af -af -am -af -af -am -af -af -af -af -af -am -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(99,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -aj -an -an -an -at -an -an -aj -an -an -an -cT -an -eH -an -gT -an -ii -ii -dX -ks -af -af -af -af -dX -af -af -af -af -af -af -fq -af -kq -af -af -ak -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tF -tF -tF -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -tF -tF -tF -af -af -af -af -af -af -af -fq -af -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -yv -yv -af -zu -zC -zP -Ac -zu -ag -af -tF -tF -tF -tF -tF -tF -tF -zh -zs -af -tF -tF -tF -tF -tF -tF -tF -tF -af -fq -af -am -af -af -af -af -am -af -af -af -af -zh -zh -zh -af -af -af -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -Cw -zh -zh -af -zh -af -Co -af -af -ak -af -af -fq -af -ak -af -af -af -af -fq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(100,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -an -an -aj -an -aj -aj -an -an -an -ap -ap -ap -eG -eG -ap -ap -au -ik -iZ -dX -kr -dX -af -dX -af -af -af -af -af -af -af -af -af -af -ko -af -am -am -af -af -af -af -af -am -af -af -af -af -am -af -af -af -am -af -af -af -af -af -af -af -af -af -af -tF -tF -tF -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -fq -af -am -af -af -af -af -af -af -af -am -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -am -yv -af -tF -zu -zD -zD -zD -zu -af -af -af -tF -tF -tF -tF -tF -zh -zh -zs -af -tF -tF -tF -tF -tF -tF -tF -tF -af -am -af -af -fq -af -am -af -af -af -am -af -af -zh -zh -zh -af -af -Ct -af -zh -CR -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -ao -af -zh -zh -af -zh -af -af -af -af -Cw -af -af -af -af -Fa -af -af -fq -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(101,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -ap -aj -ap -ap -aj -aj -ap -ap -aj -cU -dy -ap -eG -eG -ap -ai -ai -ai -ai -af -kp -af -af -af -af -ak -af -am -af -af -af -al -af -af -kp -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -fq -af -af -af -af -af -af -af -af -af -af -af -fq -af -fq -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -am -af -ao -af -yv -af -tF -zu -zE -zQ -zD -Ao -ag -af -ao -tF -tF -tF -tF -tF -zh -zh -tF -tF -tF -tF -tF -tF -tF -tF -tF -tF -af -af -af -af -af -af -af -fq -af -af -af -af -af -zh -zh -zh -af -af -zh -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -af -zh -zh -af -zh -af -af -Cq -af -af -af -af -af -fq -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(102,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -aj -aj -aj -ap -au -ap -ap -ap -ap -ap -ap -aj -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -jN -ko -af -fq -af -af -af -af -af -fq -af -af -lS -iY -iY -kt -af -fq -am -af -af -af -af -ao -af -af -af -ao -af -af -af -af -af -af -af -af -af -ao -af -af -af -fq -af -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -fq -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -fq -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -am -af -yv -tF -tF -zu -zu -zu -zu -zu -af -af -af -tF -tF -tF -tF -zh -zh -zh -tF -tF -tF -tF -tF -tF -tF -tF -tF -af -af -af -af -af -af -af -af -af -af -af -af -af -af -zh -zh -zh -af -af -zh -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -af -zh -zh -af -zh -af -af -af -af -af -af -af -af -am -am -af -af -af -am -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(103,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ai -ai -aj -ai -ai -ai -aj -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ae -ae -ae -ig -iY -kt -af -af -af -af -af -af -af -af -af -af -ko -af -af -am -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -af -ao -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -am -af -af -af -ak -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -af -af -af -af -fq -tN -tN -tN -tN -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -tF -tF -tF -ag -af -af -ag -af -af -fq -af -af -af -af -af -AB -zh -zh -tF -tF -tF -tF -tF -tF -tF -tF -tF -tF -tF -af -am -af -af -af -af -af -af -af -Cq -am -af -zh -zh -zh -af -af -zh -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -Cs -af -zh -zh -af -zh -af -af -af -am -am -af -af -af -af -fq -af -af -af -fq -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(104,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ai -ai -ai -ai -aj -aj -ai -ai -ai -ai -ai -ai -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -fq -af -af -af -af -am -af -af -af -af -af -af -ko -am -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -ak -am -af -af -af -af -am -af -af -af -af -af -af -af -am -af -af -af -af -tq -tT -tW -tW -tW -ua -ua -ua -tT -uv -tq -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -am -af -af -am -af -af -af -af -af -am -af -af -af -af -fq -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -fq -af -af -yv -af -af -af -am -af -af -af -af -af -af -An -zA -zA -zA -Bd -zh -zh -tF -tF -tF -tF -tF -tF -tF -tF -tF -af -af -af -ao -af -af -am -af -af -am -af -af -af -af -zh -zh -zh -ao -af -zh -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -zh -af -zh -af -af -af -af -af -af -af -af -af -am -af -am -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(105,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -al -af -af -af -fq -af -af -am -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ak -af -ao -af -af -am -af -af -dX -te -te -te -te -ua -ua -ua -te -dX -dX -af -af -af -am -af -af -af -am -af -af -ao -af -af -af -af -ao -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -am -af -yv -yv -af -fq -af -af -af -am -af -An -zA -Bd -zh -zh -zB -zB -zh -zh -tF -tF -tF -tF -tF -tF -tF -tF -tF -af -am -af -af -af -af -af -ao -af -af -af -af -af -af -zh -zh -zh -af -af -zh -Cs -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -zh -af -zh -af -af -af -af -am -af -af -fq -af -af -af -af -af -af -fq -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(106,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -af -af -fq -af -af -af -af -af -ko -af -af -af -fq -af -af -af -al -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -fq -af -af -af -am -af -af -af -af -af -af -af -af -dX -te -te -te -ua -ua -ua -te -te -te -dX -af -af -ao -af -af -af -af -af -af -am -af -af -af -af -af -af -am -af -am -af -af -af -fq -am -af -af -af -af -af -am -af -af -af -fq -af -af -tN -tN -tN -tN -tN -af -al -af -am -af -af -af -af -af -af -yv -af -af -af -am -ao -af -An -zh -zh -zB -zB -zO -am -af -AB -zh -zh -zr -af -tF -tF -tF -am -af -yv -af -af -af -af -af -af -af -af -af -ak -af -af -af -af -zh -af -af -af -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -zh -af -af -Co -am -af -af -af -af -af -af -af -al -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(107,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ak -af -af -af -af -af -af -af -af -af -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -fq -af -af -af -af -af -af -af -af -af -am -af -af -ao -af -dX -te -te -te -ua -ua -te -te -te -te -dX -af -am -af -af -af -af -af -ao -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -am -af -af -fq -af -af -fq -af -am -af -af -am -am -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -am -yv -af -af -af -af -af -af -AB -AJ -zs -af -af -af -af -af -AB -AJ -zh -zh -zA -zr -af -af -af -fq -yv -yv -af -ao -af -am -af -am -af -af -af -af -af -Cs -af -af -af -af -af -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -af -zh -af -af -af -am -af -af -af -af -af -af -af -af -af -af -af -fq -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(108,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -lS -iY -iY -kt -af -af -af -af -af -af -af -af -am -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -dX -te -te -te -ua -ua -ua -ua -te -te -dX -af -af -af -af -am -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -am -af -af -af -af -af -af -af -af -af -fq -af -af -af -fq -af -af -af -fq -af -af -af -af -ao -af -yv -yv -af -af -am -af -af -Aa -Ao -Aa -ag -af -fq -ak -ag -Aa -Ao -Aa -zB -zB -zh -zr -af -af -An -yN -yv -af -af -af -af -af -af -am -af -af -af -af -zh -af -af -Ct -af -af -af -zh -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -CR -zh -zh -zh -af -af -af -af -af -af -af -af -af -af -fq -af -am -af -af -af -af -af -af -af -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(109,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -fq -af -af -af -af -ko -af -af -al -af -af -am -ak -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -fq -af -am -af -af -af -af -af -af -am -af -af -af -fq -af -af -af -tq -tU -tX -tX -ua -ua -ua -ua -tU -uC -tq -af -ak -af -af -af -af -af -af -af -af -af -ak -af -af -af -fq -af -af -fq -af -ag -af -af -ag -af -fq -af -af -fq -af -am -af -af -af -fq -af -af -am -af -af -af -af -am -af -af -af -af -am -af -af -af -af -yv -af -zF -af -ag -af -Aa -zD -Aa -af -af -af -am -af -Aa -zD -Aa -af -af -Bn -zB -zA -zA -zh -yN -yN -af -af -ak -af -af -af -af -af -af -am -af -zh -Cq -af -zh -af -af -af -zh -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -af -af -ao -af -af -af -ak -af -af -af -am -af -af -vH -af -am -af -af -fq -af -af -af -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(110,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -fq -af -af -af -am -lS -iY -iY -kt -af -af -af -ak -af -af -af -af -af -al -af -af -af -af -af -fq -af -af -af -af -af -af -al -af -am -af -af -af -af -af -af -ak -af -af -af -am -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -fq -af -af -af -am -af -af -ae -ae -ae -ae -ae -af -af -ag -af -af -af -mZ -af -af -af -af -af -jc -af -sf -af -af -af -af -af -am -af -af -af -af -af -af -am -yv -af -af -af -af -Aa -Aa -zD -Aa -Aa -af -ag -af -Aa -Aa -zD -Aa -Aa -ag -af -af -Bn -zh -zh -zh -yN -af -af -ao -am -af -ao -af -af -af -af -af -zh -af -af -zh -af -af -af -zh -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -Co -af -af -af -af -af -ao -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -fq -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(111,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -af -ak -af -ko -af -af -af -af -af -af -af -af -af -af -af -ak -af -am -am -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -am -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -fq -af -af -af -af -fq -am -af -af -af -af -af -af -af -am -am -af -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -mZ -af -af -af -sf -wF -af -af -af -fq -af -af -af -af -af -af -fq -af -yv -yv -af -af -af -zZ -Aa -zD -zD -zD -Aa -Aa -af -zZ -Aa -zD -zD -zD -Aa -Aa -af -am -af -Bn -zh -yN -yN -af -af -af -af -af -af -af -af -af -af -af -af -af -af -zh -af -af -af -af -Cr -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -af -af -af -af -af -am -af -af -af -af -af -fq -af -af -af -af -af -af -am -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(112,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -am -af -lS -iY -iY -kt -af -af -fq -af -af -af -af -af -am -af -af -af -af -am -am -af -af -af -af -af -af -af -fq -am -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -fq -af -af -af -af -af -af -fq -am -af -vO -af -af -ai -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -wB -wC -af -af -am -af -af -af -am -af -fq -af -af -af -af -yv -af -am -af -ag -Aa -zD -zD -zD -zD -zD -Aa -af -Aa -zD -AA -zD -zD -zD -Aa -af -af -ak -af -Bn -yN -yv -af -ao -af -am -af -af -af -af -ao -af -af -am -af -af -zh -af -Co -af -af -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -af -af -af -af -af -af -af -am -af -af -af -af -af -am -am -af -af -fq -am -af -af -fq -am -af -al -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(113,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -ko -fq -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -fq -af -af -af -af -af -ak -af -tN -tN -tN -tN -tN -tN -tN -am -af -af -af -af -af -af -af -af -af -af -af -af -ag -tG -vV -vV -vV -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -ag -af -af -af -ag -af -af -af -ag -af -yv -af -af -af -af -Aa -zD -AA -AI -zD -zD -Aa -am -Aa -zD -zD -AI -zD -zD -Aa -ag -af -fq -am -af -yv -yv -af -af -af -af -af -af -am -af -af -af -af -am -af -af -zh -af -af -af -Cq -af -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -ao -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -ak -af -ak -af -af -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(114,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -ko -af -af -af -af -af -af -af -af -af -af -af -af -af -af -fq -af -af -af -fq -af -af -ak -af -af -af -af -af -af -ak -af -af -af -fq -af -af -af -af -af -af -af -af -af -fq -af -am -af -af -tN -tN -tN -tN -tN -tN -tN -af -fq -am -af -af -af -fq -af -am -ag -ae -ae -ae -ae -aj -tI -vZ -tI -tI -tI -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -yv -af -af -fq -af -Aa -zD -zD -zD -zD -zD -Aa -am -Aa -zD -zD -zD -zD -zD -Aa -af -af -af -ag -af -yv -af -af -af -af -af -af -af -af -af -af -af -Cr -af -af -af -zh -af -af -af -af -af -AJ -zh -zh -zh -AJ -zh -zh -zh -AJ -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -Ct -af -af -EY -af -af -af -fq -af -af -af -af -af -af -af -af -af -am -fq -am -af -am -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(115,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ku -iY -kt -af -al -af -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 -am -af -af -af -af -af -af -af -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -af -af -al -af -ag -ae -ae -ae -ae -ae -ae -ae -aj -tI -tI -tI -wa -vZ -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -am -af -yv -ag -af -af -af -Aa -Aa -zD -zD -AV -Aa -Aa -af -Aa -Aa -zD -zD -BM -Aa -Aa -ae -ae -ae -ae -ae -yv -af -af -af -af -ao -af -af -af -af -ag -af -af -af -ag -af -zh -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -zh -zh -zh -zh -zh -zh -zh -zh -zh -af -zh -af -af -af -af -af -af -af -af -am -am -af -fq -af -af -fq -af -af -af -am -sf -FF -af -am -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(116,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -am -af -af -af -al -af -af -af -af -af -af -af -tr -af -af -ag -af -af -af -fq -af -af -af -af -af -ag -af -af -af -af -af -af -af -ag -af -af -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -eM -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tI -wa -tI -tI -tQ -tI -tI -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -Aa -Aa -Aa -Aa -Aa -af -ag -af -Aa -Aa -Aa -Aa -Aa -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -zh -AJ -zh -zh -AJ -zh -zh -zh -af -ag -zh -af -af -af -af -fq -af -af -fq -af -af -af -af -am -af -af -am -am -Fr -am -FA -sf -am -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(117,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -af -am -af -af -af -af -af -af -af -af -af -fq -af -af -af -af -af -ae -ae -ae -ae -ae -af -af -ag -af -ak -af -af -ae -ae -ae -ae -ae -ag -ae -ae -ae -ae -ae -ag -af -af -tN -tN -tN -tN -tN -tN -tN -tN -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -vZ -tI -vJ -tI -tI -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -mZ -am -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -zh -af -af -ag -af -af -af -ag -af -af -af -ag -af -am -af -af -af -af -af -sf -FB -am -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(118,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -fq -af -af -af -af -af -af -af -af -af -af -af -af -af -af -af -ak -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -ja -af -tN -tN -tN -tN -tN -tN -ag -am -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -wg -wh -tI -tI -wk -wk -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ak -af -af -af -af -vH -af -af -fq -ak -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(119,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -ak -af -af -af -af -af -af -fq -af -af -af -af -am -af -af -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tx -tx -tx -tx -tS -tx -tx -tx -tS -tG -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -aj -aj -aj -vQ -wh -wk -wk -wm -tI -wl -vQ -aj -ae -aj -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -fq -af -am -af -af -af -af -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(120,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -af -af -af -am -af -af -af -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -vP -vQ -vP -aj -aj -aj -vQ -wi -wk -wm -ii -tI -wq -wj -aj -aj -aj -wt -vQ -vQ -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ag -af -af -af -af -af -fq -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(121,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -mZ -af -af -af -af -af -af -af -af -af -af -af -af -ag -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -aj -aj -aj -aj -ae -ae -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -vQ -vQ -vQ -vQ -aj -aj -aj -aj -aj -tI -tI -tI -tI -tI -tI -tI -aj -wu -vQ -ww -wv -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -fq -af -ag -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(122,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -al -af -am -af -af -af -af -fq -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tx -tx -tx -tx -tx -tx -aj -ae -ae -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -vP -vW -vQ -vQ -wf -aj -aj -aj -aj -aj -aj -aj -tI -aj -tI -tI -aj -vQ -ww -wy -ww -vQ -wA -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(123,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -af -af -af -af -af -af -ag -af -af -af -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -aj -tx -tx -tx -tx -tx -tx -aj -ae -ae -aj -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -vQ -vQ -vQ -vQ -aj -aj -aj -aj -aj -aj -aj -tI -aj -aj -tI -aj -wv -vQ -ww -vQ -vQ -wA -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(124,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -am -af -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -vQ -vQ -vP -aj -aj -aj -aj -aj -aj -aj -aj -aj -tI -tI -tI -wq -vQ -vQ -vQ -vQ -wA -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(125,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -af -af -ag -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -vQ -vQ -vQ -vQ -vQ -vQ -aj -aj -aj -aj -aj -aj -aj -aj -tx -tI -wl -vQ -aj -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(126,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -vF -vF -vF -ae -ae -ae -aj -aj -we -vQ -vQ -vQ -wj -vQ -wn -wn -aj -aj -aj -aj -aj -tx -tI -wl -vQ -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(127,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tx -ty -tx -tx -tx -tx -tx -tx -tx -tx -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -vF -vF -vF -vI -vF -ae -ae -ae -ae -aj -aj -vQ -vQ -wi -tI -wl -vQ -vQ -aj -aj -aj -aj -aj -aj -tI -wl -vQ -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(128,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -tx -tx -tx -tx -tx -aj -aj -aj -aj -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -vF -vF -vF -vF -vF -vF -ae -ae -ae -ae -ae -aj -aj -aj -aj -tI -wl -vQ -wo -tI -tI -aj -aj -aj -aj -tI -wl -wz -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(129,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -aj -aj -aj -ae -ae -ae -ae -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -vF -vI -vF -vF -vF -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -tI -tI -tI -tI -tx -tI -tI -tI -wl -wz -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(130,1,1) = {" -ac -ac -ac -ac -ac -ac -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -aj -tx -tx -tx -tx -tx -tx -tx -tx -tx -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -vF -vF -vF -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -aj -aj -aj -wr -ws -tx -tx -tI -tI -aj -aj -aj -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -ac -ac -ac -ac -ac -ac -ac -"} -(131,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -tE -tE -tE -tE -tE -tE -tE -tE -tE -tE -tE -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -tE -tE -tE -tE -tE -tE -tE -tE -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(132,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(133,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(134,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(135,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(136,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(137,1,1) = {" -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -"} -(138,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bg -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(139,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(140,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(141,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(142,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(143,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(144,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(145,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(146,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eK -eK -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(147,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eK -eK -eJ -eK -eK -eK -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tH -tH -oZ -oZ -tV -oZ -oZ -tH -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eL -eJ -eJ -eJ -eJ -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(148,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eK -eK -gc -il -gc -gd -eK -eJ -gc -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tH -tH -eJ -eJ -oZ -tH -oZ -oZ -oZ -tH -tH -vl -tO -tH -tH -tH -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -eJ -eJ -eJ -eL -eJ -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(149,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -gc -gc -gV -gV -gc -gc -eK -eK -eJ -eK -eK -eK -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eK -eJ -eJ -eK -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tH -oZ -oZ -tV -tH -tH -oZ -oZ -oZ -tL -oZ -oZ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oY -oZ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -fr -eJ -eL -eJ -eJ -eJ -eJ -fr -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -fr -fr -eJ -eJ -eL -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(150,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eK -eJ -gU -hF -im -gc -gc -gc -eK -gc -eK -eK -eK -eK -eK -eJ -eJ -eJ -eJ -eJ -eJ -oZ -gc -oZ -oZ -sX -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -tH -tO -oZ -tH -eJ -eJ -oZ -oZ -oZ -tO -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tL -oZ -tH -oZ -oZ -oZ -eJ -ge -ge -ge -eJ -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -fr -fr -fr -eJ -eL -eJ -fr -fr -fr -eJ -eJ -eJ -eL -fr -eL -fr -eJ -eJ -eJ -eJ -fr -eL -eJ -eJ -eL -eL -fr -fr -fr -eJ -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -ge -eJ -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(151,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eK -eK -gd -gc -gc -gV -gU -gV -gc -eJ -eK -gc -eK -eK -eK -eK -eJ -eJ -eJ -eK -eJ -eK -oZ -oZ -gc -oZ -gc -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tK -tH -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tH -tH -oZ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -gW -eJ -ge -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -eJ -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -eJ -fr -eL -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -eJ -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -gW -oZ -oZ -gW -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(152,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eK -eK -gc -gc -gV -gc -gc -jO -gc -gc -gc -gc -gc -eK -eK -gc -eK -eK -eJ -gc -gV -oZ -gc -oZ -oZ -gc -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tH -tH -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -oY -oZ -tm -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -fr -fr -eJ -eL -fr -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -eJ -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(153,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eK -eK -gc -gc -gc -gc -gc -gc -gV -gc -gc -gV -gc -gc -gc -eJ -eK -gc -gc -gV -oZ -gU -gc -gc -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tO -oZ -tH -tH -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eL -eJ -eJ -eJ -eJ -fr -eJ -eJ -fr -fr -fr -eJ -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eL -eJ -fr -eJ -eJ -eJ -eJ -eJ -fr -eJ -eJ -eL -eJ -eJ -eJ -fr -eJ -eJ -eL -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eL -eL -eJ -eJ -eJ -eJ -eJ -tp -tp -tp -tp -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -gW -gW -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(154,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eK -eK -gc -gc -gd -gV -gc -gc -eK -ge -gc -gc -gU -gV -gV -gc -gc -gV -gc -oZ -oZ -gc -oZ -oZ -gc -sY -sY -oZ -oZ -oZ -oZ -fr -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -uw -oZ -oZ -uP -eJ -eJ -eJ -tH -tH -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eL -eJ -eL -eL -eJ -fr -eL -eL -eJ -fr -fr -eL -eL -eL -eJ -fr -eJ -eJ -eL -eJ -eJ -fr -fr -fr -fr -fr -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eL -eJ -eJ -eJ -eJ -fr -fr -eJ -eL -eL -eJ -eJ -tp -tw -qi -qi -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -ge -gW -oZ -oZ -tm -oZ -gW -oZ -tm -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(155,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eK -ge -gc -gc -in -gc -gc -ge -ge -eK -gc -gc -ge -gc -gc -gc -gc -gV -gc -gc -gc -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -fr -fr -fr -fr -sY -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -sX -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oY -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -fr -eL -eL -fr -fr -fr -fr -fr -fr -fr -eL -eL -eL -fr -fr -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -eL -eJ -tp -qi -tt -qi -tp -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -Ci -eJ -eJ -Ci -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -ge -ge -ge -ge -gW -oZ -oZ -oZ -gW -gW -gW -oZ -oZ -oZ -gW -ge -ge -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(156,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -gc -gV -gU -gc -gc -gc -eK -ge -gc -gc -gV -eK -eK -gc -eJ -gc -gc -gU -gV -gc -oZ -gc -eK -oY -eJ -eJ -eJ -oZ -oZ -oZ -oZ -fr -fr -fr -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tH -oZ -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -eL -eL -fr -fr -fr -fr -eL -eL -eJ -eJ -eL -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -fr -fr -eJ -eL -tp -tp -tp -tp -tp -tv -tp -tp -tp -tp -tp -eJ -eJ -ge -ge -eJ -eJ -ge -ge -ge -oZ -ge -eJ -Ci -ge -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -gW -oZ -oZ -oZ -gW -gW -gW -oZ -oZ -oZ -oZ -ge -ge -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(157,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -gf -gc -gc -gV -gc -gc -gc -eK -lT -eK -eK -ge -gc -gc -gc -eK -qg -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eL -eL -oZ -oZ -oZ -fr -fr -fr -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -fr -fr -fr -fr -fr -fr -eJ -eL -fr -fr -eJ -eL -tp -qi -qi -tp -qi -qi -qi -tp -qi -tD -tp -eJ -eJ -eJ -ge -eJ -eJ -ge -ge -ge -Ci -ge -eJ -oZ -eJ -eJ -oZ -ge -eJ -EU -Ci -ge -eJ -eJ -oZ -eJ -eJ -eJ -eJ -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -gW -oZ -oZ -oZ -gW -gW -gW -oZ -oZ -oZ -gW -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(158,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eK -eK -eJ -gc -hF -im -gV -gc -eK -gc -eK -eK -eK -eK -ge -eK -ge -eJ -gc -oZ -gc -oZ -gc -eK -eJ -eJ -eJ -eJ -fr -eL -eL -eJ -eJ -eL -oZ -fr -fr -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -sX -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eL -eL -eJ -eJ -eJ -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eL -eJ -eJ -eL -fr -eL -eJ -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -tp -qi -tt -tv -qi -tt -qi -tv -tt -qi -tp -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -oZ -eJ -eJ -oZ -eJ -eJ -oZ -ge -eJ -ge -oZ -ge -ge -ge -oZ -ge -eJ -eJ -ge -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -gW -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(159,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eK -eJ -gc -gc -gc -gU -eK -eK -eK -eK -eK -ge -eK -eK -ge -eK -oZ -gc -oZ -oZ -oZ -eJ -eJ -eJ -eL -fr -fr -fr -fr -eJ -eJ -eJ -oZ -fr -fr -fr -fr -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -fr -eJ -eJ -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -tp -ts -qi -tp -qi -qi -qi -tp -qi -qi -tp -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -oZ -eJ -Cl -oZ -eJ -eJ -oZ -eJ -eJ -eJ -oZ -eJ -eJ -ge -oZ -ge -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -gW -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(160,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eK -eK -eK -gc -gc -gc -eK -eK -eK -eJ -eK -eK -ge -ge -eK -eJ -eJ -oZ -gc -oZ -gc -oZ -oZ -eL -eL -oZ -oZ -eL -fr -eL -eJ -oZ -oZ -fr -fr -fr -fr -oZ -oY -sY -oZ -oZ -sX -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -gW -eJ -eJ -eJ -tH -oZ -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oY -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -oZ -eL -eJ -oZ -oZ -fr -fr -fr -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -eJ -eJ -fr -fr -fr -fr -eL -eJ -eJ -eL -eJ -tp -tp -tp -tp -tp -tv -tp -tp -tp -tp -tp -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -oZ -oZ -qi -oZ -oZ -oZ -oZ -eJ -eJ -Cl -oZ -eJ -ge -ge -oZ -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -oZ -oZ -oZ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(161,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eK -eK -eK -eJ -gc -gd -eK -eK -eK -eJ -ge -ge -ge -ge -ge -eJ -eJ -eK -eJ -gc -oZ -gc -oZ -fr -fr -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -tm -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -fr -fr -fr -fr -fr -fr -eL -eL -eL -eL -eL -fr -fr -fr -eL -eL -eJ -eJ -eJ -gW -eJ -eJ -fr -fr -eL -eJ -eJ -eL -eJ -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -tp -qi -tt -qi -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -oZ -oZ -qi -oZ -oZ -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -gW -gW -ge -eJ -ge -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(162,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eK -eK -eK -eJ -ge -ge -eJ -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -oZ -gc -oZ -fr -fr -fr -fr -oZ -oZ -fr -fr -fr -fr -oZ -fr -oZ -fr -oZ -oZ -eL -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -sY -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -eJ -eJ -eJ -fr -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -ge -eL -ge -eL -eJ -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -eJ -eJ -eJ -eJ -fr -fr -eJ -eJ -fr -eJ -eJ -eL -eJ -eJ -tp -tw -qi -qi -tp -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -ge -oZ -eJ -Cl -oZ -eJ -eJ -oZ -oZ -qi -qi -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(163,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eK -eK -eJ -eJ -ge -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -eK -eJ -oZ -oZ -oZ -oZ -oZ -fr -fr -fr -fr -fr -fr -oZ -oZ -oZ -oZ -fr -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -ge -ge -ge -ge -eL -eL -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -eL -eJ -fr -fr -fr -eJ -eJ -eJ -tp -tp -tp -tp -tp -eJ -gW -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -Ci -eJ -eJ -oZ -eJ -ge -oZ -eJ -Cl -eJ -oZ -ge -ge -Cl -qi -qi -Cl -eJ -eJ -ge -eJ -eJ -eJ -ge -ge -eJ -ge -ge -ge -eJ -ge -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(164,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eL -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -fr -fr -fr -fr -fr -oZ -oZ -oZ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oY -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tH -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -eJ -eJ -eL -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -eL -ge -eL -ge -eL -eL -eL -fr -fr -fr -fr -fr -eJ -eJ -eL -fr -eJ -eL -eJ -eJ -eJ -eJ -fr -eJ -eL -fr -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -oZ -eJ -eJ -oZ -eJ -ge -oZ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(165,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -fr -fr -fr -eJ -eJ -fr -eL -eJ -eJ -ge -ge -eJ -eJ -gW -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -fr -fr -fr -fr -fr -eL -fr -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -eL -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -eL -eL -eL -eL -eL -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -eJ -fr -fr -fr -fr -eJ -eJ -eJ -fr -eJ -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -oZ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -ge -oZ -eJ -ge -eJ -oZ -oZ -oZ -oZ -oZ -oZ -Ci -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(166,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -fr -fr -fr -eJ -eL -fr -eL -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -oZ -rv -oZ -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -sY -sY -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tH -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -sY -oZ -oZ -eJ -oZ -eJ -eJ -eL -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -oZ -eL -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -oZ -ge -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(167,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eL -eL -eL -fr -eL -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -pA -fr -fr -fr -fr -fr -eL -eL -eJ -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -tp -tp -tp -tp -tp -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -tH -tH -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -oZ -eJ -eJ -eL -fr -eL -eL -eL -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Cl -qi -qi -Cl -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -Ci -ge -eJ -eJ -oZ -eJ -ge -ge -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(168,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eL -eL -eL -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -rS -sl -Jq -sO -fr -fr -fr -fr -fr -fr -fr -eL -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -qi -qi -tz -qi -tp -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -sX -oZ -oZ -eJ -eJ -eJ -eJ -tH -tH -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -sY -sY -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -fr -fr -fr -fr -fr -eL -eL -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Ci -eJ -eJ -eJ -oZ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -FT -eJ -eJ -eJ -ge -ge -ge -ge -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(169,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -fr -fr -eJ -eL -eJ -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -qi -rT -rV -sE -sO -fr -fr -fr -fr -fr -fr -fr -eL -eL -eL -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -tp -tp -tp -tw -qi -qi -qi -tp -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -uY -tH -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -oZ -oZ -eJ -gW -eJ -eL -fr -fr -eL -fr -eJ -eL -fr -fr -fr -fr -eL -eL -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -ge -oZ -oZ -oZ -oZ -oZ -Ci -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -Cl -qi -qi -Cl -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(170,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eL -eL -fr -fr -eJ -eJ -fr -fr -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -oZ -qi -rT -rV -sE -sO -fr -fr -fr -fr -fr -fr -fr -eL -eL -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -qi -tp -tp -tp -tp -tv -tp -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -uY -uY -eJ -eJ -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -oZ -eJ -eJ -eJ -ge -Ci -oZ -oZ -oZ -oZ -eJ -eJ -ge -eJ -eJ -eJ -eJ -oZ -eJ -eJ -ge -eJ -ge -oZ -oZ -eJ -eJ -eJ -oZ -oZ -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(171,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -eL -fr -eL -fr -fr -fr -eJ -eL -fr -fr -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -pA -rw -rU -sm -sF -sP -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -tp -qi -qi -qi -tp -tz -qi -tp -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -sY -sY -oZ -oZ -oZ -oZ -uQ -tH -tH -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oY -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eL -eJ -eL -eL -fr -eJ -fr -fr -eJ -eJ -eL -eL -fr -eL -eJ -eJ -eJ -eJ -eJ -fr -eJ -eJ -eL -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -ge -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Ci -ge -eJ -oZ -eJ -ge -oZ -eJ -eJ -eJ -ge -oZ -oZ -oZ -oZ -Ci -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(172,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eL -oZ -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -eJ -eJ -eJ -eJ -gW -gW -eJ -tp -qi -qi -tt -qi -qi -qi -tp -tp -tP -oZ -oZ -oZ -oY -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -tH -oZ -oZ -oZ -oZ -sY -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -fr -eJ -fr -fr -eL -eJ -eJ -eJ -fr -fr -fr -fr -eL -eJ -eL -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -Ci -ge -eJ -eJ -eJ -eJ -eJ -Cl -qi -qi -Cl -eJ -eJ -eJ -eJ -eJ -ge -oZ -ge -eJ -oZ -eJ -eJ -oZ -ge -eJ -eJ -ge -oZ -oZ -eJ -eJ -eJ -ge -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -Gd -Gx -GU -Gx -GU -GU -Gx -Gx -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(173,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -fr -eL -eJ -fr -fr -fr -fr -fr -eL -eJ -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -tp -qi -qi -tz -qi -qi -qi -qi -tP -tP -oZ -oZ -oZ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -sY -sY -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -sY -oZ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -eL -eL -eL -eJ -eJ -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -fr -eJ -eJ -eJ -fr -eJ -eJ -eJ -eL -fr -eJ -eJ -eL -eL -eL -fr -fr -fr -eL -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -ge -eJ -eJ -oZ -oZ -ge -eJ -eJ -eJ -eJ -eJ -ge -oZ -eJ -eJ -oZ -eJ -eJ -oZ -ge -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -Ge -Gy -GV -Hs -HJ -HL -Iz -GU -wE -wE -wE -wD -wD -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(174,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -qi -tz -tp -tv -tp -tp -tp -tp -tp -tp -oZ -oZ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -sY -sY -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -eL -eJ -eJ -eL -eL -fr -eJ -fr -eL -eL -eJ -eJ -eJ -eJ -eJ -eL -fr -eL -eJ -fr -fr -fr -eJ -eJ -eJ -eL -eJ -fr -fr -fr -fr -eJ -eJ -eL -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Ci -eJ -eJ -ge -oZ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -ge -eJ -eJ -eJ -eJ -oZ -eJ -eJ -oZ -Cl -eJ -oZ -eJ -eJ -eJ -Cl -oZ -oZ -oZ -oZ -oZ -oZ -Ci -Ci -Ci -Ci -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -Gf -Gz -GW -Ht -HK -HL -IA -GU -IZ -Jk -wL -JV -wE -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(175,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -tp -qi -qi -tp -qi -qi -tz -qi -tp -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eJ -fr -eJ -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -oZ -Cl -eJ -eJ -oZ -Cl -eJ -eJ -eJ -eJ -Cl -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -oZ -oZ -qi -oZ -oZ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -Gf -GA -GX -Hu -HL -HL -IB -Gx -IO -wL -wL -JW -wE -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(176,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -fr -eL -eJ -eJ -fr -fr -fr -eL -eJ -eJ -eL -fr -eL -eJ -eJ -oZ -oZ -oZ -oZ -oZ -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -eJ -eJ -eJ -eJ -tp -qi -qi -tp -qi -qi -qi -tD -tp -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -uR -oZ -oZ -oZ -vz -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -gW -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -fr -fr -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -fr -fr -fr -eL -eL -eL -fr -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -qi -qi -oZ -oZ -qi -qi -oZ -oZ -oZ -qi -qi -oZ -oZ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -oZ -oZ -qi -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -Gg -GB -GY -Hv -HM -Ib -IB -IJ -Ja -wM -JA -JX -wE -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(177,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -fr -fr -fr -eJ -eL -fr -fr -fr -fr -fr -eJ -eL -fr -eL -eJ -oY -oZ -oZ -oZ -oZ -oZ -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -eJ -eJ -eJ -tp -ts -tu -tp -tp -tp -tp -tp -tp -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -uI -uZ -vm -uZ -uI -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -tm -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eL -eL -fr -fr -fr -eJ -eL -eJ -eJ -fr -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -ge -ge -eJ -oY -oZ -oZ -qi -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -qi -oZ -eJ -eJ -eJ -eJ -eJ -Cl -qi -qi -eJ -eJ -ge -oZ -Cl -eJ -oZ -eJ -ge -oZ -Cl -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -Gd -GC -GC -GU -GC -Ic -GU -GU -Jb -wD -wD -wE -wE -wD -wD -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(178,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eL -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -oZ -oZ -oZ -fr -fr -fr -fr -rV -fr -fr -fr -eL -eL -oZ -eL -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -tp -tp -tp -tp -eJ -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tY -tZ -tY -tY -uF -vi -vt -vA -vG -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -fr -eJ -eL -fr -fr -eJ -fr -eJ -fr -eL -fr -eL -eJ -eL -eL -fr -fr -fr -eL -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -oZ -Ci -oZ -oZ -oZ -oZ -eJ -Cl -eJ -eJ -oZ -eJ -Cl -eJ -oZ -eJ -Cl -eJ -eJ -eJ -ge -ge -eJ -eJ -oY -qi -Cl -eJ -eJ -oZ -eJ -eJ -oZ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -xW -xW -xW -wT -Gh -wL -Gh -Id -IC -IK -Jc -Jl -JB -JY -Kg -Kg -KD -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(179,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -fr -eJ -oZ -oZ -oZ -fr -fr -fr -fr -rV -fr -fr -oZ -eL -eL -eL -eL -fr -fr -fr -fr -fr -fr -fr -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tZ -ul -uJ -tY -va -vi -ul -uI -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -eJ -eL -fr -eJ -eJ -eJ -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -ge -eJ -oZ -ge -eJ -Ci -ge -eJ -oZ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -Fv -FC -xW -xW -xW -wL -Gh -GD -GZ -xy -Gj -wL -wL -IL -Jd -Jm -JC -GZ -Gj -xy -xy -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(180,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -eJ -fr -fr -fr -eJ -fr -fr -fr -fr -fr -eJ -eJ -eL -eL -oZ -oZ -fr -fr -fr -fr -fr -rV -fr -fr -oZ -eL -ge -eL -oZ -eL -fr -fr -fr -fr -fr -fr -eL -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -tY -tY -tZ -tZ -tY -tY -uD -tZ -tZ -vb -vn -vb -tY -tZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -eJ -eL -fr -eL -eJ -eJ -eJ -oZ -oZ -sY -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -fr -eL -eJ -fr -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -oZ -ge -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -oZ -oZ -oZ -oZ -oZ -oZ -ge -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -Fw -FD -FG -FJ -FM -FU -Gi -GE -Ha -Hw -Hw -Hw -ID -IM -Ih -Jl -JD -wL -xy -Gj -xy -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(181,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -fr -fr -fr -eJ -eL -fr -fr -fr -fr -fr -eL -fr -eJ -eJ -oZ -oZ -fr -fr -fr -fr -fr -rV -fr -fr -oZ -eL -gW -ge -eL -oZ -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -tZ -ub -ue -ue -tY -ul -uE -uE -uE -vc -vo -ul -vB -tY -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -eL -fr -fr -eJ -fr -fr -eJ -fr -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -eL -eJ -eL -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -ge -Ci -oZ -oZ -oZ -oZ -eJ -eJ -ge -eJ -oZ -ge -eJ -ge -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -Ci -ge -ge -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oY -oZ -oZ -Fk -oZ -oZ -VW -FH -wL -Lx -xy -Gj -xy -Hb -Hx -xy -Ie -wD -IN -wE -wD -wD -wD -JC -GZ -KE -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(182,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eL -fr -fr -fr -fr -pA -rV -pA -fr -eL -eL -ge -eL -eL -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -tZ -uc -uf -uk -ur -ux -uF -ul -ul -vd -uF -vu -vC -tY -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -eL -fr -eJ -eL -fr -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -sY -sY -oZ -oZ -sX -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -oZ -qi -Cl -eJ -eJ -eJ -oZ -ge -eJ -ge -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -Ci -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -sY -oZ -oZ -oZ -VW -wL -FK -Lx -xy -xy -wL -Gj -GZ -Gj -If -wD -IO -wE -Jn -Jn -wE -JC -Kp -KF -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(183,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -fr -fr -eJ -fr -eJ -eL -fr -fr -fr -fr -fr -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -eL -eL -eL -eL -eL -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oY -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tZ -tY -tZ -tY -tZ -uy -uG -ul -uS -ve -tY -tZ -tZ -tY -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -oZ -fr -fr -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -fr -oZ -oZ -oZ -oZ -sY -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eL -fr -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Cl -qi -qi -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -ge -oZ -ge -ge -eJ -Cl -eJ -eJ -oZ -oZ -Cl -eJ -eJ -eJ -eJ -Cl -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -eJ -Cl -oZ -oZ -oZ -oZ -oZ -oZ -Fv -xW -xW -zI -xW -FV -ya -GF -xy -wL -xy -Ig -wD -IO -wD -Jo -wL -JZ -JC -GZ -xy -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(184,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -fr -eL -eJ -eJ -eL -eL -fr -fr -fr -fr -fr -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -eL -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eL -eL -tY -ug -ul -tZ -ux -uF -uK -uF -un -vp -vv -vD -tZ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -eL -eJ -eJ -oZ -oZ -fr -oZ -oZ -oZ -sY -oZ -oZ -oZ -oZ -fr -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -AW -sY -oZ -oZ -oZ -AW -oZ -oZ -oZ -oZ -qi -oZ -oZ -eJ -ge -ge -eJ -eJ -Cl -oZ -oZ -oZ -sY -oZ -oZ -qi -sY -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -FL -xW -xW -xW -GG -wL -ya -ya -Ih -wD -IP -wD -Jp -JE -wD -Kh -Kq -KG -wD -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(185,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -fr -eL -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eL -eJ -eL -fr -tZ -ug -um -us -uz -uH -uL -uT -vf -tY -vw -vE -tZ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eL -eL -fr -eJ -eL -eJ -fr -eJ -eJ -eJ -eL -eJ -oZ -fr -fr -oZ -oZ -oZ -oZ -oZ -oZ -oZ -fr -fr -oZ -eJ -eJ -eJ -eJ -eJ -oZ -sY -sY -oZ -oZ -oZ -eJ -pA -eJ -eJ -eJ -eJ -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -BO -BT -qi -qi -pA -eJ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -Cl -qi -AW -oZ -Ci -oZ -oZ -qi -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -oZ -AW -oZ -oZ -oZ -oZ -oZ -oZ -sY -qi -qi -oZ -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oY -Gk -GH -GN -Hy -GN -GH -GH -IO -wE -wD -wE -wE -wD -Kr -wD -wD -wE -wE -bh -bh -bh -bh -bh -bh -bh -"} -(186,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -fr -fr -eJ -fr -eL -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eL -fr -fr -fr -eJ -fr -tY -uh -un -tY -tZ -tZ -tZ -tY -vg -tZ -tY -tZ -tY -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -eL -eJ -eL -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -oY -fr -fr -fr -fr -eJ -eJ -eL -fr -fr -eL -oZ -oZ -oZ -oZ -oZ -oZ -qi -sO -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -Bo -Jq -qi -Cb -oZ -oZ -oZ -oZ -oZ -oZ -oZ -sY -oZ -ge -ge -eJ -sY -sY -oZ -eJ -ge -oZ -eJ -eJ -eJ -oZ -eJ -eJ -oZ -qi -Cl -eJ -ge -eJ -Cl -eJ -eJ -oZ -eJ -Cl -eJ -oZ -eJ -eJ -Cl -ge -EW -oZ -oZ -oZ -oZ -oZ -oZ -qi -eJ -ge -eJ -ge -eJ -Cl -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -FW -Gk -GI -Hc -Hg -HN -Ii -GN -IO -wL -wD -JF -JF -Ki -wL -GZ -wL -Gj -wD -bh -bh -bh -bh -bh -bh -bh -"} -(187,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eL -eJ -eL -fr -eL -fr -tY -ui -uo -ut -uA -tY -uy -uE -vh -vq -vx -tY -eJ -eL -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -oZ -oZ -oZ -fr -eJ -eL -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -oZ -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -fr -eJ -eJ -eJ -eJ -oZ -oZ -oZ -qi -zj -zk -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -BP -BP -Bo -BY -Cc -Aq -oZ -oZ -sY -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -qi -Cl -eJ -oZ -eJ -eJ -eJ -oZ -ge -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -Cl -qi -qi -Cl -eJ -eJ -Cl -eJ -ge -eJ -eJ -eJ -eJ -EW -oZ -oZ -oZ -oZ -oZ -oY -oZ -oZ -oZ -oZ -oZ -Gl -GJ -Hd -Hg -HO -Ij -GH -IO -wL -wD -JG -Ka -xO -Ks -Ka -KQ -KZ -wE -bh -bh -bh -bh -bh -bh -bh -"} -(188,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eL -fr -eJ -eJ -fr -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eL -eJ -fr -fr -fr -fr -fr -tY -uj -up -uu -uB -tY -uM -uU -vi -ul -uF -tY -eL -eJ -eL -eJ -eJ -eJ -eL -fr -eL -eJ -oZ -oZ -oZ -oZ -oZ -fr -fr -fr -eL -eJ -fr -fr -fr -fr -fr -fr -eL -oZ -oZ -eJ -eL -eL -eJ -fr -fr -eL -fr -fr -fr -eJ -eL -fr -eJ -pA -yi -yi -yO -zk -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -pA -BD -fr -fr -fr -rV -rV -rV -Bo -Cd -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -qi -qi -eJ -eJ -oZ -ge -Cl -ge -oZ -eJ -Cl -oZ -oZ -oZ -oZ -oZ -eJ -ge -eJ -eJ -oZ -eJ -eJ -eJ -oZ -ge -eJ -eJ -eJ -eJ -eJ -oZ -oZ -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -EW -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Gl -GJ -He -He -HP -Ik -GH -IO -wL -wE -JH -ND -ND -Kt -ND -ND -KX -wE -bh -bh -bh -bh -bh -bh -bh -"} -(189,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -fr -fr -eL -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eL -eL -fr -fr -fr -fr -eJ -eL -tZ -tY -tY -tZ -tZ -tY -uN -uV -vj -vr -ul -uI -eL -fr -fr -eL -eL -eJ -fr -fr -fr -oZ -oZ -fr -oZ -fr -fr -fr -fr -fr -oZ -oZ -fr -fr -fr -fr -eL -eL -eJ -eJ -oZ -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -Ad -Ap -Ap -pA -oZ -rS -BE -fr -fr -rV -sn -rV -rV -rV -pA -eJ -eJ -eL -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Cl -qi -oZ -sY -oZ -oZ -sY -oZ -oZ -oZ -sY -AW -oZ -oZ -ge -ge -ge -ge -ge -oZ -eJ -eJ -eJ -eJ -eJ -oZ -ge -eJ -eJ -eJ -eJ -eJ -oZ -oZ -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Gl -GJ -Hf -He -HQ -Il -GH -IQ -wL -wE -JH -ND -ND -ND -ND -ND -KX -wE -bh -bh -bh -bh -bh -bh -bh -"} -(190,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -fr -fr -eJ -eJ -eJ -eL -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -sn -rV -fr -fr -fr -fr -fr -fr -fr -eL -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tm -oZ -eJ -eJ -oZ -oZ -eL -fr -eJ -fr -fr -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -uI -uO -uW -vk -vs -vy -uI -fr -fr -fr -eJ -eJ -eL -fr -fr -fr -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -oZ -oZ -eJ -oZ -eL -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -sn -rV -sn -rV -fr -fr -fr -fr -Ae -qi -qi -oZ -sY -Bx -BF -rV -rV -rW -fr -sG -rV -rV -eJ -eJ -eJ -fr -eJ -fr -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -oZ -oZ -oY -oZ -oZ -oZ -oZ -oZ -oZ -qi -oZ -ge -ge -ge -ge -ge -ge -oZ -ge -eJ -oZ -eJ -eJ -oZ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Ci -oZ -oZ -oZ -ge -ge -ge -ge -eJ -eJ -ge -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Gk -GK -Hg -Hz -HO -Im -GN -wL -wL -wE -JI -ND -ND -ND -ND -ND -KY -wE -bh -bh -bh -bh -bh -bh -bh -"} -(191,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -pA -rW -fr -sG -pA -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -oZ -oZ -fr -fr -fr -fr -fr -eL -eJ -fr -eL -eL -oZ -oZ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -fr -fr -fr -eJ -eJ -oZ -oZ -fr -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -fr -fr -fr -fr -pA -rV -rW -fr -zl -fr -sG -rV -rV -rV -rV -AK -AW -oZ -oZ -oZ -sD -BG -fr -fr -rV -so -rV -fr -fr -fr -eJ -eL -fr -eL -fr -eL -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -oZ -Cl -ge -ge -oZ -Cl -eJ -ge -ge -ge -oZ -eJ -ge -Ci -ge -eJ -oZ -eJ -eJ -ge -ge -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -ge -ge -ge -ge -ge -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -oZ -oZ -Gm -GJ -He -HA -HO -In -GH -wL -wL -wE -JH -ND -ND -ND -ND -ND -KX -wE -bh -bh -bh -bh -bh -bh -bh -"} -(192,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -so -rV -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -oZ -oZ -eL -fr -eJ -fr -fr -fr -fr -fr -eL -eL -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eL -fr -eJ -eJ -eJ -oZ -fr -fr -fr -fr -fr -fr -fr -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eL -eL -eJ -fr -fr -fr -fr -rV -so -rV -so -rV -fr -Ad -Ap -Ap -AL -oZ -oZ -oZ -oZ -oZ -At -fr -fr -fr -rV -fr -fr -fr -fr -eJ -fr -fr -fr -fr -eL -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -ge -oZ -ge -eJ -oZ -eJ -eJ -eJ -oZ -eJ -eJ -ge -ge -ge -oZ -ge -eJ -oZ -eJ -eJ -oZ -ge -eJ -ge -ge -eJ -ge -ge -eJ -Cl -qi -qi -Cl -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Cl -oZ -oY -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Gm -GL -Hh -Hf -HO -Ik -GN -wL -wL -wD -JH -ND -ND -ND -ND -ND -KX -wD -bh -bh -bh -bh -bh -bh -bh -"} -(193,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eL -eL -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eL -eJ -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eL -fr -fr -eL -eL -eJ -eL -eJ -fr -sX -oZ -oZ -oZ -oZ -oZ -oY -oZ -oZ -eL -eL -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eL -xV -fr -fr -fr -rV -fr -fr -fr -Ae -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -pA -fr -fr -fr -rV -fr -fr -fr -fr -eL -eJ -fr -eJ -eJ -eJ -eJ -fr -eL -eJ -eJ -eJ -fr -eJ -ge -oZ -ge -eJ -oZ -eJ -eJ -eJ -oZ -eJ -eJ -ge -ge -ge -oZ -ge -eJ -oZ -Cl -eJ -oZ -ge -Cl -ge -ge -ge -ge -ge -eJ -eJ -oZ -oZ -eJ -ge -ge -ge -ge -eJ -eJ -eJ -eJ -oZ -Fb -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Gm -GJ -Hh -Hg -Qd -Io -IE -wL -Je -wD -JJ -Kb -Kb -Ku -Kb -Kb -Sf -wD -bh -bh -bh -bh -bh -bh -bh -"} -(194,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -oZ -oZ -eL -eJ -eJ -eL -fr -fr -fr -fr -fr -eJ -eJ -eL -fr -oZ -oZ -oZ -oZ -oZ -oZ -fr -oZ -oZ -oZ -eL -fr -fr -eJ -oZ -fr -fr -fr -fr -fr -fr -oZ -eJ -eL -eJ -eL -fr -eJ -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -fr -eL -wD -wD -wE -wE -wD -wD -xW -xW -xW -xW -eJ -eJ -eJ -eJ -pA -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eL -fr -fr -fr -rV -fr -fr -fr -fr -eJ -eJ -fr -eL -eJ -eL -fr -fr -fr -eJ -eJ -eJ -fr -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -oZ -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -qi -oZ -oZ -oZ -oZ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Ci -Ci -oZ -eJ -eJ -oZ -Fb -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -sX -oZ -FW -Gk -HR -Hi -Hh -HS -Ip -GN -wD -Jf -wE -wD -wE -wD -wD -wE -wE -wD -wD -bh -bh -bh -bh -bh -bh -bh -"} -(195,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -eL -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -fr -fr -fr -eJ -eL -oZ -fr -fr -eJ -oZ -oZ -oZ -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -eL -eL -eJ -fr -oZ -fr -fr -fr -fr -oZ -fr -fr -fr -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eL -fr -eL -eJ -fr -fr -fr -eL -eL -eL -eJ -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -fr -eJ -wE -xc -xq -xx -wL -wL -xX -yj -yw -xW -eJ -eJ -eJ -eJ -eJ -oZ -oZ -sX -oZ -oZ -eJ -eJ -eJ -fr -fr -fr -fr -rV -fr -fr -fr -fr -eJ -eL -fr -eL -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -oZ -oZ -oZ -oZ -oZ -oZ -qi -oZ -oZ -oZ -qi -oZ -ge -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -ge -ge -eJ -eJ -eJ -eL -eJ -oZ -Fb -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -hk -sl -Gk -GN -Hj -HB -GN -GH -GH -wL -Jg -wD -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(196,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -eJ -eL -fr -fr -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -fr -fr -fr -oZ -oY -oZ -eJ -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -eL -sX -fr -fr -fr -oZ -oZ -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -eJ -eL -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eL -wD -xd -xr -xy -xG -xy -xX -yk -yx -wD -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eL -fr -fr -fr -fr -BQ -oZ -eJ -fr -fr -fr -eJ -fr -eJ -eJ -eJ -eJ -eJ -fr -eJ -eL -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -oZ -oZ -Cl -eJ -ge -eJ -Cl -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -eJ -oZ -Fc -Fe -Ff -oZ -oZ -oZ -oZ -oZ -oZ -oZ -ho -kK -Gn -GO -Hk -HC -Hk -Hk -Hk -Hk -Jh -wE -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(197,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -eL -eL -eJ -eL -fr -fr -fr -fr -fr -rV -fr -fr -oZ -eJ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -fr -oZ -oZ -fr -oZ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eL -fr -eL -eJ -eJ -fr -fr -fr -eJ -eL -fr -eJ -eL -fr -fr -fr -fr -fr -eJ -eL -eJ -eJ -wD -wE -wE -wE -xz -xH -xH -xY -wD -wE -wE -wE -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eL -eJ -eL -fr -fr -fr -fr -BR -eJ -eL -oZ -fr -fr -fr -fr -fr -fr -eL -eL -eJ -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Cl -qi -qi -Cl -eJ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -fr -fr -eJ -oZ -oZ -oZ -oZ -Fc -Fe -Ff -oZ -oZ -oZ -oZ -oZ -sD -xW -xW -xW -xW -xW -xW -xW -xW -xW -xW -xW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(198,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eL -fr -fr -fr -fr -fr -fr -eJ -oZ -pA -qh -qh -qh -qh -qh -sp -qh -pA -oZ -eJ -oZ -oZ -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -oZ -eJ -eJ -eL -eJ -eL -fr -fr -fr -fr -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -fr -eL -eJ -eJ -fr -eJ -eJ -eL -fr -fr -fr -fr -fr -eJ -eJ -eJ -fr -fr -fr -eL -fr -eL -eJ -eJ -eJ -wD -wT -xe -xs -xA -xI -xN -wL -yl -xN -yP -wD -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -oZ -sE -eJ -eL -eL -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -fr -fr -eJ -eJ -eL -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -oZ -ge -eJ -eJ -ge -eJ -eJ -Cl -eJ -ge -eJ -Cl -qi -qi -Cl -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -oZ -oY -oZ -fr -oZ -oZ -Fc -Fe -Ff -oZ -oZ -oZ -oZ -Cb -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(199,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eL -fr -fr -fr -fr -fr -fr -eL -oZ -oZ -qi -qi -qi -qi -qi -qi -qi -oZ -oZ -oZ -oZ -oZ -oZ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -oZ -oZ -eL -fr -fr -fr -fr -fr -fr -eL -fr -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -eL -eJ -fr -eL -eL -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -eL -fr -eJ -eJ -eJ -eJ -wE -wU -xf -xt -xB -xJ -xO -xZ -ym -yy -yQ -wE -eJ -eJ -eJ -oZ -Aq -qi -pA -eJ -eJ -eL -eJ -eJ -fr -fr -fr -oZ -sE -eL -eL -eL -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -ge -eJ -eJ -eJ -ge -eJ -oZ -oZ -eJ -eJ -oZ -oZ -ge -eJ -eJ -oZ -oZ -oZ -qi -oZ -Aq -oZ -EX -oZ -oZ -eL -fr -eJ -eJ -fr -eJ -eJ -fr -eL -oZ -oZ -oZ -fr -fr -oZ -oZ -oZ -Fb -oZ -oZ -oZ -oZ -Cb -fr -fr -fr -rV -sn -rV -fr -fr -fr -eJ -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(200,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -gW -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -eL -eJ -eL -eJ -oZ -eJ -qE -qi -qi -qi -sq -qi -oZ -oZ -sX -rv -oZ -oZ -fr -fr -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -fr -eL -oZ -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -oZ -oZ -fr -eL -eL -eL -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -eJ -eJ -eL -eL -eJ -eJ -fr -eL -eL -eJ -eJ -eJ -eJ -eJ -wE -wV -xg -ND -ND -ND -xP -ND -ND -yz -yR -wD -wE -wD -xW -Af -qi -qi -At -fr -eJ -eJ -eJ -eL -eJ -fr -fr -fr -Bo -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -oZ -oZ -oZ -oZ -Ci -oZ -oZ -oZ -eJ -ge -oZ -oZ -eJ -eJ -oZ -oZ -oZ -oZ -qi -fr -fr -EV -qi -fr -fr -eL -fr -fr -eL -fr -eL -eJ -fr -fr -fr -oZ -oZ -fr -oZ -oZ -oZ -oZ -Fb -oZ -oZ -oZ -oZ -Cc -rV -rV -rV -rW -fr -sG -rV -rV -Ji -By -eL -eL -eL -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(201,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -fr -eJ -fr -eJ -eJ -eJ -eJ -oZ -oZ -pa -rc -rx -rc -pa -eJ -eJ -oZ -oZ -oZ -oZ -fr -fr -oZ -eJ -eJ -sX -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -fr -fr -eL -eL -fr -fr -fr -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -fr -fr -fr -fr -oZ -oZ -fr -fr -fr -eJ -eJ -eL -eJ -eJ -eJ -tp -tp -tp -eJ -fr -fr -fr -eJ -eL -eL -eL -eL -eL -eJ -eL -fr -fr -fr -eL -eJ -eJ -eJ -eJ -wD -wW -xg -ND -ND -ND -ND -ND -ND -yA -wM -zm -zv -zG -zR -qi -qi -Ar -zk -fr -eJ -eJ -eJ -eL -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -oZ -eJ -ge -Cl -eJ -fr -eJ -Cl -oZ -fr -oZ -fr -fr -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -oZ -oZ -fr -fr -Fb -oZ -oZ -oZ -oZ -Cb -qi -fr -fr -rV -so -rV -fr -fr -sE -qi -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(202,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eL -fr -eJ -fr -eL -eJ -eJ -eJ -oZ -oZ -pa -pG -ry -pG -ow -eJ -eJ -eJ -eJ -oZ -oZ -fr -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eL -eL -fr -eJ -eL -fr -fr -fr -eJ -eL -eJ -fr -fr -eJ -eL -oZ -oZ -oZ -oZ -fr -fr -oZ -oZ -oZ -fr -oZ -oZ -oZ -fr -oZ -oZ -oZ -fr -fr -fr -fr -oZ -fr -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -tp -tz -tp -eJ -fr -fr -eL -eJ -eL -eL -eL -fr -fr -fr -fr -fr -eJ -eJ -eJ -wD -wD -wE -wD -wP -wX -xg -ND -ND -ND -ND -ND -ND -yB -xy -zn -wL -wL -zS -qi -qi -At -fr -fr -eJ -eJ -eJ -rT -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -fr -eJ -eJ -eJ -eJ -ge -eJ -eJ -Cl -qi -qi -Cl -eJ -oZ -oZ -eJ -Cl -qi -qi -oZ -oZ -oZ -oZ -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -fr -fr -fr -fr -oZ -oY -fr -oZ -Fb -oZ -oZ -oZ -Cl -Cl -eJ -eL -fr -fr -rV -fr -fr -fr -sE -qi -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(203,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -eL -eL -eJ -eJ -eJ -eJ -oZ -gg -qF -rd -rz -rX -ox -eJ -eJ -eJ -eJ -eJ -eJ -eL -oZ -oZ -oZ -oZ -oZ -oZ -oZ -fr -eL -fr -eJ -eJ -eJ -fr -fr -eL -eL -eL -fr -fr -fr -oZ -oZ -oZ -oZ -fr -fr -oZ -oZ -fr -fr -fr -oZ -oZ -fr -fr -fr -oZ -oZ -oZ -fr -fr -fr -fr -fr -fr -eJ -eL -eL -eJ -eJ -eJ -eJ -tp -qi -tp -tp -fr -fr -tp -eJ -eL -eL -eL -eL -eL -eJ -eL -fr -fr -eL -eJ -wE -wG -wK -wO -wP -wW -xh -wW -ND -ND -ND -ND -ND -yB -xy -zn -wL -wL -zS -qi -Ar -zk -fr -fr -eJ -eJ -Jq -rT -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -eJ -fr -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -qi -Cl -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -fr -eJ -oZ -fr -fr -fr -fr -fr -fr -oZ -Fc -Fe -Fe -Fe -Cl -eJ -eJ -eL -fr -fr -rV -fr -fr -fr -sE -qi -qi -qi -eL -eJ -fr -fr -eL -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(204,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -eJ -eJ -ow -pa -pa -pa -pa -re -rA -re -ow -ox -ox -ow -ox -ow -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -eJ -eJ -eL -fr -eJ -eJ -eJ -eL -eL -fr -fr -oZ -oZ -oZ -oZ -fr -oZ -oZ -oZ -oZ -fr -oZ -oZ -oZ -fr -oZ -oZ -oZ -fr -fr -oZ -oZ -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -tp -qi -qi -qi -fr -fr -tp -eJ -eJ -eL -eL -eL -eL -eJ -eL -fr -eJ -eJ -eJ -wE -wH -wL -wL -wP -wW -xh -wW -wW -ND -ND -ND -ND -yC -yS -zm -zw -zH -zR -qi -As -rV -rV -rV -rV -Bh -Bo -Bz -fr -eJ -eJ -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -oZ -ge -eJ -oZ -oZ -eL -eL -fr -fr -fr -fr -oZ -oZ -eJ -fr -eL -eL -fr -eJ -eL -eL -fr -eL -oZ -oZ -fr -oZ -fr -fr -fr -oZ -oZ -sX -oZ -oZ -eJ -eJ -eJ -eJ -fr -rV -sn -rV -fr -fr -sE -qi -qi -qi -eL -eJ -eJ -fr -eL -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(205,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ox -pb -pB -qk -pE -qH -rB -rY -sr -pG -ow -sZ -sZ -ox -eJ -eJ -eJ -eJ -oZ -oZ -oZ -eJ -eJ -fr -fr -fr -eJ -eJ -eJ -eL -fr -fr -fr -eJ -eJ -eJ -fr -fr -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -fr -fr -fr -fr -oZ -oZ -oZ -oZ -oZ -oZ -oZ -sX -oZ -oZ -fr -eL -eL -eL -eJ -eL -eJ -eJ -eJ -tp -qi -qi -fr -fr -fr -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -wD -wI -wM -wM -wR -wY -xi -wW -wW -wW -ND -ND -ND -yD -yT -wE -xW -zI -xW -Af -At -fr -fr -fr -fr -fr -rV -fr -rV -sn -rV -fr -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -ge -eJ -eJ -eJ -oZ -oZ -eJ -eJ -oZ -oZ -eJ -eJ -fr -oZ -eL -fr -fr -fr -eL -Cl -qi -qi -fr -fr -eL -fr -fr -eJ -eJ -fr -fr -eL -eJ -oZ -fr -oZ -fr -fr -fr -fr -oZ -eJ -eJ -eJ -pA -rV -rV -rV -rV -rW -fr -sG -rV -rV -Bo -sl -sl -sl -sl -eJ -eJ -fr -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(206,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ox -pc -pC -pD -qG -rf -qH -qH -ss -rf -sQ -pG -rX -ox -eJ -eJ -eJ -oZ -oZ -eJ -eJ -eJ -eL -eL -fr -fr -eL -eJ -eJ -fr -fr -eJ -eL -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -fr -fr -oZ -oZ -fr -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -fr -fr -fr -fr -eJ -eJ -tp -tp -tp -tp -tp -qi -fr -fr -tp -tp -tp -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -wE -wJ -wN -wL -wP -wZ -xj -xu -xu -xu -xQ -xQ -xQ -yE -yQ -wE -eJ -zJ -zT -yi -zk -fr -fr -fr -fr -fr -rV -rV -rW -fr -sG -rV -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -Ci -Ci -oZ -oZ -oZ -oZ -oY -eJ -eJ -ge -eJ -eJ -eJ -fr -fr -fr -fr -fr -eL -eL -eJ -oZ -oZ -eJ -eJ -eJ -fr -Cl -qi -qi -Cl -fr -eJ -fr -fr -fr -oZ -oZ -fr -fr -fr -fr -fr -eJ -eJ -eL -fr -fr -fr -fr -rV -so -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eL -bh -bh -bh -bh -bh -bh -bh -"} -(207,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ow -pd -pD -pD -pE -rg -qH -rZ -ss -ql -ow -ta -th -ow -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eL -eJ -tp -tp -tp -tp -eJ -oZ -oZ -oZ -oZ -oZ -oY -oZ -oZ -oZ -oZ -oZ -oZ -fr -oZ -oZ -oZ -oZ -oZ -tm -oZ -eJ -eJ -eL -eJ -eJ -fr -eJ -eL -eJ -tp -qi -qi -tp -qi -qi -qi -qi -tp -qi -fr -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -wD -wE -wE -wP -wP -wW -wW -wW -wW -wW -wW -ya -ya -ya -wL -xW -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -rV -so -rV -fr -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -eJ -qi -qi -Cl -eJ -eJ -eJ -eJ -Cl -oZ -oZ -fr -fr -fr -fr -fr -eJ -oZ -oZ -oZ -oZ -oZ -fr -eJ -oZ -oZ -eJ -eJ -eJ -fr -oZ -fr -oZ -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -fr -fr -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(208,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -ox -ox -pE -pE -pE -pE -rC -sa -ss -ql -ox -ow -ox -ow -eJ -eJ -eJ -oZ -eJ -eJ -eJ -tp -tp -tp -tp -tp -tp -eJ -eJ -eJ -eJ -eJ -tp -tz -tD -tp -eJ -eJ -eJ -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eL -eJ -eL -eL -eL -eL -eJ -tp -fr -qi -tv -qi -tz -tp -qi -tp -qi -tz -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -wE -wP -wD -wP -wP -wP -wD -wD -wE -wE -wE -xW -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -fr -fr -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -Cl -qi -oZ -oZ -oZ -oZ -oZ -qi -qi -oZ -fr -fr -fr -fr -eL -fr -eJ -oZ -oZ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eL -fr -fr -oZ -oZ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -fr -fr -eL -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(209,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ow -pe -pF -pG -qH -rh -qH -sb -ss -rf -pE -tb -ti -ow -eJ -eJ -eJ -eJ -eJ -eJ -gW -tp -tw -tw -qi -qi -tp -tp -tp -tp -eJ -gW -tp -qi -qi -tp -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -oZ -oZ -oY -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -tp -qi -qi -tp -qi -fr -tp -qi -tp -qi -tp -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eK -eK -eK -eJ -eJ -eJ -eJ -eJ -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -eL -fr -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -fr -fr -eJ -eJ -eJ -eJ -eJ -oZ -Aq -oZ -oZ -oZ -qi -oZ -oZ -fr -fr -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -fr -oZ -oZ -oZ -fr -eJ -eL -eL -eL -eJ -eL -eJ -fr -eL -eL -fr -fr -fr -fr -eJ -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(210,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ox -pf -pG -ql -qH -qH -qH -qH -ss -pG -sR -pG -tj -ox -eJ -tp -tp -tp -tp -tp -tp -tp -qi -tz -qi -tt -qi -qi -qi -tp -tp -tp -tp -tp -tv -tp -tp -tp -tp -tp -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -tz -qi -tp -qi -qi -tp -qi -fr -qi -tD -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eK -eK -eK -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -rV -fr -fr -fr -eJ -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -fr -fr -eL -eJ -fr -eJ -eJ -eJ -oZ -ge -ge -oZ -Cl -eJ -oZ -fr -eJ -eJ -eJ -eJ -eJ -eJ -qi -qi -Cl -eJ -eJ -eJ -Cl -qi -qi -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -fr -eJ -eJ -eJ -eJ -eL -eJ -eJ -fr -eJ -eL -fr -fr -fr -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(211,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ow -pg -pg -qm -qI -ri -qH -qH -st -rf -ow -tc -tk -ox -eJ -tp -ts -tu -tp -tw -tw -tp -qi -qi -qi -qi -tz -qi -qi -qi -qi -qi -qi -qi -qi -qi -qi -qi -qi -tR -tR -qi -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -tp -tp -tp -tp -tv -tp -tp -tp -tp -tp -tp -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -rV -sn -rV -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -Ad -Bp -qh -pA -eL -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -oZ -eJ -eJ -oZ -eJ -fr -fr -fr -eL -fr -eJ -eJ -eJ -Cl -qi -oZ -oZ -oZ -oZ -oZ -oZ -oZ -qi -Cl -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -oZ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -eL -eL -eJ -eL -fr -fr -fr -fr -fr -fr -fr -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(212,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ow -ox -ox -pE -pE -ow -ow -pE -su -ox -ox -ox -ow -ow -eJ -tp -qi -qi -tp -qi -qi -tp -qi -tp -tp -tp -tp -tp -tp -tp -tp -tp -tp -tv -tp -tp -tp -tv -tp -tp -tp -tp -tp -oZ -oZ -oZ -oZ -oZ -oZ -oZ -tm -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -eJ -eJ -eJ -eJ -tp -qi -qi -tD -tp -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -pA -rW -fr -sG -rV -rV -rV -rV -rV -rV -rV -rV -rV -rV -rV -Bi -qi -qi -BH -eJ -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -eL -fr -ge -oZ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -fr -oZ -oZ -oZ -eJ -eJ -eJ -eJ -fr -eL -fr -fr -fr -fr -fr -fr -eL -fr -fr -fr -fr -fr -eL -eJ -fr -eL -bh -bh -bh -bh -bh -bh -bh -"} -(213,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -pE -rD -pG -rz -ox -eJ -eJ -eJ -eJ -gW -tp -qi -tt -tp -qi -qi -tp -qi -tp -qi -qi -tw -tp -eJ -eJ -tp -qi -qi -qi -tp -eJ -tp -qi -qi -qi -tp -gW -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -eJ -eJ -tp -tz -qi -ts -tp -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eL -eL -eL -rV -so -rV -fr -fr -fr -rV -fr -fr -fr -fr -fr -fr -oZ -Ae -qi -qi -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -oZ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -sX -oZ -oZ -eJ -eJ -eL -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -eL -bh -bh -bh -bh -bh -bh -bh -"} -(214,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ox -rE -sc -sv -ow -eJ -eJ -eJ -eJ -eJ -tp -tt -qi -tp -tv -tp -tp -qi -tp -qi -qi -tz -tp -eJ -eJ -tp -qi -qi -qi -tp -gW -tp -qi -qi -qi -tp -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -tp -tp -tp -tp -tp -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -ge -ge -ge -eJ -eJ -eJ -eJ -eL -eL -eL -eL -fr -eL -fr -fr -fr -fr -eJ -eJ -eL -eL -eJ -fr -rV -fr -fr -fr -eL -fr -oZ -eJ -pA -eJ -eJ -eJ -eL -eJ -eL -fr -fr -fr -fr -eL -eJ -fr -eJ -eL -eJ -eL -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -ge -oZ -eJ -ge -oZ -eJ -eJ -Ci -ge -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -fr -oZ -fr -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(215,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -ow -rF -sd -ow -ox -eJ -eJ -eJ -eJ -eJ -tp -qi -qi -tv -qi -qi -qi -qi -tv -qi -tp -tp -tp -eJ -eJ -tp -qi -qi -tp -tp -eJ -tp -tp -qi -qi -tp -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eL -eL -eL -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -fr -fr -fr -rV -fr -fr -fr -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -fr -fr -fr -fr -eJ -fr -fr -eJ -fr -eJ -fr -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -oZ -eJ -eJ -oZ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -fr -fr -eJ -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eJ -oZ -sX -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(216,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ox -ox -ox -ow -eJ -eJ -eJ -gW -eJ -eJ -tp -qi -qi -tp -qi -tt -qi -tp -tp -tp -tp -eJ -eJ -gW -eJ -tp -tz -tD -tp -eJ -eJ -eJ -tp -tD -tz -tp -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eL -eL -eL -eL -eJ -fr -eJ -eL -fr -fr -fr -fr -fr -fr -fr -fr -eL -eJ -fr -eL -eJ -fr -fr -fr -eJ -gW -eJ -eJ -eJ -eL -fr -eJ -fr -eJ -eJ -eL -fr -eJ -eL -fr -eJ -fr -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -ge -fr -fr -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -oZ -eJ -ge -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -fr -fr -oZ -fr -fr -eL -fr -fr -fr -fr -fr -eJ -eL -eL -eJ -eJ -oZ -oZ -oZ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(217,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -tp -tp -tp -qi -qi -qi -tp -eJ -gW -eJ -eJ -eJ -eJ -eJ -tp -tp -tp -tp -eJ -eJ -eJ -tp -tp -tp -tp -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -ge -eJ -eJ -eJ -eJ -eL -eL -eJ -eL -eJ -eJ -fr -eL -fr -fr -fr -eJ -fr -eL -eJ -fr -fr -eJ -eJ -fr -eJ -eJ -eJ -eJ -eJ -eL -fr -fr -fr -eL -fr -eL -fr -fr -fr -eL -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eL -eJ -fr -fr -eJ -fr -fr -fr -fr -fr -fr -eJ -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -Ci -eJ -eJ -ge -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -oZ -fr -oZ -oZ -oZ -oZ -oZ -oZ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -Aq -La -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(218,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -tp -tp -tp -tp -tp -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -gW -eJ -eJ -gW -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -ge -ge -ge -ge -ge -ge -eJ -eJ -ge -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -fr -eL -eL -eL -eJ -eJ -fr -eJ -eJ -fr -fr -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -eJ -eJ -fr -eJ -fr -fr -fr -eJ -eJ -fr -eJ -fr -eJ -eL -eJ -fr -fr -fr -fr -fr -fr -fr -fr -eJ -eL -eJ -fr -fr -fr -eJ -eJ -eL -eL -eL -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -oZ -sX -oZ -oZ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(219,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eL -eL -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -fr -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eL -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -ge -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -eJ -bh -bh -bh -bh -bh -bh -bh -"} -(220,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(221,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(222,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(223,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(224,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(225,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(226,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -bh -"} -(227,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(228,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(229,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(230,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(231,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(232,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(233,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(234,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(235,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(236,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(237,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(238,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(239,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(240,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(241,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(242,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(243,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(244,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(245,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(246,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(247,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(248,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(249,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(250,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(251,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(252,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(253,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(254,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} -(255,1,1) = {" -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -"} diff --git a/_maps/RandomZLevels/VR/syndicate_trainer.dmm b/_maps/RandomZLevels/VR/syndicate_trainer.dmm deleted file mode 100644 index 7d167c64c21..00000000000 --- a/_maps/RandomZLevels/VR/syndicate_trainer.dmm +++ /dev/null @@ -1,19176 +0,0 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/open/space, -/area/space) -"ab" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/maint) -"ac" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/cafe) -"ad" = ( -/turf/closed/indestructible/fakeglass, -/area/awaymission/centcomAway/cafe) -"ag" = ( -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"ai" = ( -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aj" = ( -/obj/machinery/vending/cigarette, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"al" = ( -/obj/machinery/vending/dinnerware, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"am" = ( -/obj/structure/closet/chefcloset, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"ao" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"ap" = ( -/obj/structure/closet/secure_closet/freezer/fridge, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aq" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"ar" = ( -/obj/structure/table, -/obj/item/storage/box/donkpockets{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/kitchen/rollingpin, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"as" = ( -/obj/structure/table, -/obj/item/reagent_containers/glass/beaker, -/obj/item/reagent_containers/food/condiment/enzyme, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"at" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"au" = ( -/obj/machinery/hydroponics, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"av" = ( -/obj/item/reagent_containers/glass/bucket, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"ay" = ( -/obj/structure/table, -/obj/item/kitchen/knife/butcher, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"az" = ( -/obj/structure/disposalpipe/segment, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aA" = ( -/obj/structure/closet/secure_closet/freezer/kitchen, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aB" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/middle{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aE" = ( -/obj/machinery/portable_atmospherics/canister/air, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"aF" = ( -/obj/structure/table, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aG" = ( -/obj/effect/landmark/vr_spawn/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aH" = ( -/obj/structure/closet/secure_closet/personal, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aI" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aK" = ( -/obj/effect/spawner/structure/window/hollow/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aL" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/drinks/shaker, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aM" = ( -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aP" = ( -/obj/machinery/portable_atmospherics/pump, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"aQ" = ( -/obj/structure/bed, -/obj/item/bedsheet, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aR" = ( -/obj/machinery/door/airlock/maintenance, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"aS" = ( -/turf/closed/indestructible/fakeglass, -/area/awaymission/centcomAway/maint) -"aV" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/hangar) -"aW" = ( -/obj/structure/table/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aY" = ( -/obj/structure/sink, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"aZ" = ( -/obj/structure/table, -/obj/machinery/processor{ - pixel_y = 10 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"ba" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bb" = ( -/obj/item/radio, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"bc" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bd" = ( -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"be" = ( -/obj/effect/decal/cleanable/oil, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bg" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/condiment/peppermill, -/obj/item/reagent_containers/food/condiment/saltshaker, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bh" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"bj" = ( -/obj/structure/rack, -/obj/item/clothing/suit/fire, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"bk" = ( -/obj/structure/lattice, -/turf/open/space, -/area/space/nearstation) -"bl" = ( -/obj/machinery/door/poddoor{ - id = "XCCHangar1"; - name = "XCC Main Hangar" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bn" = ( -/turf/closed/wall/mineral/titanium/interior, -/area/awaymission/centcomAway/hangar) -"bo" = ( -/obj/structure/shuttle/engine/propulsion/right{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bp" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bq" = ( -/obj/structure/shuttle/engine/propulsion/left{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bs" = ( -/obj/structure/closet/crate, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bt" = ( -/obj/machinery/door/airlock/centcom, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bu" = ( -/obj/structure/closet/secure_closet/freezer/meat, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bw" = ( -/obj/machinery/chem_master/condimaster{ - name = "CondiMaster Neo" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bx" = ( -/obj/structure/disposalpipe/trunk, -/obj/machinery/disposal/bin, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bz" = ( -/obj/structure/closet/secure_closet/hydroponics, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bA" = ( -/obj/structure/rack, -/obj/item/extinguisher/mini, -/obj/item/clothing/head/hardhat/red, -/obj/item/clothing/gloves/color/black, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"bB" = ( -/turf/closed/wall/mineral/titanium, -/area/awaymission/centcomAway/hangar) -"bC" = ( -/obj/structure/window/reinforced, -/obj/structure/shuttle/engine/heater{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bF" = ( -/obj/machinery/door/airlock/external{ - name = "Salvage Shuttle Dock" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bJ" = ( -/obj/structure/chair/comfy/brown, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bK" = ( -/obj/structure/reagent_dispensers/beerkeg, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bL" = ( -/obj/structure/kitchenspike, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bM" = ( -/obj/machinery/gibber, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"bN" = ( -/obj/machinery/autolathe, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"bQ" = ( -/obj/structure/table, -/obj/item/clothing/glasses/welding, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"bU" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"bV" = ( -/turf/open/floor/mineral/titanium, -/area/awaymission/centcomAway/hangar) -"bW" = ( -/obj/structure/table, -/obj/item/storage/firstaid/toxin{ - pixel_x = -2; - pixel_y = 4 - }, -/obj/item/storage/firstaid/toxin, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"bX" = ( -/obj/structure/table, -/obj/item/storage/firstaid/fire, -/obj/item/storage/firstaid/fire{ - pixel_x = -2; - pixel_y = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"bY" = ( -/obj/structure/table, -/obj/item/storage/firstaid/regular{ - pixel_x = 2 - }, -/obj/item/storage/firstaid/regular{ - pixel_x = -2; - pixel_y = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"cb" = ( -/obj/item/paper_bin, -/obj/structure/table, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cc" = ( -/obj/item/clipboard, -/obj/structure/table, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cd" = ( -/obj/machinery/suit_storage_unit/standard_unit, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"ce" = ( -/obj/effect/spawner/structure/window/hollow/reinforced, -/obj/structure/disposalpipe/segment, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cg" = ( -/obj/structure/sign/departments/botany, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/cafe) -"ch" = ( -/obj/structure/table/reinforced, -/obj/item/reagent_containers/spray/plantbgone{ - pixel_y = 3 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cj" = ( -/obj/machinery/door/airlock/external, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"ck" = ( -/obj/machinery/door/airlock/external, -/obj/structure/fans/tiny/invisible, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"cl" = ( -/turf/open/floor/plating/airless, -/area/awaymission/centcomAway/maint) -"cm" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/awaymission/centcomAway/hangar) -"cn" = ( -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"co" = ( -/obj/item/pen, -/obj/structure/table, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cq" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cr" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cv" = ( -/obj/structure/sign/warning/vacuum, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/maint) -"cx" = ( -/obj/machinery/door/airlock/maintenance, -/turf/open/floor/mineral/titanium, -/area/awaymission/centcomAway/hangar) -"cB" = ( -/obj/machinery/door/window/westleft, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cE" = ( -/obj/machinery/seed_extractor, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cF" = ( -/obj/machinery/vending/hydroseeds{ - slogan_delay = 700 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cG" = ( -/obj/machinery/vending/hydronutrients, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cH" = ( -/obj/machinery/biogenerator, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cJ" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"cK" = ( -/obj/structure/table/reinforced, -/obj/item/storage/fancy/donut_box, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"cL" = ( -/obj/structure/table/reinforced, -/obj/item/pen, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"cM" = ( -/obj/structure/table/reinforced, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"cN" = ( -/obj/machinery/sleeper{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"cO" = ( -/obj/machinery/sleep_console{ - icon_state = "console"; - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"cP" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"cS" = ( -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"cT" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/neck/stethoscope, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"cU" = ( -/obj/machinery/modular_computer/console{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"cV" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"cW" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"cX" = ( -/obj/structure/table/reinforced, -/obj/item/clipboard, -/obj/item/stamp, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"da" = ( -/obj/structure/table, -/obj/item/assembly/flash/handheld, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"db" = ( -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"dc" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"dd" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dl" = ( -/obj/structure/table, -/obj/item/storage/box/handcuffs, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"dm" = ( -/obj/machinery/door/window/northright{ - base_state = "right"; - dir = 4; - icon_state = "right"; - name = "Security Desk"; - req_access_txt = "103" - }, -/turf/open/floor/mineral/titanium/yellow, -/area/awaymission/centcomAway/hangar) -"dn" = ( -/obj/structure/closet/crate, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"do" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dp" = ( -/obj/structure/closet/crate/large, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dq" = ( -/obj/structure/dresser, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"dr" = ( -/obj/structure/table/reinforced, -/obj/item/t_scanner, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"ds" = ( -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/obj/machinery/disposal/bin, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"dv" = ( -/obj/structure/closet/crate, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dw" = ( -/obj/structure/tank_dispenser, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"dy" = ( -/obj/structure/closet/firecloset/full, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"dz" = ( -/obj/structure/bed, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"dA" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dB" = ( -/obj/structure/ore_box, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dC" = ( -/obj/structure/table, -/obj/item/storage/fancy/donut_box, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"dE" = ( -/obj/structure/sink/kitchen{ - pixel_y = 28 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"dG" = ( -/obj/structure/bed, -/turf/open/floor/mineral/titanium, -/area/awaymission/centcomAway/hangar) -"dL" = ( -/obj/machinery/door/airlock/hatch{ - name = "Rest Room" - }, -/turf/open/floor/mineral/titanium, -/area/awaymission/centcomAway/hangar) -"dM" = ( -/obj/structure/closet/crate/large, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dN" = ( -/obj/structure/closet/crate, -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"dQ" = ( -/obj/machinery/door/airlock/maintenance, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"dY" = ( -/obj/machinery/door/airlock/centcom, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"dZ" = ( -/obj/structure/table, -/obj/structure/bedsheetbin, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"ea" = ( -/obj/structure/table, -/obj/item/hand_labeler, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"eb" = ( -/obj/structure/table, -/obj/item/storage/box/donkpockets, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"ec" = ( -/obj/structure/flora/ausbushes, -/turf/open/floor/plasteel{ - icon_state = "asteroid6"; - name = "sand" - }, -/area/awaymission/centcomAway/cafe) -"el" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"et" = ( -/obj/machinery/door/airlock/hatch{ - name = "Cockpit"; - req_access_txt = "109" - }, -/turf/open/floor/mineral/titanium, -/area/awaymission/centcomAway/hangar) -"eu" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/general) -"ew" = ( -/obj/machinery/space_heater, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"ex" = ( -/obj/structure/closet/emcloset, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"ey" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/directional{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"ez" = ( -/obj/structure/table, -/obj/item/radio/off, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"eA" = ( -/obj/structure/chair{ - dir = 4; - name = "Prosecution" - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"eB" = ( -/obj/structure/filingcabinet, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"eG" = ( -/obj/effect/vr_clean_master, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"eH" = ( -/obj/machinery/sleeper{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eI" = ( -/obj/machinery/sleep_console{ - icon_state = "console"; - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eJ" = ( -/obj/effect/landmark/vr_spawn/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eK" = ( -/obj/structure/table/reinforced, -/obj/item/tank/internals/anesthetic, -/obj/item/clothing/mask/breath/medical, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eL" = ( -/obj/machinery/implantchair, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eM" = ( -/obj/structure/table/reinforced, -/obj/item/extinguisher/mini, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eN" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"eP" = ( -/obj/machinery/computer/cloning, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eQ" = ( -/obj/machinery/dna_scannernew, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eR" = ( -/obj/structure/chair, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"eS" = ( -/obj/effect/turf_decal/delivery, -/obj/machinery/telecomms/allinone/indestructable, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eT" = ( -/obj/machinery/door/airlock/engineering{ - name = "Engineering Access"; - req_access_txt = "10" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eU" = ( -/obj/machinery/door/window/northleft, -/obj/structure/chair, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"eV" = ( -/obj/effect/spawner/structure/window/hollow/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eW" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"eY" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/courtroom) -"eZ" = ( -/obj/structure/table, -/obj/item/storage/lockbox, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"fa" = ( -/obj/structure/table, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"fb" = ( -/obj/structure/frame/computer{ - dir = 1 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"fc" = ( -/obj/structure/table, -/obj/item/clipboard, -/obj/item/pen, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"fd" = ( -/obj/structure/table, -/obj/item/paper_bin, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"fh" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fj" = ( -/obj/structure/bed, -/obj/item/bedsheet, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fk" = ( -/obj/structure/table, -/obj/item/storage/box/prisoner, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fl" = ( -/obj/structure/closet/secure_closet/security, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fm" = ( -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fn" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"fo" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/middle, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"fp" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"fq" = ( -/obj/machinery/power/terminal, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"ft" = ( -/obj/structure/sign/warning/electricshock, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/general) -"fu" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fv" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/middle, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fw" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fy" = ( -/obj/structure/sign/departments/medbay/alt, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/general) -"fA" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/item/storage/box/monkeycubes/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fB" = ( -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fC" = ( -/obj/machinery/computer/scan_consolenew, -/obj/item/dnainjector/telemut/darkbundle, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fF" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fG" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Engineering"; - req_access_txt = "32" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fH" = ( -/obj/structure/table/wood, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fJ" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fK" = ( -/obj/machinery/door/window/northleft, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fL" = ( -/obj/structure/table/wood, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fM" = ( -/obj/machinery/power/smes, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fN" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fO" = ( -/obj/machinery/power/smes, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fQ" = ( -/obj/structure/sign/departments/science, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/general) -"fR" = ( -/obj/machinery/door/window/eastright, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fT" = ( -/obj/machinery/door/airlock/centcom, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"fU" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Med-Sci"; - req_access_txt = "9" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fV" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fW" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"fZ" = ( -/obj/structure/table, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"ga" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"gb" = ( -/obj/structure/grille, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"gd" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/directional{ - dir = 9 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gf" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/middle, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gh" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/directional{ - dir = 5 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gj" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"gl" = ( -/obj/item/xenos_claw, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gn" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"go" = ( -/obj/structure/table, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"gp" = ( -/obj/machinery/shieldgen, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"gr" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gs" = ( -/obj/machinery/pdapainter, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gt" = ( -/obj/machinery/photocopier, -/obj/item/paper/fluff/awaymissions/centcom/gateway_memo, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gu" = ( -/obj/structure/table/reinforced, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gw" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gx" = ( -/obj/structure/filingcabinet, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gy" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gB" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"gE" = ( -/obj/structure/closet/secure_closet/engineering_welding, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"gF" = ( -/obj/machinery/door/airlock/command/glass{ - name = "Bridge"; - req_access_txt = "19" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gG" = ( -/obj/structure/chair/comfy/beige{ - dir = 1; - icon_state = "comfychair_beige" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gH" = ( -/obj/structure/chair, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"gI" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/turf/open/indestructible, -/area/awaymission/centcomAway/maint) -"gJ" = ( -/obj/structure/bodycontainer/morgue, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gM" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gN" = ( -/obj/machinery/modular_computer/console{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gO" = ( -/obj/structure/chair/office/dark{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gP" = ( -/obj/structure/chair/office/dark{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gQ" = ( -/obj/machinery/modular_computer/console{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gS" = ( -/obj/structure/shuttle/engine/propulsion/burst{ - dir = 8 - }, -/turf/closed/wall/mineral/titanium/interior, -/area/awaymission/centcomAway/hangar) -"gU" = ( -/obj/structure/table, -/obj/item/paper/fluff/awaymissions/centcom/gateway_memo, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"gW" = ( -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gX" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/middle{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"gZ" = ( -/obj/structure/chair/office/dark, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hb" = ( -/obj/machinery/vending/cigarette, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"hc" = ( -/obj/machinery/door/airlock/shuttle, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"hd" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/item/radio/intercom{ - pixel_y = 25 - }, -/turf/open/floor/mineral/titanium/blue, -/area/awaymission/centcomAway/hangar) -"he" = ( -/obj/effect/spawner/structure/window/hollow/reinforced, -/turf/open/floor/mineral/titanium, -/area/awaymission/centcomAway/hangar) -"hg" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hh" = ( -/obj/structure/closet/body_bag, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hi" = ( -/obj/structure/sign/warning/biohazard, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/general) -"hj" = ( -/obj/structure/table/reinforced, -/obj/item/storage/box/PDAs, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hk" = ( -/obj/structure/table/reinforced, -/obj/item/folder/red, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hl" = ( -/obj/machinery/modular_computer/console{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"ho" = ( -/obj/structure/table/reinforced, -/obj/item/folder/blue, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hq" = ( -/turf/closed/indestructible/fakeglass, -/area/awaymission/centcomAway/courtroom) -"hx" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/yellow, -/obj/item/storage/toolbox/electrical{ - pixel_y = 5 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hy" = ( -/obj/structure/sign/warning/securearea, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/general) -"hA" = ( -/obj/structure/sink{ - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hG" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hH" = ( -/obj/structure/table/reinforced, -/obj/item/storage/box/bodybags, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hJ" = ( -/obj/structure/toilet{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hK" = ( -/obj/machinery/button/door/indestructible{ - id = "XCCHangar1"; - name = "Hangar Bay Blast Doors"; - pixel_x = -28; - pixel_y = 7; - req_access_txt = "2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hL" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hM" = ( -/obj/structure/rack, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hN" = ( -/obj/structure/rack, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hO" = ( -/obj/structure/closet, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hP" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"hQ" = ( -/obj/machinery/power/solar/fake, -/turf/open/floor/plasteel/airless/solarpanel, -/area/awaymission/centcomAway/maint) -"hR" = ( -/obj/structure/closet/secure_closet/medical2, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"hS" = ( -/obj/structure/table/wood, -/obj/item/paper_bin, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"hU" = ( -/obj/structure/sign/warning/vacuum, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/hangar) -"hV" = ( -/obj/structure/bodycontainer/crematorium, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hW" = ( -/obj/item/twohanded/required/kirbyplants, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hX" = ( -/obj/machinery/button/crematorium/indestructible{ - pixel_y = 25 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"hY" = ( -/obj/structure/closet/secure_closet/injection, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"hZ" = ( -/obj/structure/bed, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"ia" = ( -/obj/structure/closet/secure_closet/courtroom, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"ib" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"ie" = ( -/obj/machinery/vending/snack, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"ig" = ( -/obj/machinery/vending/coffee, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"ih" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"ii" = ( -/turf/open/floor/mech_bay_recharge_floor, -/area/awaymission/centcomAway/hangar) -"ij" = ( -/obj/machinery/computer/mech_bay_power_console, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"il" = ( -/obj/structure/mecha_wreckage/ripley, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"im" = ( -/obj/structure/closet/secure_closet/personal, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"in" = ( -/obj/structure/rack, -/obj/item/clothing/glasses/night, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"io" = ( -/obj/structure/closet/emcloset, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"ip" = ( -/obj/structure/bookcase, -/obj/effect/decal/cleanable/cobweb, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iq" = ( -/obj/structure/closet/secure_closet/hos, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"ir" = ( -/obj/structure/closet/crate/trashcart, -/obj/item/reagent_containers/spray/cleaner, -/obj/item/reagent_containers/glass/bucket, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"is" = ( -/obj/structure/bookcase, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"it" = ( -/obj/machinery/door/poddoor/shutters{ - id = "XCCsec3"; - name = "XCC Main Access Shutters" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iu" = ( -/obj/structure/flora/ausbushes, -/turf/open/floor/plasteel{ - icon_state = "asteroid6"; - name = "sand" - }, -/area/awaymission/centcomAway/general) -"iv" = ( -/turf/closed/indestructible/fakeglass, -/area/space/nearstation) -"iy" = ( -/obj/machinery/door/poddoor{ - id = "XCCMechs"; - name = "XCC Mech Bay" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"iz" = ( -/obj/effect/turf_decal/bot, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"iA" = ( -/obj/machinery/mass_driver{ - dir = 8; - id = "XCCMechs"; - name = "gravpult" - }, -/obj/effect/turf_decal/bot, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"iB" = ( -/obj/effect/turf_decal/loading_area{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"iF" = ( -/obj/machinery/recharge_station, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"iM" = ( -/obj/structure/closet/wardrobe/red, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iN" = ( -/obj/structure/mecha_wreckage/seraph, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"iQ" = ( -/obj/structure/table/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iR" = ( -/obj/structure/closet/secure_closet/security, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iT" = ( -/obj/structure/table/wood{ - dir = 9 - }, -/obj/item/clothing/mask/cigarette/cigar/havana, -/obj/item/reagent_containers/food/drinks/sillycup, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iU" = ( -/obj/structure/table/wood{ - dir = 5 - }, -/obj/item/lighter, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iV" = ( -/obj/structure/table/wood{ - dir = 5 - }, -/obj/item/storage/backpack/satchel/fireproof, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iW" = ( -/obj/machinery/modular_computer/console, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"iY" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door/indestructible{ - id = "XCCsec3"; - name = "XCC Shutter 3 Control" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"ja" = ( -/obj/machinery/button/massdriver/indestructible{ - id = "XCCMechs"; - name = "XCC Mechbay Mass Driver"; - pixel_x = 25 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"jb" = ( -/obj/machinery/mecha_part_fabricator, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"jd" = ( -/obj/structure/table/wood{ - dir = 10 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jg" = ( -/obj/structure/table/reinforced, -/obj/item/pen, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jh" = ( -/obj/structure/chair{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jk" = ( -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jq" = ( -/obj/item/stamp, -/obj/structure/table/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jr" = ( -/obj/structure/table, -/obj/item/bot_assembly/medbot, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"js" = ( -/obj/structure/table, -/obj/item/assembly/flash/handheld, -/obj/item/assembly/flash/handheld, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"jt" = ( -/obj/structure/table, -/obj/item/stack/sheet/glass/fifty, -/obj/item/stack/sheet/metal/fifty, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"ju" = ( -/obj/structure/table, -/obj/item/mmi, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"jw" = ( -/obj/machinery/door/airlock/maintenance, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jx" = ( -/obj/machinery/door/window, -/obj/machinery/door/window/northright, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jy" = ( -/obj/structure/sink/puddle, -/turf/open/floor/plasteel{ - icon_state = "asteroid6"; - name = "sand" - }, -/area/awaymission/centcomAway/general) -"jB" = ( -/obj/structure/chair{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jC" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/effect/landmark/vr_spawn/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jK" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/middle{ - dir = 4 - }, -/obj/structure/window/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jL" = ( -/obj/machinery/door/poddoor/shutters{ - id = "XCCFerry"; - name = "XCC Ferry Hangar" - }, -/obj/effect/turf_decal/delivery, -/obj/structure/fans/tiny/invisible, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"jM" = ( -/obj/structure/chair, -/obj/effect/landmark/vr_spawn/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jN" = ( -/obj/machinery/vending/coffee, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jO" = ( -/obj/machinery/vending/cigarette, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jP" = ( -/obj/machinery/door/airlock/external{ - name = "Arrival Airlock" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jQ" = ( -/obj/structure/table, -/obj/item/paper/pamphlet/centcom/visitor_info, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jR" = ( -/obj/machinery/door/poddoor/shutters{ - id = "XCCsec1"; - name = "XCC Checkpoint 1 Shutters" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jS" = ( -/obj/machinery/door/poddoor/shutters{ - id = "XCCsec2"; - name = "XCC Checkpoint 2 Shutters" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"jU" = ( -/obj/structure/sign/warning/vacuum, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/general) -"jX" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/landmark/vr_spawn/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kf" = ( -/obj/machinery/button/door/indestructible{ - id = "XCCFerry"; - name = "Hangar Bay Shutters"; - pixel_x = -28; - pixel_y = 7; - req_access_txt = "2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"kj" = ( -/obj/effect/turf_decal/delivery{ - dir = 6 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kl" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/end{ - dir = 1 - }, -/obj/structure/window/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kn" = ( -/obj/structure/table, -/obj/item/flashlight/flare, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"kp" = ( -/obj/structure/table, -/obj/item/multitool, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"kq" = ( -/obj/structure/table/reinforced, -/obj/item/paper/pamphlet/centcom/visitor_info, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kr" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door/indestructible{ - id = "XCCsec1"; - name = "XCC Shutter 1 Control" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"ku" = ( -/obj/item/paper_bin, -/obj/structure/table/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kv" = ( -/obj/effect/spawner/structure/window/hollow/reinforced/directional{ - dir = 10 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kB" = ( -/obj/machinery/photocopier, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kC" = ( -/obj/item/clipboard, -/obj/structure/table, -/obj/item/taperecorder, -/obj/item/stamp, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kD" = ( -/obj/machinery/door/window/northright{ - icon_state = "right"; - dir = 2 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kE" = ( -/obj/structure/table/reinforced, -/obj/machinery/button/door/indestructible{ - id = "XCCsec2"; - name = "XCC Shutter 2 Control" - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kJ" = ( -/obj/structure/table, -/obj/item/storage/box/handcuffs, -/obj/item/stamp, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kK" = ( -/obj/machinery/door/airlock/external, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kN" = ( -/obj/structure/table/wood, -/obj/item/clothing/accessory/medal, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kO" = ( -/obj/structure/table/wood, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kP" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/food/drinks/trophy/gold_cup, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kQ" = ( -/obj/structure/table/wood, -/obj/item/clothing/accessory/medal/gold, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"kS" = ( -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/thunderdome) -"kT" = ( -/obj/structure/shuttle/engine/propulsion/right{ - dir = 1 - }, -/turf/open/space, -/area/space/nearstation) -"kU" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 1 - }, -/turf/open/space, -/area/space/nearstation) -"kV" = ( -/obj/structure/shuttle/engine/propulsion/left{ - dir = 1 - }, -/turf/open/space, -/area/space/nearstation) -"kW" = ( -/obj/structure/table, -/obj/item/paicard, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"kX" = ( -/obj/structure/table, -/obj/item/camera, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"kY" = ( -/obj/machinery/door/airlock/external, -/obj/structure/fans/tiny/invisible, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"kZ" = ( -/obj/machinery/vending/coffee, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"la" = ( -/obj/structure/table, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lb" = ( -/obj/machinery/vending/cigarette, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lc" = ( -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"le" = ( -/obj/machinery/door/window/southleft, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lf" = ( -/obj/effect/spawner/structure/window/hollow/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lg" = ( -/obj/machinery/door/window/southright, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lh" = ( -/obj/structure/chair, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lj" = ( -/obj/structure/chair/comfy/black{ - dir = 1 - }, -/obj/effect/landmark/vr_spawn/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"ll" = ( -/obj/structure/reagent_dispensers/beerkeg, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lm" = ( -/obj/structure/closet/crate/trashcart, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"ln" = ( -/obj/structure/reagent_dispensers/water_cooler, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lo" = ( -/obj/machinery/vending/snack, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lp" = ( -/obj/structure/table, -/obj/item/lipstick, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lq" = ( -/obj/structure/table/wood, -/obj/item/radio/off, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lr" = ( -/obj/machinery/icecream_vat, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"ls" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lu" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"lv" = ( -/obj/structure/rack, -/obj/item/restraints/legcuffs/beartrap, -/obj/item/twohanded/fireaxe, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lw" = ( -/turf/closed/indestructible/fakeglass, -/area/awaymission/centcomAway/thunderdome) -"lz" = ( -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"lA" = ( -/obj/machinery/door/poddoor{ - id = "XCCtdomemelee"; - name = "XCC Thunderdome Melee" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lB" = ( -/obj/item/reagent_containers/glass/rag, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"lD" = ( -/obj/structure/sink{ - dir = 8; - pixel_x = -12; - pixel_y = 2 - }, -/obj/structure/mirror{ - pixel_x = -28 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lF" = ( -/obj/structure/closet/secure_closet/personal, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lG" = ( -/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/hatchet, -/obj/item/shield/riot, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lI" = ( -/obj/machinery/recharger{ - pixel_y = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lJ" = ( -/obj/machinery/door/poddoor{ - id = "XCCtdome"; - name = "XCC Thunderdome" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lK" = ( -/obj/machinery/igniter/on, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lL" = ( -/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/hatchet, -/obj/item/shield/riot, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lM" = ( -/obj/structure/table/reinforced, -/obj/item/taperecorder, -/obj/item/tape/random, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"lN" = ( -/obj/structure/mirror{ - pixel_x = 28 - }, -/obj/structure/sink{ - dir = 4; - pixel_x = 11 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lS" = ( -/obj/machinery/chem_master, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"lU" = ( -/obj/structure/urinal{ - pixel_y = 32 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lV" = ( -/obj/machinery/shower{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"lX" = ( -/obj/machinery/chem_dispenser, -/obj/item/storage/box/beakers, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"lZ" = ( -/obj/machinery/shower{ - dir = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"ma" = ( -/obj/machinery/door/airlock/freezer, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mb" = ( -/obj/machinery/door/poddoor{ - id = "XCCtdomeguns"; - name = "XCC Thunderdome Guns" - }, -/obj/effect/turf_decal/delivery, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mc" = ( -/obj/item/soap/nanotrasen, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"md" = ( -/obj/structure/rack, -/obj/item/gun/energy/laser/retro, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"me" = ( -/obj/machinery/vending/boozeomat{ - req_access_txt = "" - }, -/turf/closed/indestructible/riveted, -/area/awaymission/centcomAway/cafe) -"mg" = ( -/obj/structure/chair/office/dark{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mh" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/snacks/popcorn, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mi" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/reagent_dispensers/watertank, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mj" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/window/southright, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mk" = ( -/obj/structure/table/reinforced, -/obj/item/reagent_containers/food/snacks/popcorn, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"ml" = ( -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mm" = ( -/obj/structure/table, -/obj/machinery/recharger{ - pixel_y = 4 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mo" = ( -/obj/machinery/modular_computer/console{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mp" = ( -/obj/structure/closet/secure_closet/bar, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mq" = ( -/obj/structure/table, -/obj/item/storage/box/handcuffs, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mr" = ( -/obj/structure/table, -/obj/item/storage/toolbox/electrical, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"ms" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mt" = ( -/obj/machinery/button/door/indestructible{ - id = "XCCtdomemelee"; - name = "XCC Thunderdome Melee!" - }, -/obj/structure/table/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mu" = ( -/obj/structure/chair/comfy/teal, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mv" = ( -/obj/machinery/button/door/indestructible{ - id = "XCCtdomeguns"; - name = "XCC Thunderdome Guns!" - }, -/obj/structure/table/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mw" = ( -/obj/structure/table/reinforced, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"my" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mz" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/door/window/northright, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mE" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mF" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mG" = ( -/obj/machinery/shieldgen, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mH" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mI" = ( -/obj/machinery/portable_atmospherics/pump, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mJ" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mK" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"mN" = ( -/obj/machinery/door/airlock/centcom, -/obj/structure/fans/tiny/invisible, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"mQ" = ( -/obj/structure/safe/floor, -/obj/item/clothing/under/rank/centcom_officer, -/obj/item/clothing/suit/det_suit, -/obj/item/gun/ballistic/revolver/mateba, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"mR" = ( -/obj/machinery/door/airlock/centcom, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"mS" = ( -/obj/machinery/door/airlock/external, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"mT" = ( -/obj/machinery/door/airlock/external, -/obj/structure/fans/tiny/invisible, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"mU" = ( -/obj/structure/rack, -/obj/item/storage/secure/briefcase, -/obj/item/storage/belt/utility/full, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"mW" = ( -/obj/structure/chair/stool{ - pixel_y = 8 - }, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"mX" = ( -/obj/machinery/door/airlock/centcom, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"mZ" = ( -/obj/machinery/door/airlock/centcom, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/plasteel/cafeteria{ - heat_capacity = 1 - }, -/area/awaymission/centcomAway/thunderdome) -"na" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nb" = ( -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nc" = ( -/obj/effect/turf_decal/tile/green{ - dir = 2 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nd" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"ne" = ( -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nf" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"ng" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nh" = ( -/obj/machinery/door/airlock/centcom, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"nj" = ( -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nk" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nl" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nm" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nn" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"no" = ( -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"np" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nq" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nr" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"ns" = ( -/obj/machinery/portable_atmospherics/scrubber/huge, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nt" = ( -/obj/effect/turf_decal/tile/red{ - dir = 2 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nu" = ( -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nv" = ( -/obj/machinery/door/airlock/centcom, -/turf/open/floor/plasteel/white, -/area/awaymission/centcomAway/thunderdome) -"nw" = ( -/obj/effect/vr_clean_master, -/turf/open/floor/goonplaque, -/area/awaymission/centcomAway/thunderdome) -"nx" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"ny" = ( -/obj/effect/turf_decal/tile/green{ - dir = 1 - }, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/awaymission/centcomAway/thunderdome) -"nz" = ( -/obj/structure/table, -/obj/item/reagent_containers/food/condiment/sugar, -/obj/item/reagent_containers/food/condiment/milk, -/obj/item/reagent_containers/food/drinks/ice, -/turf/open/indestructible, -/area/awaymission/centcomAway/thunderdome) -"sL" = ( -/obj/machinery/door/airlock/external{ - name = "Arrival Airlock" - }, -/obj/structure/fans/tiny/invisible, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"zk" = ( -/turf/closed/indestructible/fakeglass, -/area/awaymission/centcomAway/general) -"GJ" = ( -/obj/structure/chair, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"KX" = ( -/obj/effect/vr_clean_master, -/turf/open/indestructible, -/area/awaymission/centcomAway/general) -"Tc" = ( -/obj/effect/vr_clean_master, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) -"TG" = ( -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/effect/vr_clean_master, -/turf/open/indestructible, -/area/awaymission/centcomAway/courtroom) -"TP" = ( -/turf/open/space/basic, -/area/space) -"Um" = ( -/obj/effect/vr_clean_master, -/turf/open/indestructible, -/area/awaymission/centcomAway/cafe) -"VC" = ( -/obj/effect/landmark/vr_spawn/syndicate, -/turf/open/indestructible, -/area/awaymission/centcomAway/hangar) - -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -aV -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -bl -aV -aV -aV -iy -aV -iy -aV -iy -aV -iy -aV -aV -jL -jL -jL -jL -jL -jL -jL -aV -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bc -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -hK -hU -aV -iz -aV -iz -aV -iz -aV -iz -aV -bc -bd -bd -bd -bd -bd -bd -bd -kf -hU -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -ih -iA -ih -iA -ih -iA -ih -iA -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bn -bB -bB -bB -bn -bd -be -be -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -gS -hc -gS -bd -aV -ii -iB -ii -iB -ii -iB -ii -iB -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bo -bC -bV -bV -bn -bn -bd -bd -bd -be -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bB -hd -bB -bd -aV -ij -bd -ij -bd -ij -bd -ij -bd -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bp -bC -bV -bV -bV -bB -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -be -bd -bd -bd -bd -bd -bB -dc -bB -bd -aV -bd -bd -bd -bd -bd -bd -bd -bd -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bq -bC -bn -cm -cx -cm -bB -bB -bB -bB -bB -bB -bB -bB -bB -bn -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bn -he -bn -bd -aV -il -bd -bd -bd -bd -bd -bd -bd -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bn -bB -bn -cn -cn -cJ -cU -da -dl -bB -dz -dz -dz -dz -dz -bB -bn -bd -bd -bd -bd -bd -bd -bd -bd -bd -be -bd -bd -bd -bd -aV -im -im -bd -bd -bd -ja -im -im -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bd -bB -bU -cn -bV -cK -cV -db -db -bB -bV -bV -bV -bV -bV -bB -bB -bB -bB -bn -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aV -aV -aV -mS -mS -aV -aV -aV -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -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 -aV -bd -bd -bF -bV -bV -bV -cL -cW -db -db -bB -dz -dG -bV -dz -dz -bB -ez -eb -eZ -fn -bd -bd -bd -bd -bd -bd -gS -hc -gS -bd -bd -aV -in -aV -iF -bd -bd -bd -bd -jr -aV -bd -bd -bd -be -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -be -bd -bB -bW -cn -bV -cM -cX -cM -dm -cm -bB -bB -dL -bB -bB -cm -cP -cn -fa -fo -bd -bd -bd -bd -bd -bd -bB -hd -bB -bd -bd -aV -bd -aV -bd -iN -bd -jb -bd -js -aV -bd -bd -bd -be -Tc -bd -bd -bd -VC -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bd -bB -bX -cn -bV -bV -bV -bV -bV -bV -bV -bV -bV -bV -bV -et -bV -eR -fb -fo -bd -bd -bd -bd -bd -bd -bB -dc -bB -bd -bd -mT -bd -mS -bd -bd -VC -bd -bd -jt -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bd -bB -bY -cn -bV -cN -cn -cP -cP -cn -cP -cP -bV -cn -dZ -bB -eA -cn -fc -fo -bd -bd -bd -bd -bd -bd -bn -he -bn -bd -bd -aV -bd -aV -bd -bd -bd -jb -bd -ju -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bd -bF -bV -bV -bV -cO -cn -dc -dc -cn -dc -dc -bV -cn -ea -bB -eB -ez -fd -fp -bd -be -bd -bd -bd -bd -bd -bd -bd -bd -hL -aV -io -aV -iF -bd -bd -bd -bd -hG -aV -bd -be -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -TP -TP -TP -TP -TP -TP -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bd -bB -bU -cn -bV -bV -bV -bV -bV -bV -bV -bV -bV -cn -eb -bB -bB -bB -bB -bn -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aV -aV -aV -mR -mR -aV -aV -aV -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bn -bB -bn -cn -cn -cP -cP -cP -bV -cP -cP -cP -bV -cn -bU -bB -bn -bd -bd -bd -bd -bd -bd -gn -bc -bc -bc -bc -bc -bc -hM -aV -aa -zk -gW -gW -gW -gW -zk -aa -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -kn -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -kS -kS -kS -kS -kS -kS -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bo -bC -bn -cm -cx -cm -bB -bB -bF -bB -dA -bB -bF -bB -bB -bn -bd -bd -bd -bd -bd -bd -bd -do -bd -bd -bd -bd -bd -bd -hN -aV -aa -zk -gW -gW -gW -gW -zk -aa -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -kn -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -lD -lc -lc -lc -lc -lc -kS -kS -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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aV -bd -bp -bC -bV -bV -bV -bB -bd -dd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -do -bd -bd -bd -bd -bd -bd -hO -aV -aa -zk -gW -gW -gW -gW -zk -aa -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -kp -aV -aa -TP -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -lc -lc -lF -kS -lU -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aV -bd -bq -bC -bV -bV -bn -bn -bd -bd -bd -bd -bd -bd -bd -bd -be -bd -bd -bd -bd -bd -bd -bd -bd -do -bd -bd -bd -bd -bd -bd -hP -aV -aa -zk -gW -gW -gW -gW -zk -aa -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -hG -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -lc -lc -lF -kS -lc -lc -mc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aV -bd -bn -bB -bB -bB -bn -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -do -bd -bd -bd -dd -bd -bd -bQ -aV -aa -zk -gW -gW -gW -gW -zk -aa -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -lF -lc -lF -kS -lV -lV -lV -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aV -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -bd -aV -bs -bd -bd -bd -bd -bd -bd -bd -bd -go -gE -gE -gU -hg -hx -hG -hG -aV -aa -zk -gW -gW -gW -gW -zk -aa -aV -aV -aV -mN -aV -aV -aV -mN -aV -aV -aV -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -kS -kS -nv -kS -kS -kS -kS -kS -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aV -bd -be -bd -bd -bd -bd -bd -bd -bd -dn -bc -bc -bc -dM -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -aV -eu -eu -gW -gW -gW -gW -eu -eu -eu -eu -gW -gW -zk -iu -zk -gW -gW -eu -bk -bk -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -kS -kS -kS -kS -kS -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ab -ab -aV -bd -bs -bd -bd -bd -aV -bd -bd -aV -do -bd -bd -bd -dN -aV -bb -ag -ag -ag -ag -ag -ag -ag -ag -dy -eu -hV -gW -gJ -gJ -gJ -eu -hW -gW -gW -gW -gW -gW -gW -gW -gW -hW -eu -gW -gW -zk -iu -zk -gW -gW -zk -aa -bk -bk -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ab -aE -aP -aV -aV -aV -aV -aV -aV -aV -ck -ck -aV -dp -dv -dB -dB -dO -aV -ag -ag -ag -ag -ag -ag -ag -ag -ag -bj -eu -hX -gl -gW -gW -gW -eu -gW -gW -zk -zk -zk -zk -zk -zk -gW -gW -eu -gW -gW -zk -iu -zk -gW -gW -zk -aa -aa -bk -bk -aa -aa -aa -aa -aa -aa -aa -kS -kS -lc -lc -lc -lc -lc -lc -lc -lc -kS -kS -kS -kS -kS -kS -kS -lc -lc -lc -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ab -ag -ag -ag -ag -ag -ag -ag -ag -ag -ab -ag -ag -aV -aV -aV -aV -aV -aV -aV -ag -eu -eu -eu -eu -eu -eu -eu -ag -ew -eu -gW -gW -gW -gW -gW -eu -gW -gW -zk -iu -iu -iu -iu -zk -gW -gW -eu -gW -gW -zk -iu -zk -gW -gW -zk -aa -aa -aa -bk -bk -aa -aa -aa -aa -aa -aa -kS -kW -lc -lc -kS -kS -kS -kS -kS -kS -kS -lG -lG -lG -lG -lc -nh -lc -lc -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ag -ag -ag -ag -ag -ag -eG -ag -ag -ag -aR -ag -ag -aR -ag -ag -ag -ag -ag -ag -ag -eu -gW -gW -gW -gW -gW -eu -ag -ag -eu -gW -gW -hh -hh -hH -eu -gW -gW -zk -zk -zk -zk -zk -zk -gW -gW -eu -gW -gW -zk -iu -zk -gW -gW -zk -aa -aa -aa -aa -bk -bk -aa -aa -aa -aa -aa -kS -kX -lc -lc -mZ -lc -lc -nz -kS -kS -kS -lc -lc -lc -lc -lc -kS -kS -kS -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ag -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ag -ag -ac -ac -ac -ac -ac -ac -ac -ac -eu -gW -gW -gW -fq -fM -eu -ag -ey -eu -eu -dY -hi -hy -eu -eu -hW -gW -gW -gW -gW -gW -gW -gW -gW -hW -eu -gW -gW -zk -iu -zk -gW -gW -eu -aa -aa -aa -aa -aa -bk -bk -aa -aa -aa -aa -kS -kX -lc -lc -kS -lc -lc -nz -kS -lv -lA -lI -lI -lc -lI -lI -mb -md -kS -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ag -ac -aF -aQ -ac -aF -aQ -ac -aF -aQ -ac -cj -cj -ac -aF -aQ -ac -aF -aQ -ac -ec -eu -gW -eS -gW -gW -fN -eu -ag -ag -eu -gW -gW -gW -gW -gW -eu -eu -eu -gW -gW -gW -gW -gW -gW -eu -eu -eu -eu -dY -eu -eu -eu -dY -eu -eu -eu -eu -eu -eu -eu -eu -eu -aa -aa -aa -aa -kS -kS -lc -lc -kS -lc -lc -lr -kS -lv -lA -lc -lc -lc -lc -lc -mb -md -kS -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ag -ac -ai -aG -ac -ai -aG -ac -ai -aG -ac -ai -ai -ac -dq -aG -ac -dq -aG -ad -ec -eu -gW -gW -gW -fq -fO -eu -ag -gp -eu -lB -gW -eJ -gW -gW -dY -gW -dY -gW -gW -gW -eJ -gW -gW -jw -gW -jw -gW -gW -gW -gW -gW -gW -gW -kj -kq -gW -gW -kB -gW -iR -eu -aa -aa -aa -aa -kT -kS -lc -lc -kS -lc -lc -lr -kS -lv -lA -lc -lc -lc -lc -lc -mb -md -kS -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ag -ac -aH -ai -ac -aH -ai -ac -aH -ai -ac -ai -ai -ac -aH -ai -ac -aH -ai -ad -ec -eu -gW -gW -gW -gW -gW -eu -ag -gp -eu -ir -gW -gW -gW -gW -eu -eu -eu -eu -dY -eu -eu -eu -eu -eu -eu -eu -gW -gW -gW -gW -gW -gW -gW -kj -iQ -gW -gW -gW -gW -iM -eu -aa -aa -aa -aa -kU -kS -lc -lc -kS -lc -lc -lc -kS -lv -lA -lc -lc -lc -lc -lc -mb -md -kS -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -aR -ac -ac -bt -ac -ac -bt -ac -ac -bt -ac -ai -ai -ac -ac -bt -ac -ac -bt -ac -ec -eu -eu -eT -eu -eu -eu -eu -aR -eu -eu -eu -dY -eu -eu -eu -eu -eu -ip -gW -gW -gW -gW -gW -gW -eu -iu -zk -jM -jQ -jQ -jX -gW -gW -gW -kj -hk -kr -gW -eJ -gW -gW -eu -aa -aa -aa -aa -kV -kS -lc -lc -kS -mk -mk -mk -kS -kS -kS -lJ -lJ -lJ -lJ -lJ -kS -kS -kS -kS -mX -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ac -ec -eu -gW -gW -gW -fG -gW -gW -fV -gW -gW -gW -gW -gW -gW -gW -gW -eu -iq -gW -gW -gW -iT -jd -jk -eu -jy -zk -jM -jQ -jQ -jX -gW -gW -gW -kj -jg -eW -gW -gW -gW -gW -eu -aa -aa -TP -aa -kS -kS -lc -lc -kS -lc -lc -lc -lh -lw -ns -lu -lu -lu -lu -lu -nf -lw -lc -lc -lc -mm -kS -aa -aa -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ad -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ac -ec -eu -cd -gW -gW -ft -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -eu -gW -gW -gW -gW -iU -eW -mQ -eu -iu -zk -gW -gW -gW -gW -gW -gW -gW -kj -gw -gQ -gQ -kC -gW -gW -eu -aa -aa -aa -aa -aa -kS -lc -lc -kS -lc -lc -lc -lh -lw -nm -lc -lc -lc -lc -lc -ng -lw -lc -lc -lc -la -kS -aa -aa -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ad -ai -ai -aI -aI -ai -ai -ai -ai -aI -aI -aI -aI -aI -ai -ai -ai -aI -aI -ai -ad -ec -eu -bN -gW -dr -fu -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -eu -mU -gW -gW -gW -iV -iW -gW -eu -eu -eu -eu -dY -eu -eV -eu -dY -eu -eu -eu -eu -eu -eu -eu -dY -eu -bk -bk -bk -bk -aa -kS -lc -lc -kS -lc -lc -lc -lh -lw -nn -lc -nt -nx -nb -lc -nl -lw -mg -lc -lc -mo -kS -aa -aa -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ad -ai -ai -aF -aF -ai -ai -ai -bJ -cb -co -aF -aF -aF -ai -ai -ai -aF -aF -ai -ad -ec -eu -cd -gW -dr -fv -gW -gW -gd -gr -gF -gM -gX -gr -eu -gW -gW -eu -is -gW -gW -gW -iW -eW -gW -eu -iu -iu -eu -jR -jR -jR -jR -jR -jR -jR -eu -iQ -gW -eV -gW -gW -eu -zk -zk -zk -eu -aa -kS -lc -lc -kS -lc -lc -lc -lh -lw -nm -lc -lc -lc -lc -lc -ng -lw -mg -lc -mW -mo -kS -aa -aa -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ad -ai -ai -aF -aF -ai -ai -ai -bJ -cc -aF -aF -aF -aF -ai -ai -ai -dC -aF -ai -ad -ec -eu -gW -gW -dw -fw -gW -gW -fw -gs -gW -gN -gN -hj -fu -gW -gW -eu -eu -eu -eu -eu -eu -eu -eu -eu -zk -zk -eu -dY -eu -eV -eu -dY -eu -eV -eu -ku -jB -kD -gW -gW -eu -kN -kP -kP -eu -aa -kS -lc -lc -kS -ll -lc -lc -lh -lw -nn -lc -lc -lK -lc -lc -nl -lw -mg -lc -lc -lc -kS -aa -aa -TP -TP -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ad -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ac -ac -eu -eu -eu -eu -eu -gW -gW -eu -gt -gW -gO -gW -hk -fv -gW -gW -eu -eu -eu -gW -gW -gW -gW -gW -fv -jB -jB -jN -gW -jB -gW -jB -gW -jB -gW -gd -kv -iQ -eV -gW -gW -eu -zk -zk -zk -zk -zk -kS -kS -kY -kS -lc -lc -lc -lh -lw -nm -lK -lc -lc -lc -lK -ng -lw -mg -lc -lc -lc -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ad -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -bt -gW -gW -dY -gW -gW -gW -gW -gf -gu -gW -gW -gZ -hl -fv -gW -gW -eu -it -eV -gW -gW -gW -gW -gW -fw -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -fw -gW -gW -gW -gW -gW -kK -gW -gW -gW -kK -gW -kY -lc -lc -le -lc -lc -lc -lh -lw -np -lc -np -nx -ne -lc -ne -lw -lc -lc -lc -lc -mt -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ad -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -aK -gW -gW -eV -gW -gW -gW -gW -fv -iW -gG -KX -gW -hl -fv -gW -gW -dY -it -dY -gW -gW -eJ -gW -gW -jx -gW -gW -gW -gW -gW -KX -gW -gW -gW -gW -gW -gW -gW -gW -gM -jK -eu -gW -eJ -gW -zk -zk -kS -lc -lc -lf -lc -lc -lc -lh -lw -lc -lc -ng -nw -nd -lc -lc -lw -lq -lj -lc -lc -mu -mw -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -aj -ai -ai -ai -ai -aI -aI -aI -ai -ai -Um -ai -ai -aI -aI -aI -ai -ai -ai -ai -bt -gW -gW -dY -gW -gW -gW -gW -fw -gw -gW -gW -gZ -hl -fv -gW -gW -eu -it -eV -gW -gW -gW -gW -gW -fu -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -fu -gW -gW -gW -gW -gW -kK -gW -gW -gW -kK -gW -kY -lc -lc -lg -lc -lc -lc -lh -lw -no -lc -no -ny -nc -lc -nc -lw -lc -lc -lc -lc -mv -kS -kS -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 -ac -ac -ac -aK -bt -aK -aW -aW -aW -ac -aK -cB -aK -ac -aW -aW -aW -aK -bt -aK -ac -ac -eu -eu -eu -eu -eu -gW -gW -eu -gx -gW -gP -gW -ho -fv -gW -gW -eu -eu -eu -gW -gW -gW -gW -gW -fv -jh -jh -jO -gW -jC -gW -jh -gW -jh -gW -gh -gr -iQ -eV -gW -gW -eu -zk -zk -zk -zk -zk -kS -kS -kY -kS -lc -lc -lc -lh -lw -nd -lK -lc -lc -lc -lK -nj -lw -mg -lc -lc -lc -kS -kS -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 -ac -al -ai -ai -ai -aW -ai -ai -ai -ac -ai -ai -ai -ac -ai -ai -ai -aW -ai -ai -ai -al -eu -eH -gW -eH -fu -gW -gW -gf -gy -gW -gQ -gQ -lM -fw -gW -gW -eu -iu -eu -eu -iQ -hk -jg -gw -eu -zk -zk -eu -dY -eu -eV -eu -dY -eu -kl -eu -ku -jh -kD -gW -gW -eu -kO -kP -kQ -eu -aa -kS -lc -lc -kS -ll -lc -lc -lh -lw -nq -lc -lc -lK -lc -lc -nk -lw -mg -lc -lc -mp -kS -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 -ac -am -ai -ai -ai -ai -ai -ai -bK -ac -ai -ai -ai -ac -bK -ai -ai -ai -ai -ai -ai -am -eu -eI -eJ -eI -fv -gW -gW -gh -gr -gF -gM -gX -gr -eu -gW -gW -eu -zk -eu -gW -gW -iY -jh -hl -eu -iu -iu -eu -jS -jS -jS -jS -jS -jS -jS -eu -iQ -gW -eV -gW -gW -eu -zk -zk -zk -eu -aa -kS -lc -lc -kS -lm -lc -lc -lh -lw -nd -lc -lc -lc -lc -lc -nj -lw -mg -lc -lc -mq -kS -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 -ac -bg -ay -aL -ai -ai -ai -ai -aF -aK -ai -aW -ai -aK -aF -ai -ai -ai -ai -aL -ay -bg -eu -gW -gW -gW -fw -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -dY -gW -dY -gW -gW -eJ -gW -hl -eu -eu -eu -eu -dY -eu -eV -eu -dY -eu -eu -eu -eu -eu -eu -eu -dY -eu -bk -bk -bk -bk -aa -kS -lc -lc -kS -ll -lc -lc -lh -lw -nq -lc -nu -ny -na -lc -nk -lw -mg -lc -lc -mh -kS -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 -ac -ao -az -az -az -az -az -az -az -mj -cq -aW -cS -mz -az -az -az -az -az -az -az -el -eu -eK -gW -gW -fy -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -gW -eu -iv -eu -iM -iR -gW -gW -jq -eu -iu -zk -gW -gW -gW -gW -gW -gW -gW -gW -gW -kj -iQ -gW -gW -gW -eu -aa -aa -aa -aa -aa -kS -lc -lc -kS -ln -lc -lc -lh -lw -nd -lc -lc -lc -lc -lc -nj -lw -lc -lc -lc -mr -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -ap -ai -ai -ai -ai -ac -me -ac -ac -cr -aW -cr -ac -ac -me -ac -ai -ai -ai -ai -ap -eu -eL -eW -gW -fU -gW -gW -fW -gW -gW -gW -gW -gW -gW -gW -gW -eu -aa -eu -eu -eu -eu -eu -eu -eu -iu -zk -GJ -gW -gW -gW -gW -gW -gW -gW -gW -kj -hk -kE -eJ -gW -eu -aa -aa -aa -aa -kS -kS -lc -lc -kS -lo -lc -lc -lh -lw -nr -lz -lz -lz -lz -lz -nf -lw -lc -lc -lc -ms -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -aq -ai -ai -ai -aY -ac -bu -bL -ac -cr -ai -cr -ac -bL -bu -ac -dE -ai -ai -ai -aq -eu -eu -gW -gW -eu -fQ -eu -aR -eY -eY -eY -fT -eY -eu -dY -eu -eu -bk -bk -bk -bk -bk -bk -bk -eu -iu -zk -GJ -gW -gW -gW -gW -gW -gW -gW -gW -kj -jg -eW -gW -gW -eu -aa -aa -aa -aa -kT -kS -lc -lc -kS -kS -kS -kS -kS -kS -kS -lJ -lJ -lJ -lJ -lJ -kS -kS -kS -kS -mX -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -ar -ai -ai -ai -ai -ma -ai -ai -ac -cr -ai -cr -ac -ai -ai -ma -ai -ai -ai -ai -ar -eu -eM -gW -gW -fA -gW -eu -ag -eY -gH -fm -fm -eY -hA -gW -gW -eu -aa -aa -aa -aa -aa -aa -aa -eu -iu -zk -gW -gW -gW -gW -gW -gW -gW -gW -gW -kj -gw -gQ -gQ -kJ -eu -aa -aa -aa -aa -kU -kS -lc -lc -lc -lc -lc -lc -kS -lv -lA -lc -lc -lc -lc -lc -mb -md -kS -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -as -aA -aM -aM -aZ -ac -bw -bM -ac -cr -ai -cr -ac -bM -bw -ac -aZ -aM -aM -aA -as -eu -cT -gW -gW -fB -fR -eu -ag -eY -gH -fm -fm -eY -gW -hJ -gW -eu -aa -aa -aa -aa -aa -aa -aa -eu -eu -eu -jP -zk -jU -eu -jU -zk -jP -zk -jP -zk -eu -eu -eu -eu -eu -aa -aa -aa -aa -kV -kS -lc -lc -lh -la -lp -ls -kS -lv -lA -lc -lc -lc -lc -lc -mb -md -kS -lc -lc -kS -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 -ac -at -aB -aB -aB -ba -ac -ac -ac -ac -cr -ai -cr -ac -ac -ac -ac -at -aB -aB -aB -ba -eu -gW -gW -gW -gW -gW -eu -ag -eY -gH -fm -fm -eY -eu -eu -eu -eu -aa -aa -aa -aa -aa -aa -aa -aa -aa -zk -gW -zk -aa -aa -aa -zk -gW -zk -gW -zk -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -lc -lc -lh -la -la -ls -kS -lv -lA -lc -lc -lc -lc -lc -mb -md -kS -lc -lc -kS -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 -ac -au -au -au -au -au -lX -bx -mi -ce -ml -ai -my -ce -mi -ds -lX -au -au -au -au -au -eu -eP -eW -gW -fC -eW -eu -ag -eY -gH -fm -fm -hq -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -zk -sL -zk -aa -aa -aa -zk -sL -zk -sL -zk -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kZ -lc -lc -lh -la -la -ls -kS -lv -lA -lI -lI -lc -lI -lI -mb -md -kS -lc -lc -kS -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 -ac -av -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -ai -av -eu -eQ -gW -gW -eQ -gW -eu -ag -eY -gH -fm -fm -hq -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -la -lc -lc -lc -lc -lc -lc -kS -kS -kS -lc -lc -lc -lc -lc -kS -kS -kS -lc -lc -kS -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 -ac -av -ai -ai -ai -ai -ai -ai -ai -ai -ai -cE -ai -ai -ai -ai -ai -ai -ai -ai -ai -av -eu -eu -eu -eu -eu -eu -eu -ag -eY -eY -fm -fm -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -lb -lc -lc -lc -lc -lc -lc -lc -lc -kS -lL -lL -lL -lL -lc -nh -lc -lc -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -au -au -au -au -au -lS -bz -bz -aK -ai -cF -ai -aK -bz -bz -lS -au -au -au -au -au -ac -ag -ag -ag -ag -ag -ag -ag -gB -eY -fT -fT -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -lc -lc -lc -lc -lc -lc -lc -lc -kS -kS -kS -kS -kS -kS -kS -lc -lc -lc -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ac -ac -ac -ac -ac -ac -ac -ac -ac -cg -ai -cG -ai -cg -ac -ac -ac -ac -ac -ac -ac -ac -ac -ag -eY -eY -eY -eY -eY -eY -eY -eY -fm -fm -eY -eY -eY -eY -eY -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ag -bj -bA -ac -ch -ai -cH -ai -ch -ac -bA -dy -ac -mF -mH -mJ -ac -ew -ag -eY -fj -fm -eY -gj -gj -ia -eY -fm -fm -eY -gj -gj -hR -hY -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -kS -kS -kS -kS -kS -lc -lc -lc -lc -lc -lc -lc -lc -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aS -ag -ag -ag -ac -ch -ai -ai -ai -ch -ac -ag -ag -ac -mG -ai -mK -ac -ex -ag -eY -fk -fm -eY -fm -fm -fm -fT -fm -fm -fT -fm -fm -fm -hZ -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -kS -kS -nv -kS -kS -kS -kS -kS -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aS -bh -ag -ag -ac -ad -ad -ad -ad -ad -ac -ag -ag -ac -mE -ai -mI -ac -bb -ag -eY -fl -fm -eY -fj -fZ -fZ -eY -fm -fm -eY -eY -eY -eY -eY -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -lF -lc -lF -kS -lZ -lZ -lZ -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aS -bh -ag -ag -ab -aa -aa -aa -aa -aa -ab -ag -ag -ac -ac -dQ -ac -ac -ag -ag -eY -eY -fT -eY -eY -eY -eY -eY -fm -fm -eY -fm -fm -hS -ia -hq -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -lc -lc -lF -kS -lc -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aS -ag -ag -ag -ab -aS -aS -aS -aS -aS -ab -ag -ag -ag -ag -ag -ag -ag -ag -ag -eY -fm -fm -fm -fm -fm -fm -eY -fm -fm -eY -fm -gH -fH -ib -hq -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -lc -lc -lF -kS -lU -lc -lc -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -bb -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -eY -fm -fm -fm -fm -fm -fm -fT -fm -fm -fT -fm -fm -fH -fm -hq -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -lc -lN -lc -lc -lc -lc -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ab -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ag -ab -ab -ab -ab -ag -ag -eY -fm -fm -fm -fm -fm -fm -eY -fm -fm -eY -fm -fm -fm -fm -hq -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -kS -kS -kS -kS -kS -kS -kS -kS -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ab -ab -ab -cj -cv -ab -ab -cv -cj -ab -ab -ab -ab -aa -aa -ab -ag -ag -eY -eY -fT -eY -eY -eY -eY -eY -fT -fT -eY -eY -eY -eY -eY -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -ab -ag -ab -aa -aa -ab -ag -ab -aa -aa -aa -aa -aa -ab -ag -ag -eY -fm -fm -eU -ga -fH -ib -fm -fm -fm -fm -fm -eY -aa -aa -bk -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -bk -bk -ab -ck -ab -bk -bk -ab -ck -ab -bk -bk -bk -bk -bk -ab -ag -ag -eY -fm -fH -fF -ga -fH -ib -fm -ib -ib -ib -fm -eY -aa -aa -bk -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -bk -cl -bk -aa -aa -bk -cl -bk -bk -bk -bk -bk -bk -ab -ag -ag -eY -fm -gH -fH -TG -fm -fm -fm -ib -ib -ib -fm -eY -aa -aa -bk -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -ab -ag -ag -eY -fm -fH -fh -ga -fH -ib -fm -ib -ib -ib -fm -eY -aa -aa -bk -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aS -ag -ag -eY -fm -fm -eU -ga -fH -ib -fm -fm -fm -fm -fm -eY -aa -aa -bk -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aS -ag -ag -eY -fm -fL -fF -fF -fF -fF -fF -eY -eY -eY -eY -eY -hq -hq -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aS -ag -ag -eY -fm -fJ -eN -eN -eN -eN -eN -eY -fm -fm -fm -fm -fm -ie -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aS -ag -ag -eY -fm -fK -eN -eN -eN -eN -eN -fT -fm -fm -gj -gj -gj -fm -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -ab -ag -ag -eY -eY -eY -eY -eY -eY -eY -eY -eY -fm -gH -fH -fH -fH -ib -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -ab -ab -ag -ag -ag -ag -ag -ag -ag -ag -ag -aR -fm -gH -fH -fH -fH -ib -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aa -ab -ex -bb -ag -ag -ag -gb -ag -aE -gI -eY -fm -fm -eN -eN -eN -fm -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aa -ab -ab -ab -ab -ab -ab -ab -ab -ab -ab -eY -hb -fm -fm -fm -fm -ig -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -eY -eY -hq -hq -hq -hq -hq -eY -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -hQ -cl -hQ -aa -aa -hQ -cl -hQ -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -"} -(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 -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -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/RandomZLevels/beach.dmm b/_maps/RandomZLevels/beach.dmm index 393fda3d599..c6584d225ba 100644 --- a/_maps/RandomZLevels/beach.dmm +++ b/_maps/RandomZLevels/beach.dmm @@ -219,7 +219,7 @@ /turf/open/floor/plating/beach/sand, /area/awaymission/beach) "aO" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /turf/open/floor/wood, /area/awaymission/beach) "aP" = ( diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm index 8516a7bd4b4..8182c457e74 100644 --- a/_maps/RandomZLevels/moonoutpost19.dmm +++ b/_maps/RandomZLevels/moonoutpost19.dmm @@ -1410,7 +1410,7 @@ dir = 2; locked = 1; name = "Worn-out APC"; - pixel_y = -25; + pixel_y = -23; req_access = null; req_access_txt = "150"; start_charge = 0 @@ -3413,7 +3413,7 @@ dir = 4; locked = 0; name = "Worn-out APC"; - pixel_x = 25; + pixel_x = 24; req_access = null; start_charge = 100 }, @@ -3528,7 +3528,7 @@ }, /area/awaymission/moonoutpost19/research) "gP" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel{ heat_capacity = 1e+006 }, @@ -4980,7 +4980,7 @@ dir = 1; locked = 0; name = "Worn-out APC"; - pixel_y = 25; + pixel_y = 23; req_access = null; start_charge = 100 }, @@ -6196,8 +6196,7 @@ }, /area/awaymission/moonoutpost19/arrivals) "mn" = ( -/obj/structure/closet/secure_closet{ - icon_state = "freezer"; +/obj/structure/closet/secure_closet/freezer{ locked = 0; name = "meat fridge"; req_access_txt = "201" @@ -6212,8 +6211,7 @@ }, /area/awaymission/moonoutpost19/arrivals) "mo" = ( -/obj/structure/closet/secure_closet{ - icon_state = "freezer"; +/obj/structure/closet/secure_closet/freezer{ locked = 0; name = "refrigerator"; req_access_txt = "201" diff --git a/_maps/RandomZLevels/research.dmm b/_maps/RandomZLevels/research.dmm index 1b51f2e06cd..38436a719a4 100644 --- a/_maps/RandomZLevels/research.dmm +++ b/_maps/RandomZLevels/research.dmm @@ -412,7 +412,7 @@ auto_name = 1; dir = 4; name = "Engineering APC"; - pixel_x = 27; + pixel_x = 24; pixel_y = 2 }, /turf/open/floor/plating, @@ -1238,7 +1238,7 @@ /turf/open/floor/plasteel, /area/awaymission/research/interior/genetics) "cV" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/purple{ @@ -4391,7 +4391,7 @@ /turf/open/floor/plasteel, /area/awaymission/research/interior/genetics) "iy" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/decal/cleanable/blood, /obj/effect/turf_decal/tile/purple{ dir = 1 @@ -4457,7 +4457,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Security APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-8" @@ -5903,7 +5903,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Medbay APC"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plating, /area/awaymission/research/interior/medbay) @@ -5925,7 +5925,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Escape APC"; - pixel_y = -24 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-8" diff --git a/_maps/RandomZLevels/snowdin.dmm b/_maps/RandomZLevels/snowdin.dmm index 1f6074657bf..480568bfeee 100644 --- a/_maps/RandomZLevels/snowdin.dmm +++ b/_maps/RandomZLevels/snowdin.dmm @@ -130,7 +130,7 @@ /turf/open/floor/plasteel/dark, /area/awaymission/snowdin/post/research) "aF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/dark, @@ -141,13 +141,13 @@ /turf/open/floor/plasteel/dark, /area/awaymission/snowdin/post/research) "aH" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/dark, /area/awaymission/snowdin/post/research) "aI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/dark, @@ -641,7 +641,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Dorms APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -804,7 +804,7 @@ dir = 1; name = "Kitchen APC"; pixel_x = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -1481,11 +1481,11 @@ /turf/open/floor/plasteel, /area/awaymission/snowdin/post/research) "dn" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /turf/open/floor/plasteel/freezer, /area/awaymission/snowdin/post/kitchen) "do" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /obj/structure/spider/stickyweb, /turf/open/floor/plasteel/freezer, /area/awaymission/snowdin/post/kitchen) @@ -1672,7 +1672,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/awaymission/snowdin/post/kitchen) @@ -1853,7 +1853,7 @@ /obj/machinery/power/apc{ dir = 2; name = "Gateway APC"; - pixel_y = -24; + pixel_y = -23; req_access = 150 }, /obj/structure/cable/yellow{ @@ -1870,7 +1870,7 @@ dir = 1; name = "Research Center APC"; pixel_x = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "4-8" @@ -1899,7 +1899,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Mess Hall APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -2503,7 +2503,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Outpost Hallway APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -3058,7 +3058,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Garage APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -4840,7 +4840,7 @@ dir = 1; name = "Custodials APC"; pixel_x = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -6300,7 +6300,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Engineering APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "4-8" @@ -6603,7 +6603,7 @@ dir = 1; name = "Security Outpost APC"; pixel_x = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -6645,7 +6645,7 @@ /turf/open/floor/plasteel, /area/awaymission/snowdin/post/secpost) "oh" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/item/shard, @@ -6800,7 +6800,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Hydroponics APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -7695,7 +7695,7 @@ /turf/open/floor/engine/cult, /area/awaymission/snowdin/post/cavern2) "qI" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/cafeteria, /area/awaymission/snowdin/post/cavern2) "qJ" = ( @@ -8333,7 +8333,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Main Outpost APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow, /obj/structure/cable/yellow{ @@ -9032,7 +9032,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Main Outpost APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -10048,7 +10048,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Main Outpost APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow, /turf/open/floor/plating, @@ -11509,7 +11509,7 @@ }, /area/awaymission/snowdin/post/minipost) "Ax" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plating, @@ -11832,7 +11832,7 @@ dir = 1; name = "Recon Post APC"; pixel_x = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -14226,7 +14226,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Robotics APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "1-2" @@ -14740,7 +14740,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Main Outpost APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "4-8" @@ -14754,7 +14754,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Mechbay APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -15510,7 +15510,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Mining Post APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-8" diff --git a/_maps/RandomZLevels/spacebattle.dmm b/_maps/RandomZLevels/spacebattle.dmm index 93affc2dcb9..d335f4f79c2 100644 --- a/_maps/RandomZLevels/spacebattle.dmm +++ b/_maps/RandomZLevels/spacebattle.dmm @@ -570,7 +570,7 @@ }, /area/awaymission/spacebattle/cruiser) "cH" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/cafeteria{ dir = 2 }, @@ -2472,7 +2472,7 @@ /area/awaymission/spacebattle/cruiser) "jt" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun/advtaser, +/obj/item/gun/energy/disabler, /turf/open/floor/engine, /area/awaymission/spacebattle/cruiser) "ju" = ( @@ -2543,7 +2543,7 @@ "jB" = ( /obj/structure/rack, /obj/structure/window/reinforced, -/obj/item/gun/energy/e_gun/advtaser, +/obj/item/gun/energy/disabler, /turf/open/floor/engine, /area/awaymission/spacebattle/cruiser) "jC" = ( diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm index 5d6a04821dd..ed9c6da3f04 100644 --- a/_maps/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/RandomZLevels/undergroundoutpost45.dmm @@ -1760,8 +1760,7 @@ /obj/item/reagent_containers/food/snacks/meat/slab/monkey, /obj/item/reagent_containers/food/snacks/meat/slab/monkey, /obj/item/reagent_containers/food/snacks/meat/slab/monkey, -/obj/structure/closet/secure_closet{ - icon_state = "freezer"; +/obj/structure/closet/secure_closet/freezer{ locked = 0; name = "meat fridge"; req_access_txt = "201" @@ -1784,8 +1783,7 @@ /obj/item/reagent_containers/food/condiment/milk, /obj/item/storage/fancy/egg_box, /obj/effect/decal/cleanable/dirt, -/obj/structure/closet/secure_closet{ - icon_state = "freezer"; +/obj/structure/closet/secure_closet/freezer{ locked = 0; name = "refrigerator"; req_access_txt = "201" @@ -2168,7 +2166,7 @@ }, /area/awaymission/undergroundoutpost45/central) "ez" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 4 }, /obj/effect/turf_decal/tile/neutral, @@ -2192,7 +2190,7 @@ }, /area/awaymission/undergroundoutpost45/central) "eC" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -2292,7 +2290,7 @@ }, /area/awaymission/undergroundoutpost45/central) "eL" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/red, @@ -2319,7 +2317,7 @@ }, /area/awaymission/undergroundoutpost45/central) "eN" = ( -/obj/structure/chair/office{ +/obj/structure/chair{ dir = 4 }, /obj/effect/decal/cleanable/dirt, @@ -2551,7 +2549,7 @@ dir = 2; locked = 0; name = "Hydroponics APC"; - pixel_y = -25; + pixel_y = -23; req_access = null; start_charge = 100 }, @@ -5015,7 +5013,7 @@ dir = 1; locked = 0; name = "UO45 Bar APC"; - pixel_y = 25; + pixel_y = 23; req_access = null; start_charge = 100 }, @@ -6163,7 +6161,7 @@ dir = 2; locked = 0; name = "UO45 Research Division APC"; - pixel_y = -25; + pixel_y = -23; req_access = null; start_charge = 100 }, @@ -6721,7 +6719,7 @@ dir = 2; locked = 0; name = "UO45 Gateway APC"; - pixel_y = -25; + pixel_y = -23; req_access = null; start_charge = 100 }, @@ -7123,7 +7121,7 @@ }, /area/awaymission/undergroundoutpost45/research) "np" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel{ @@ -10229,7 +10227,7 @@ dir = 2; locked = 0; name = "UO45 Mining APC"; - pixel_y = -25; + pixel_y = -23; req_access = null; start_charge = 100 }, @@ -10603,7 +10601,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -11782,7 +11780,7 @@ dir = 5; level = 1 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel{ @@ -12774,7 +12772,7 @@ }, /area/awaymission/undergroundoutpost45/engineering) "wH" = ( -/obj/structure/chair/office, +/obj/structure/chair, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral{ dir = 1 diff --git a/_maps/RandomZLevels/wildwest.dmm b/_maps/RandomZLevels/wildwest.dmm index d3636c9558f..dfb369db696 100644 --- a/_maps/RandomZLevels/wildwest.dmm +++ b/_maps/RandomZLevels/wildwest.dmm @@ -317,7 +317,7 @@ /turf/open/space, /area/space/nearstation) "bx" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -400,7 +400,7 @@ }, /area/awaymission/wildwest/mines) "bN" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /obj/item/reagent_containers/food/snacks/meat/slab/synthmeat, /obj/item/reagent_containers/food/snacks/meat/slab/synthmeat, /obj/item/reagent_containers/food/snacks/meat/slab/synthmeat, @@ -621,7 +621,7 @@ }, /area/awaymission/wildwest/gov) "cs" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/cafeteria{ dir = 5 }, @@ -1674,13 +1674,13 @@ }, /area/awaymission/wildwest/mines) "fE" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/wood, /area/awaymission/wildwest/mines) "fF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/wood, diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index f3940f0834e..cc995c423bd 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -70,33 +70,33 @@ /turf/closed/wall/r_wall, /area/security/prison) "aaj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall/r_wall, /area/security/prison) "aak" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/prison) "aal" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/prison) "aam" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -179,7 +179,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aav" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -291,7 +291,7 @@ /turf/open/floor/plasteel/cafeteria, /area/security/prison) "aaL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/window/reinforced{ @@ -336,7 +336,7 @@ /turf/open/floor/plasteel/cafeteria, /area/security/prison) "aaQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -396,7 +396,7 @@ /area/security/prison) "aaY" = ( /obj/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -530,7 +530,7 @@ /area/crew_quarters/heads/hos) "abr" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -540,10 +540,10 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hos) "abs" = ( +/obj/machinery/power/tracker, /obj/structure/cable{ icon_state = "0-2" }, -/obj/machinery/power/tracker, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/port/fore) "abt" = ( @@ -631,7 +631,7 @@ /turf/open/floor/plasteel, /area/security/prison) "abE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -870,7 +870,7 @@ /area/crew_quarters/heads/hos) "abU" = ( /obj/machinery/computer/card/minor/hos, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -893,10 +893,10 @@ /turf/open/floor/carpet, /area/crew_quarters/heads/hos) "abX" = ( +/obj/machinery/power/tracker, /obj/structure/cable{ icon_state = "0-2" }, -/obj/machinery/power/tracker, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/starboard/fore) "abY" = ( @@ -904,10 +904,10 @@ /turf/open/space, /area/space/nearstation) "abZ" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/fore) "aca" = ( @@ -962,7 +962,7 @@ /turf/open/floor/plasteel, /area/security/prison) "acg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -1014,7 +1014,7 @@ name = "Armory APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line{ @@ -1062,7 +1062,7 @@ /area/crew_quarters/heads/hos) "act" = ( /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -1084,10 +1084,10 @@ /turf/open/space, /area/space/nearstation) "acx" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard/fore) "acy" = ( @@ -1214,7 +1214,7 @@ /turf/open/floor/plasteel/dark, /area/security/execution/transfer) "acJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1326,7 +1326,7 @@ /turf/open/floor/plating, /area/security/main) "acV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/solar{ @@ -1404,7 +1404,7 @@ /turf/open/floor/plasteel, /area/security/prison) "ade" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -1420,7 +1420,7 @@ /turf/open/floor/plasteel/freezer, /area/security/prison) "adg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/button/door{ @@ -1435,7 +1435,7 @@ "adh" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/carpet, @@ -1456,12 +1456,12 @@ /area/ai_monitored/security/armory) "adj" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/e_gun/advtaser, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, @@ -1522,24 +1522,24 @@ /obj/structure/chair{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) "ado" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) "adp" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/carpet, @@ -1561,7 +1561,7 @@ /turf/open/floor/plating, /area/security/main) "ads" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/solar{ @@ -1576,40 +1576,40 @@ /turf/open/space, /area/solar/starboard/fore) "adu" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable{ - icon_state = "1-4" - }, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/space/basic, /area/solar/port/fore) "adv" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/space/basic, /area/solar/port/fore) "adw" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-8" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/turf/open/space/basic, /area/solar/port/fore) "adx" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-4" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/fore) "ady" = ( @@ -1617,6 +1617,7 @@ /turf/open/space, /area/solar/port/fore) "adz" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, @@ -1626,17 +1627,16 @@ /obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/fore) "adA" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "2-8" }, /obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/fore) "adB" = ( @@ -1716,7 +1716,7 @@ name = "Long-Term Cell 1"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1747,7 +1747,7 @@ /turf/open/floor/plasteel, /area/security/brig) "adM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, @@ -1757,13 +1757,13 @@ dir = 8; areastring = "/area/crew_quarters/heads/hos"; name = "Head of Security's Office APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/carpet, @@ -1775,14 +1775,14 @@ /turf/open/floor/plasteel, /area/security/prison) "adP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/carpet, @@ -1797,67 +1797,67 @@ /turf/closed/wall/r_wall, /area/security/main) "adS" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/space/basic, /area/solar/starboard/fore) "adT" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable{ - icon_state = "1-4" - }, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/space/basic, /area/solar/starboard/fore) "adU" = ( /obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard/fore) "adV" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-8" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/turf/open/space/basic, /area/solar/starboard/fore) "adW" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/structure/cable{ icon_state = "2-8" }, -/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-8" + }, /turf/open/space, /area/solar/starboard/fore) "adX" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-4" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard/fore) "adY" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "2-8" }, -/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-8" + }, /turf/open/space, /area/solar/starboard/fore) "adZ" = ( @@ -2043,7 +2043,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aep" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -2082,7 +2082,7 @@ areastring = "/area/security/prison"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/red{ @@ -2095,7 +2095,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aes" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/suit_storage_unit/security, @@ -2112,7 +2112,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "aeu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/suit_storage_unit/security, @@ -2139,7 +2139,7 @@ "aex" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/crew_quarters/heads/hos) "aey" = ( @@ -2147,7 +2147,7 @@ name = "Head of Security"; req_access_txt = "58" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -2190,7 +2190,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -2199,7 +2199,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -2209,13 +2209,13 @@ dir = 8; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -2283,7 +2283,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, @@ -2296,7 +2296,7 @@ /area/security/execution/transfer) "aeM" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -2311,7 +2311,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -2326,7 +2326,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -2338,7 +2338,7 @@ /obj/machinery/light{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -2354,7 +2354,7 @@ /area/security/prison) "aeQ" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -2366,7 +2366,7 @@ /turf/open/floor/plating, /area/hallway/secondary/exit) "aeS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2375,24 +2375,24 @@ /turf/open/floor/plasteel, /area/security/prison) "aeT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/security/prison) "aeU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/security/prison) "aeV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2429,7 +2429,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aeX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -2439,7 +2439,7 @@ /turf/open/floor/plating, /area/ai_monitored/security/armory) "aeY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/window/southleft{ @@ -2453,10 +2453,10 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "aeZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -2546,7 +2546,7 @@ /turf/open/floor/plasteel, /area/security/main) "afj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -2617,7 +2617,7 @@ /turf/open/space/basic, /area/space) "afq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -2673,7 +2673,7 @@ /obj/machinery/atmospherics/pipe/simple/general/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -2717,10 +2717,10 @@ /turf/open/floor/plasteel, /area/security/prison) "afC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2890,7 +2890,7 @@ /turf/open/floor/plasteel, /area/security/main) "afX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/head_of_security, @@ -2964,7 +2964,7 @@ dir = 2; name = "Prisoner Transfer Centre"; areastring = "/area/security/execution/transfer"; - pixel_y = -27 + pixel_y = -23 }, /turf/open/floor/plasteel/dark, /area/security/execution/transfer) @@ -3007,7 +3007,7 @@ name = "Prison Wing"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -3058,16 +3058,16 @@ name = "Armory"; req_access_txt = "3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -3176,7 +3176,7 @@ /area/security/main) "agC" = ( /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -3200,7 +3200,7 @@ /area/security/main) "agF" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/sign/warning/securearea{ @@ -3304,7 +3304,7 @@ /turf/open/floor/plasteel, /area/security/brig) "agP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -3320,13 +3320,13 @@ /turf/open/floor/plasteel, /area/security/brig) "agQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "agR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -3339,7 +3339,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "agT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/showroomfloor, @@ -3353,13 +3353,13 @@ "agV" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "agW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -3414,7 +3414,7 @@ /turf/open/floor/plasteel, /area/security/main) "ahf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -3595,9 +3595,9 @@ dir = 8; name = "Brig Control APC"; areastring = "/area/security/warden"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/showroomfloor, @@ -3618,26 +3618,26 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "ahx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "ahy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "ahz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -3649,7 +3649,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3664,7 +3664,7 @@ /turf/open/floor/plasteel, /area/security/main) "ahB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3676,7 +3676,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, @@ -3700,13 +3700,13 @@ name = "Brig Control"; req_access_txt = "3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3715,7 +3715,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "ahF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -3730,10 +3730,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3745,7 +3745,7 @@ /obj/structure/disposalpipe/junction/yjunction{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3754,7 +3754,7 @@ /turf/open/floor/plasteel, /area/security/main) "ahI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -3770,7 +3770,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3782,10 +3782,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/chair, @@ -3794,7 +3794,7 @@ /turf/open/floor/plasteel, /area/security/main) "ahL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3803,13 +3803,13 @@ /turf/open/floor/plasteel, /area/security/main) "ahM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3824,7 +3824,7 @@ areastring = "/area/security/main"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -3845,13 +3845,13 @@ /area/security/brig) "ahQ" = ( /obj/structure/closet/secure_closet/warden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "ahR" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/warden, /obj/machinery/button/door{ id = "Prison Gate"; @@ -3870,10 +3870,10 @@ /area/security/warden) "ahS" = ( /obj/structure/table, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/showroomfloor, @@ -3967,7 +3967,7 @@ /turf/open/floor/plasteel, /area/security/main) "aib" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -3977,7 +3977,7 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aic" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -4012,7 +4012,7 @@ /area/security/warden) "aif" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4062,7 +4062,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aik" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -4187,7 +4187,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -4197,7 +4197,7 @@ /turf/open/floor/plasteel, /area/security/main) "aiv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -4226,7 +4226,7 @@ /turf/open/floor/plasteel/white, /area/security/brig) "aix" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -4252,7 +4252,7 @@ /turf/open/floor/plasteel, /area/security/brig) "aiz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -4322,7 +4322,7 @@ /turf/open/floor/plasteel, /area/security/brig) "aiI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/sign/warning/electricshock{ @@ -4333,10 +4333,10 @@ /area/security/warden) "aiJ" = ( /obj/structure/table/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/window/brigdoor{ @@ -4359,21 +4359,21 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aiK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/security/warden) "aiL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -4387,7 +4387,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aiN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -4464,7 +4464,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "aiZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4476,7 +4476,7 @@ /turf/open/floor/plasteel, /area/security/brig) "aja" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4527,7 +4527,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ajf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4540,7 +4540,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ajg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -4627,10 +4627,10 @@ /turf/open/floor/plasteel/dark, /area/security/courtroom) "ajq" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-2" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/fore) "ajr" = ( @@ -4708,9 +4708,9 @@ dir = 1; name = "Brig APC"; areastring = "/area/security/brig"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4725,7 +4725,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ajz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -4764,7 +4764,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "ajD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -4830,7 +4830,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ajK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4958,7 +4958,7 @@ /obj/machinery/computer/security/telescreen/entertainment{ pixel_x = -31 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -4972,7 +4972,6 @@ dir = 8 }, /obj/machinery/computer/monitor{ - icon_state = "computer"; dir = 4 }, /turf/open/floor/plasteel/dark, @@ -4986,19 +4985,22 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plating, /area/maintenance/solars/port/fore) "ajX" = ( /obj/machinery/computer/teleporter{ - icon_state = "computer"; dir = 8 }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat_interior) +"ajY" = ( +/obj/effect/mapping_helpers/dead_body_placer, +/turf/open/floor/plasteel/dark, +/area/medical/morgue) "ajZ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/sign/warning/vacuum/external{ @@ -5022,7 +5024,7 @@ /turf/open/floor/plasteel, /area/security/processing) "akc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5031,14 +5033,14 @@ /turf/open/floor/plasteel, /area/security/processing) "akd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/security/processing) "ake" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5053,7 +5055,7 @@ /turf/open/floor/plasteel, /area/security/brig) "akf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -5067,7 +5069,7 @@ /turf/open/floor/plasteel, /area/security/brig) "akg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/camera{ @@ -5081,10 +5083,10 @@ /turf/open/floor/plasteel, /area/security/brig) "akh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5093,10 +5095,10 @@ /turf/open/floor/plasteel, /area/security/brig) "aki" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5109,7 +5111,7 @@ /turf/open/floor/plasteel, /area/security/brig) "akj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5214,7 +5216,7 @@ /turf/open/floor/plasteel, /area/security/brig) "aks" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -5237,6 +5239,15 @@ }, /turf/open/floor/plasteel, /area/security/brig) +"aku" = ( +/obj/effect/decal/cleanable/cobweb, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/radiation, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "akv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -5298,6 +5309,55 @@ }, /turf/open/floor/plating, /area/maintenance/solars/port/fore) +"akC" = ( +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/secure_closet/atmospherics, +/obj/effect/turf_decal/bot{ + dir = 2 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"akD" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + name = "output gas connector port" + }, +/obj/machinery/portable_atmospherics/canister, +/obj/effect/decal/cleanable/dirt, +/obj/item/radio/intercom{ + dir = 4; + pixel_x = 27 + }, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"akE" = ( +/obj/structure/sign/warning/deathsposal{ + pixel_y = 32 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/delivery, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"akF" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/reagent_dispensers/fueltank, +/obj/item/storage/toolbox/emergency, +/obj/structure/sign/warning/nosmoking{ + pixel_x = -28 + }, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "akG" = ( /obj/structure/sign/warning/vacuum/external{ pixel_y = 32 @@ -5327,7 +5387,7 @@ /turf/open/floor/plasteel, /area/security/processing) "akK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5342,10 +5402,10 @@ /turf/open/floor/plating, /area/maintenance/fore) "akM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable, @@ -5354,10 +5414,10 @@ /turf/open/floor/plating, /area/security/brig) "akN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5369,7 +5429,7 @@ id = "Cell 1"; name = "Cell 1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -5379,10 +5439,10 @@ /turf/open/floor/plasteel, /area/security/brig) "akP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -5390,7 +5450,7 @@ /turf/open/floor/plating, /area/security/brig) "akQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall, @@ -5400,7 +5460,7 @@ id = "Cell 2"; name = "Cell 2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -5410,10 +5470,10 @@ /turf/open/floor/plasteel, /area/security/brig) "akS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5425,7 +5485,7 @@ id = "Cell 3"; name = "Cell 3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -5439,19 +5499,19 @@ name = "Brig Desk"; req_access_txt = "1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, /area/security/brig) "akV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -5464,7 +5524,7 @@ name = "Brig"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -5483,7 +5543,7 @@ name = "Brig"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -5498,16 +5558,16 @@ /turf/open/floor/plasteel, /area/security/brig) "akY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/closed/wall, /area/security/brig) "akZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5516,10 +5576,10 @@ /area/security/brig) "ala" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -5571,17 +5631,22 @@ }, /turf/open/floor/plasteel, /area/security/courtroom) +"alf" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to MiniSat" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "alg" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-2" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard/fore) "alh" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/machinery/door/airlock/external{ name = "Solar Maintenance"; req_access_txt = "10; 13" @@ -5589,18 +5654,48 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/solars/port/fore) "ali" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/port/fore) +"alj" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "alk" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ dir = 1 }, /turf/open/floor/plasteel, /area/engine/atmos) +"all" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"alm" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "aln" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 @@ -5612,6 +5707,12 @@ }, /turf/open/floor/plating, /area/security/processing) +"alo" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/start/atmospheric_technician, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "alp" = ( /turf/open/floor/plating, /area/security/processing) @@ -5627,7 +5728,7 @@ /turf/open/floor/plasteel, /area/security/processing) "als" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -5652,7 +5753,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) "alv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -5705,7 +5806,7 @@ pixel_x = -26; pixel_y = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/button/flasher{ @@ -5753,6 +5854,14 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/security/courtroom) +"alE" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "alF" = ( /obj/machinery/atmospherics/components/unary/tank/air{ dir = 2 @@ -5802,10 +5911,10 @@ /area/security/courtroom) "alK" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5817,14 +5926,34 @@ dir = 8; name = "Courtroom APC"; areastring = "/area/security/courtroom"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/fore/secondary) +"alM" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"alN" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/item/extinguisher, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "alO" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -5880,6 +6009,20 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /turf/open/floor/plasteel, /area/engine/atmos) +"alY" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/tank/toxins, +/obj/effect/turf_decal/delivery, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) +"alZ" = ( +/obj/effect/decal/cleanable/dirt, +/turf/closed/wall, +/area/maintenance/disposal/incinerator) "ama" = ( /mob/living/simple_animal/sloth/paperwork, /turf/open/floor/plasteel, @@ -5904,7 +6047,7 @@ /turf/open/floor/plasteel, /area/security/processing) "ame" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -5915,7 +6058,7 @@ "amf" = ( /obj/structure/bed, /obj/item/bedsheet, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/flasher{ @@ -5991,7 +6134,7 @@ pixel_y = 5; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -6011,7 +6154,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "amn" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/dark, @@ -6030,6 +6173,13 @@ }, /turf/open/floor/plasteel, /area/security/brig) +"amp" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/yellow/visible{ + dir = 10 + }, +/turf/open/space/basic, +/area/space) "amq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 @@ -6055,14 +6205,14 @@ /turf/open/floor/plasteel/dark, /area/security/courtroom) "amv" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/machinery/door/airlock/external{ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "amw" = ( @@ -6082,13 +6232,13 @@ /turf/open/floor/plating, /area/maintenance/solars/port/fore) "amz" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, /obj/machinery/power/terminal, /obj/machinery/light/small{ dir = 4 }, +/obj/structure/cable{ + icon_state = "0-8" + }, /turf/open/floor/plating, /area/maintenance/solars/port/fore) "amA" = ( @@ -6157,7 +6307,7 @@ name = "Prisoner Processing"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -6184,7 +6334,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "amQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable, @@ -6196,10 +6346,10 @@ /turf/open/floor/plating, /area/security/brig) "amR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -6210,7 +6360,7 @@ /turf/open/floor/plating, /area/security/brig) "amS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall/r_wall, @@ -6225,10 +6375,10 @@ name = "Brig Desk"; req_access_txt = "1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/dark, @@ -6238,7 +6388,7 @@ id = "briggate"; name = "security blast door" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -6256,7 +6406,7 @@ name = "Brig Desk"; req_access_txt = "1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -6328,7 +6478,7 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "anc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -6352,7 +6502,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "ang" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -6369,17 +6519,17 @@ /turf/open/floor/plating, /area/maintenance/solars/port/fore) "anh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes, /turf/open/floor/plating, /area/maintenance/solars/port/fore) "ani" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -6471,7 +6621,7 @@ /turf/open/floor/plasteel, /area/security/processing) "anv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6528,7 +6678,7 @@ /turf/open/floor/plating, /area/security/courtroom) "anD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -6564,7 +6714,7 @@ name = "Port Bow Solar Access"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -6751,7 +6901,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aol" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -6802,7 +6952,7 @@ /obj/machinery/light{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/red, @@ -6815,7 +6965,7 @@ /turf/open/floor/plasteel, /area/security/processing) "aou" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/camera{ @@ -6927,7 +7077,7 @@ /turf/open/floor/plasteel/dark, /area/security/courtroom) "aoI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -6940,9 +7090,9 @@ dir = 2; name = "Fitness Room APC"; areastring = "/area/crew_quarters/fitness"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6987,13 +7137,13 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "aoO" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, /obj/machinery/power/terminal, /obj/machinery/light/small{ dir = 4 }, +/obj/structure/cable{ + icon_state = "0-8" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "aoP" = ( @@ -7064,7 +7214,7 @@ name = "Security Maintenance"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -7134,14 +7284,14 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "apr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Fore Maintenance APC"; areastring = "/area/maintenance/fore/secondary"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -7171,7 +7321,7 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "apu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -7187,7 +7337,7 @@ name = "Fitness Maintenance"; req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -7227,16 +7377,16 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "apz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "apA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -7253,7 +7403,7 @@ c_tag = "Fore Starboard Solars"; dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes, @@ -7294,6 +7444,7 @@ /obj/structure/table, /obj/effect/spawner/lootdrop/maintenance/two, /obj/effect/decal/cleanable/dirt, +/obj/item/stock_parts/capacitor, /turf/open/floor/plasteel, /area/maintenance/port/fore) "apM" = ( @@ -7322,7 +7473,7 @@ /turf/open/floor/plating, /area/security/processing) "apS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -7431,10 +7582,10 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -7447,9 +7598,9 @@ dir = 2; name = "Dormitory APC"; areastring = "/area/crew_quarters/dorms"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -7461,10 +7612,10 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -7473,10 +7624,10 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "aqm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -7563,7 +7714,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aqw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -7658,9 +7809,9 @@ name = "Port Bow Maintenance APC"; areastring = "/area/maintenance/port/fore"; pixel_x = -1; - pixel_y = 26 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -7688,10 +7839,10 @@ dir = 8; name = "Labor Shuttle Dock APC"; areastring = "/area/security/processing"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -7783,7 +7934,7 @@ /area/crew_quarters/dorms) "arl" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -7838,10 +7989,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "arr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -7851,9 +8002,9 @@ dir = 1; name = "Starboard Bow Maintenance APC"; areastring = "/area/maintenance/starboard/fore"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -7932,7 +8083,7 @@ /turf/closed/wall, /area/maintenance/port/fore) "arH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ @@ -7941,7 +8092,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "arI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ @@ -7950,10 +8101,10 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "arJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ @@ -7970,7 +8121,7 @@ }, /area/maintenance/port/fore) "arL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supplymain/hidden{ @@ -8069,7 +8220,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "asc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8084,7 +8235,7 @@ /turf/closed/wall, /area/crew_quarters/dorms) "ase" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8122,7 +8273,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "ash" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance{ @@ -8134,10 +8285,10 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "asi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8165,7 +8316,7 @@ /turf/open/floor/wood, /area/crew_quarters/dorms) "asn" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/lawyer, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/wood, @@ -8253,7 +8404,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "asw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -8328,7 +8479,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "asK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -8354,7 +8505,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -8401,7 +8552,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -8424,7 +8575,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ dir = 4 @@ -8534,7 +8684,7 @@ pixel_y = -23 }, /obj/effect/landmark/event_spawn, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, @@ -8552,7 +8702,7 @@ /turf/closed/wall, /area/maintenance/port/fore) "atr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -8635,14 +8785,14 @@ /area/maintenance/department/electrical) "atG" = ( /obj/machinery/mech_bay_recharge_port, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, /area/maintenance/department/electrical) "atH" = ( /obj/machinery/computer/mech_bay_power_console, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/circuit, @@ -8689,7 +8839,7 @@ /turf/closed/wall, /area/maintenance/port/fore) "atN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -8834,7 +8984,7 @@ /turf/open/floor/carpet, /area/security/detectives_office) "auj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -8868,10 +9018,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "aum" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -8885,7 +9035,7 @@ /turf/closed/wall, /area/crew_quarters/dorms) "auo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -8919,7 +9069,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) "aus" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -9021,13 +9171,13 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "auE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/maintenance/starboard/fore) "auF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -9037,13 +9187,13 @@ req_access_txt = "12" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/starboard/fore) "auH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -9056,17 +9206,17 @@ /turf/open/floor/plasteel, /area/maintenance/department/electrical) "auK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/department/electrical) "auL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -9076,7 +9226,7 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 27 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -9125,7 +9275,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "auT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -9238,7 +9388,7 @@ /area/crew_quarters/dorms) "avh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -9249,7 +9399,7 @@ dir = 4; pixel_x = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -9320,7 +9470,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "avq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -9334,7 +9484,7 @@ /turf/open/floor/plasteel, /area/vacant_room/commissary) "avs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -9412,7 +9562,7 @@ /area/crew_quarters/fitness) "avB" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -9439,7 +9589,7 @@ /obj/machinery/door/poddoor/preopen{ id = "maint3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -9480,9 +9630,9 @@ dir = 1; name = "Electrical Maintenance APC"; areastring = "/area/maintenance/department/electrical"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -9494,7 +9644,7 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "avN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -9545,6 +9695,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "avS" = ( +/obj/item/circuitboard/machine/stasis, /obj/item/wrench, /turf/open/floor/plating, /area/maintenance/port/fore) @@ -9621,9 +9772,9 @@ dir = 1; name = "Fore Maintenance APC"; areastring = "/area/maintenance/fore"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9632,13 +9783,13 @@ /turf/open/floor/plating, /area/maintenance/fore) "awe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9656,7 +9807,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "awg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -9669,14 +9820,14 @@ /area/maintenance/fore) "awh" = ( /obj/effect/landmark/blobstart, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -9689,7 +9840,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -9710,7 +9861,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "awl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -9803,7 +9954,7 @@ /turf/open/floor/plasteel, /area/security/brig) "awx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9823,7 +9974,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "awA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -9832,7 +9983,6 @@ /area/crew_quarters/fitness) "awB" = ( /obj/effect/landmark/start/assistant, -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/green, /obj/effect/turf_decal/tile/green{ dir = 4 @@ -9880,7 +10030,7 @@ pixel_x = -28; pixel_y = -6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -9903,7 +10053,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "awM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9912,13 +10062,13 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "awN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/showroomfloor, @@ -9930,7 +10080,7 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "awP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9939,7 +10089,7 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "awQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ @@ -9953,10 +10103,10 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "awR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9971,7 +10121,7 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "awT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/holopad, @@ -10028,7 +10178,7 @@ }, /area/hallway/secondary/entry) "axa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -10037,7 +10187,7 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "axb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10072,9 +10222,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "axe" = ( -/obj/machinery/sleeper{ - dir = 4 - }, +/obj/structure/frame/machine, /turf/open/floor/plating, /area/maintenance/port/fore) "axf" = ( @@ -10165,7 +10313,7 @@ /obj/structure/sign/warning/electricshock{ pixel_y = -32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10174,7 +10322,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "axs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10186,7 +10334,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10198,10 +10346,10 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10214,10 +10362,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10226,10 +10374,10 @@ /turf/open/floor/plating, /area/maintenance/fore) "axw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -10241,7 +10389,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10372,14 +10520,14 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "axQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/crew_quarters/fitness) "axR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -10399,10 +10547,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) "axT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -10415,7 +10563,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) "axV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -10465,10 +10613,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "ayc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -10490,14 +10638,14 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "ayg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) "ayh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10507,7 +10655,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "ayi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -10567,7 +10715,7 @@ /obj/structure/extinguisher_cabinet{ pixel_x = 27 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -10588,6 +10736,7 @@ "ayt" = ( /obj/structure/table/glass, /obj/item/hemostat, +/obj/item/stock_parts/manipulator, /turf/open/floor/plating, /area/maintenance/port/fore) "ayu" = ( @@ -10605,7 +10754,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "ayw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10625,27 +10774,27 @@ /turf/closed/wall/r_wall, /area/maintenance/port/fore) "ayA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/fore) "ayB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/fore) "ayC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -10653,10 +10802,10 @@ /turf/open/floor/plating, /area/maintenance/fore) "ayD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10667,11 +10816,11 @@ /turf/closed/wall/r_wall, /area/maintenance/fore) "ayF" = ( -/obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/maintenance/fore) "ayG" = ( @@ -10679,14 +10828,14 @@ /area/gateway) "ayH" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/fore) "ayI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/sign/warning/securearea{ @@ -10745,9 +10894,9 @@ dir = 1; name = "EVA Storage APC"; areastring = "/area/ai_monitored/storage/eva"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -10772,7 +10921,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "ayS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/sign/warning/securearea{ @@ -10872,7 +11021,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "azd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -10906,7 +11055,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/green, /obj/effect/turf_decal/tile/green{ dir = 4 @@ -10944,7 +11092,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "azl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -10987,10 +11135,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "azs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -11006,7 +11154,7 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "azu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -11066,7 +11214,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "azD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -11075,7 +11223,7 @@ /turf/open/floor/plasteel/white/corner, /area/hallway/secondary/entry) "azE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -11166,10 +11314,10 @@ /turf/open/floor/plasteel/dark, /area/gateway) "azO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -11178,7 +11326,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "azQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -11203,10 +11351,10 @@ name = "EVA Storage"; req_access_txt = "18" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -11222,10 +11370,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "azU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -11250,7 +11398,7 @@ /obj/machinery/door/airlock{ name = "Unisex Showers" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/freezer, @@ -11299,7 +11447,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "aAe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -11338,7 +11486,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "aAj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/power/apc{ @@ -11346,14 +11494,14 @@ name = "Security Checkpoint APC"; areastring = "/area/security/checkpoint/auxiliary"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/port/fore) "aAk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -11369,7 +11517,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "aAl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -11390,7 +11538,7 @@ dir = 1; pixel_y = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -11407,7 +11555,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "aAn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -11437,7 +11585,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness) "aAp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -11479,7 +11627,7 @@ /obj/machinery/door/poddoor/preopen{ id = "maint2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -11496,10 +11644,10 @@ dir = 4; name = "Garden APC"; areastring = "/area/hydroponics/garden"; - pixel_x = 27; + pixel_x = 24; pixel_y = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -11512,7 +11660,7 @@ /obj/machinery/power/smes{ charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -11522,17 +11670,17 @@ dir = 1; name = "backup power monitoring console" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable, /turf/open/floor/plating, /area/maintenance/department/electrical) "aAA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall, @@ -11541,7 +11689,7 @@ /obj/machinery/power/smes{ charge = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -11592,7 +11740,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aAJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -11614,9 +11762,9 @@ name = "Primary Tool Storage APC"; areastring = "/area/storage/primary"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -11625,10 +11773,10 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aAN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11651,7 +11799,7 @@ /turf/open/floor/plasteel, /area/hydroponics/garden) "aAR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -11678,7 +11826,7 @@ /turf/open/floor/plasteel, /area/hydroponics/garden) "aAV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/spawner/lootdrop/maintenance, @@ -11718,7 +11866,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aAZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/freezer, @@ -11783,7 +11931,7 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -11797,10 +11945,10 @@ dir = 8; name = "Gateway APC"; areastring = "/area/gateway"; - pixel_x = -24; + pixel_x = -25; pixel_y = -1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -11884,14 +12032,14 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "aBs" = ( -/obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/ai_monitored/storage/eva) "aBt" = ( @@ -11952,9 +12100,10 @@ /area/maintenance/starboard/fore) "aBC" = ( /obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" + req_access_txt = "12"; + req_one_access_txt = "0" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -12010,7 +12159,7 @@ name = "Tool Storage Maintenance"; req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12035,10 +12184,10 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "aBP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -12079,9 +12228,9 @@ dir = 1; name = "Vault APC"; areastring = "/area/ai_monitored/nuke_storage"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12148,7 +12297,7 @@ /area/gateway) "aBZ" = ( /obj/machinery/gateway, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/bot_white, @@ -12171,7 +12320,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "aCb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/item/pen{ @@ -12210,7 +12359,7 @@ "aCe" = ( /obj/effect/landmark/xeno_spawn, /obj/item/bikehorn/rubberducky, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/freezer, @@ -12224,7 +12373,7 @@ }, /area/crew_quarters/theatre) "aCg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -12236,8 +12385,8 @@ }, /area/crew_quarters/theatre) "aCi" = ( -/obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/ai_monitored/storage/eva) "aCj" = ( @@ -12254,7 +12403,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aCl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -12294,7 +12443,7 @@ c_tag = "Arrivals North"; dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -12331,7 +12480,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/auxiliary) "aCt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -12371,14 +12520,14 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/starboard/fore) "aCA" = ( /obj/structure/grille/broken, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/window{ @@ -12408,7 +12557,7 @@ /obj/machinery/door/poddoor/preopen{ id = "maint1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -12450,7 +12599,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aCJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -12597,7 +12746,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/auxiliary) "aDd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12728,7 +12877,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) "aDt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -12761,7 +12910,7 @@ /turf/open/floor/plasteel/dark, /area/gateway) "aDx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window{ @@ -12787,7 +12936,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "aDA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -12808,7 +12957,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "aDD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12892,7 +13041,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/freezer, @@ -12914,7 +13063,7 @@ /area/crew_quarters/toilet) "aDQ" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/freezer, @@ -12943,14 +13092,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet) "aDT" = ( /obj/machinery/light/small, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/freezer, @@ -12959,7 +13108,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/freezer, @@ -12993,7 +13142,7 @@ }, /area/crew_quarters/theatre) "aDZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -13005,10 +13154,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aEa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -13044,17 +13193,17 @@ }, /area/crew_quarters/theatre) "aEd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) "aEe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13063,7 +13212,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aEf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13079,9 +13228,9 @@ dir = 2; name = "Chapel APC"; areastring = "/area/chapel/main"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -13154,7 +13303,7 @@ /turf/open/floor/plasteel/white/corner, /area/hallway/secondary/entry) "aEA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail{ @@ -13173,7 +13322,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aEC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -13186,10 +13335,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aED" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -13282,7 +13431,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) "aEO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit, @@ -13337,7 +13486,7 @@ /turf/open/floor/plasteel, /area/gateway) "aET" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13453,7 +13602,7 @@ dir = 4; name = "Dormitory Bathrooms APC"; areastring = "/area/crew_quarters/toilet"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -13528,7 +13677,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13537,7 +13686,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aFs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -13553,7 +13702,7 @@ /turf/closed/wall, /area/library) "aFv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -13577,12 +13726,12 @@ dir = 2; name = "Chapel Office APC"; areastring = "/area/chapel/office"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, -/area/chapel/office) +/area/maintenance/starboard/fore) "aFz" = ( /turf/open/floor/plasteel/dark, /area/chapel/main) @@ -13738,7 +13887,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "aFR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -13765,7 +13914,7 @@ /area/storage/primary) "aFV" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/meter, @@ -13821,7 +13970,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) "aGc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/camera/motion{ @@ -13836,7 +13985,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) "aGd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral, @@ -14026,20 +14175,20 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) "aGz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -14049,10 +14198,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aGA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail{ @@ -14065,7 +14214,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aGB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail{ @@ -14081,7 +14230,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -14113,7 +14262,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -14144,10 +14293,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -14159,7 +14308,7 @@ /obj/structure/disposalpipe/junction{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -14171,7 +14320,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -14180,7 +14329,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aGL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -14201,13 +14350,13 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aGN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -14223,7 +14372,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -14233,7 +14382,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -14242,11 +14391,11 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aGS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -14255,7 +14404,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14374,7 +14523,7 @@ /turf/open/floor/plasteel/grimy, /area/chapel/office) "aHh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -14393,7 +14542,7 @@ /obj/machinery/light_switch{ pixel_x = -20 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -14440,7 +14589,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/filingcabinet/chestdrawer, @@ -14554,7 +14703,7 @@ /obj/machinery/door/airlock/vault{ req_access_txt = "53" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -14782,7 +14931,7 @@ dir = 2; name = "Bar APC"; areastring = "/area/crew_quarters/bar"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14833,7 +14982,7 @@ dir = 2; name = "Kitchen APC"; areastring = "/area/crew_quarters/kitchen"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14842,7 +14991,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aIj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail{ @@ -14862,10 +15011,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aIl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -14881,7 +15030,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14894,9 +15043,9 @@ dir = 2; name = "Hydroponics APC"; areastring = "/area/hydroponics"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14906,7 +15055,7 @@ /area/maintenance/starboard/fore) "aIo" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -14925,7 +15074,7 @@ /turf/open/floor/wood, /area/library) "aIs" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/camera{ c_tag = "Library North"; dir = 2 @@ -14954,7 +15103,7 @@ /turf/open/floor/wood, /area/library) "aIw" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/structure/disposalpipe/segment{ dir = 6 }, @@ -15179,7 +15328,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "aJa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15195,14 +15344,14 @@ /turf/open/floor/plasteel, /area/storage/primary) "aJd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/hallway/primary/port) "aJe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -15436,7 +15585,8 @@ "aJD" = ( /obj/machinery/door/airlock/maintenance{ name = "Bar Maintenance"; - req_access_txt = "12" + req_access_txt = "0"; + req_one_access_txt = "12;25;26;35;28;22;37;46;38" }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -15551,13 +15701,13 @@ /turf/open/floor/wood, /area/library) "aJQ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/wood, /area/library) "aJR" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/wood, @@ -15616,7 +15766,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aJZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -15634,24 +15784,13 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/storage/primary) -"aKb" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable, -/turf/open/floor/plating, -/area/hallway/primary/port) "aKc" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/command{ name = "Gateway Access"; req_access_txt = "62" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15673,16 +15812,16 @@ }, /area/chapel/main) "aKf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Auxillary Base Construction APC"; areastring = "/area/construction/mining/aux_base"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -15756,41 +15895,41 @@ /turf/open/floor/plating, /area/storage/primary) "aKt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/hallway/primary/port) "aKu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/hallway/primary/port) "aKv" = ( -/obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/hallway/primary/port) "aKw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/door/firedoor, @@ -15807,7 +15946,7 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/port) "aKx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -15815,7 +15954,7 @@ /area/hallway/primary/port) "aKy" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance{ @@ -16112,7 +16251,7 @@ /turf/open/floor/plasteel/grimy, /area/hallway/secondary/entry) "aLk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -16141,7 +16280,7 @@ /area/hallway/primary/port) "aLn" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16154,7 +16293,7 @@ /turf/closed/wall, /area/chapel/office) "aLp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16255,14 +16394,14 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aLG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ name = "Port Hall APC"; areastring = "/area/hallway/primary/port"; dir = 1; - pixel_y = 26 + pixel_y = 23 }, /turf/open/floor/plasteel, /area/hallway/primary/port) @@ -16328,7 +16467,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aLP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -16655,7 +16794,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "aMH" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/wood, @@ -16666,7 +16805,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "aMJ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/disposalpipe/segment, @@ -16707,7 +16846,7 @@ /turf/open/floor/carpet, /area/hallway/secondary/entry) "aMQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -16716,7 +16855,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aMR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -16734,7 +16873,7 @@ /area/hallway/primary/port) "aMU" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -16744,7 +16883,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aMV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -16817,28 +16956,28 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aNk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aNl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aNm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/port) "aNo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -17063,10 +17202,10 @@ /turf/open/floor/wood, /area/library) "aNT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -17119,19 +17258,6 @@ }, /turf/open/floor/plasteel/dark, /area/chapel/main) -"aNZ" = ( -/obj/structure/chair, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) "aOa" = ( /obj/machinery/light{ dir = 1 @@ -17146,13 +17272,17 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aOb" = ( -/obj/structure/chair, /obj/effect/turf_decal/tile/red{ dir = 1 }, /obj/effect/turf_decal/tile/red{ dir = 4 }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/table, +/obj/item/storage/toolbox/emergency, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aOc" = ( @@ -17201,7 +17331,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aOi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17237,7 +17367,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -17289,7 +17419,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aOt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light, @@ -17302,7 +17432,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aOv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17311,20 +17441,20 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aOw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/hallway/primary/port) "aOx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -17333,10 +17463,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "aOy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -17555,7 +17685,7 @@ /turf/open/floor/wood, /area/library) "aPc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -17626,28 +17756,27 @@ /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plasteel/dark, /area/chapel/main) -"aPp" = ( -/obj/machinery/camera{ - c_tag = "Escape Arm Holding Area"; - dir = 4 - }, -/obj/item/radio/intercom{ - dir = 8; - pixel_x = -28 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) "aPq" = ( /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aPr" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Escape Arm Holding Area"; + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_x = -25 + }, +/obj/structure/chair{ + dir = 4 + }, /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aPs" = ( @@ -17719,7 +17848,7 @@ req_access_txt = "12" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -17751,7 +17880,7 @@ /turf/open/floor/plasteel, /area/storage/art) "aPI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance{ @@ -17794,10 +17923,10 @@ /turf/closed/wall/r_wall, /area/bridge) "aPS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -17808,7 +17937,7 @@ /turf/open/floor/plating, /area/bridge) "aPT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -17819,10 +17948,10 @@ /turf/open/floor/plating, /area/bridge) "aPU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/status_display/evac, @@ -17834,13 +17963,13 @@ /turf/open/floor/plating, /area/bridge) "aPV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -17851,10 +17980,10 @@ /turf/open/floor/plating, /area/bridge) "aPW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/status_display/evac, @@ -17866,7 +17995,7 @@ /turf/open/floor/plating, /area/bridge) "aPX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -18106,15 +18235,6 @@ }, /turf/open/floor/plasteel/dark, /area/chapel/main) -"aQB" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) "aQC" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, @@ -18190,7 +18310,7 @@ /turf/open/floor/plating, /area/maintenance/port) "aQM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -18264,7 +18384,7 @@ /turf/open/floor/plasteel, /area/storage/art) "aRb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -18289,7 +18409,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aRe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -18344,7 +18464,7 @@ /obj/machinery/computer/monitor{ name = "bridge power monitoring console" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/yellow, @@ -18395,7 +18515,7 @@ /turf/open/floor/plasteel, /area/bridge) "aRp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/computer/shuttle/mining, @@ -18578,7 +18698,7 @@ /area/hydroponics) "aRK" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/power/apc{ @@ -18636,7 +18756,7 @@ /turf/open/floor/carpet, /area/chapel/main) "aRT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/rack, @@ -18655,13 +18775,13 @@ dir = 1; name = "Auxiliary Tool Storage APC"; areastring = "/area/storage/tools"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/firealarm{ dir = 4; pixel_x = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/table, @@ -18830,7 +18950,7 @@ /turf/open/floor/plasteel, /area/bridge) "aSw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow{ @@ -18883,7 +19003,7 @@ /area/bridge) "aSB" = ( /obj/structure/table/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue, @@ -19052,7 +19172,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -19206,7 +19326,7 @@ /turf/open/floor/plating, /area/maintenance/port) "aTv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -19388,7 +19508,7 @@ /turf/open/floor/plasteel, /area/bridge) "aTW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -19403,7 +19523,7 @@ /turf/open/floor/plasteel, /area/bridge) "aTZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -19507,7 +19627,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "aUl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/wood, @@ -19590,10 +19710,11 @@ /area/storage/tools) "aUx" = ( /obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" + req_access_txt = "0"; + req_one_access_txt = "12;38" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -19642,7 +19763,7 @@ /area/library) "aUF" = ( /obj/effect/landmark/start/librarian, -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/library) "aUG" = ( @@ -19696,7 +19817,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aUN" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -19722,13 +19843,13 @@ /area/vacant_room/office) "aUS" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/port) "aUT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -19810,7 +19931,7 @@ /turf/open/floor/plasteel, /area/bridge) "aVd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -19853,9 +19974,9 @@ dir = 8; name = "Fore Primary Hallway APC"; areastring = "/area/hallway/primary/fore"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/camera{ @@ -19875,7 +19996,7 @@ /turf/open/floor/plasteel, /area/bridge) "aVj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19885,10 +20006,10 @@ /area/bridge) "aVk" = ( /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19897,7 +20018,7 @@ /turf/open/floor/plasteel, /area/bridge) "aVl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -19906,7 +20027,7 @@ /turf/open/floor/plasteel, /area/bridge) "aVm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19915,10 +20036,10 @@ /turf/open/floor/plasteel, /area/bridge) "aVn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19927,10 +20048,10 @@ /turf/open/floor/plasteel, /area/bridge) "aVo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -19941,7 +20062,7 @@ /area/bridge) "aVp" = ( /obj/item/beacon, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19950,7 +20071,7 @@ /turf/open/floor/plasteel, /area/bridge) "aVq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19979,7 +20100,7 @@ dir = 1; name = "Logistics Station" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -20073,7 +20194,7 @@ /area/crew_quarters/kitchen) "aVC" = ( /obj/machinery/meter, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -20136,7 +20257,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "aVL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -20328,7 +20449,7 @@ /area/maintenance/port) "aWk" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -20399,7 +20520,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -20418,15 +20539,15 @@ dir = 1; name = "Art Storage"; areastring = "/area/storage/art"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -20436,10 +20557,10 @@ /area/maintenance/port) "aWx" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -20459,12 +20580,12 @@ dir = 1; name = "Port Emergency Storage APC"; areastring = "/area/storage/emergency/port"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -20540,7 +20661,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aWI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -20553,10 +20674,10 @@ /area/bridge) "aWJ" = ( /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -20569,14 +20690,14 @@ /turf/open/floor/plasteel, /area/bridge) "aWK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/bridge) "aWL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -20595,7 +20716,7 @@ /turf/open/floor/plasteel, /area/bridge) "aWN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -20657,7 +20778,7 @@ /turf/open/floor/plasteel, /area/bridge) "aWS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -20721,7 +20842,7 @@ dir = 2; name = "Bridge APC"; areastring = "/area/bridge"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/machinery/light, @@ -20755,7 +20876,7 @@ /turf/open/floor/plasteel, /area/bridge) "aWZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -20765,10 +20886,10 @@ /turf/open/floor/plasteel, /area/bridge) "aXa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -20780,7 +20901,7 @@ /turf/open/floor/plasteel, /area/bridge) "aXb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -20795,7 +20916,7 @@ /turf/open/floor/plasteel, /area/bridge) "aXc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -20811,7 +20932,7 @@ /turf/open/floor/plasteel, /area/bridge) "aXd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -20827,14 +20948,14 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aXe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -20856,7 +20977,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aXg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -21020,12 +21141,6 @@ }, /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 @@ -21122,7 +21237,7 @@ /obj/machinery/light{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -21175,7 +21290,7 @@ /turf/open/floor/wood, /area/vacant_room/office) "aXY" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -21193,21 +21308,21 @@ dir = 8; name = "Port Maintenance APC"; areastring = "/area/maintenance/port"; - pixel_x = -27; + pixel_x = -25; pixel_y = 2 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/port) "aYb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -21225,7 +21340,7 @@ /turf/closed/wall, /area/quartermaster/warehouse) "aYd" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, @@ -21252,7 +21367,7 @@ /turf/open/floor/plating, /area/construction) "aYh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -21352,7 +21467,7 @@ /turf/open/floor/plasteel, /area/bridge) "aYs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21395,7 +21510,7 @@ /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai_upload) "aYw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -21452,7 +21567,7 @@ /turf/open/floor/plasteel, /area/bridge) "aYD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -21479,7 +21594,7 @@ dir = 2; name = "Central Hall APC"; areastring = "/area/hallway/primary/central"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/effect/turf_decal/tile/blue, @@ -21657,7 +21772,7 @@ /area/crew_quarters/bar) "aZc" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -21697,12 +21812,6 @@ /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 @@ -21853,7 +21962,7 @@ "aZD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -21869,7 +21978,7 @@ /obj/machinery/light_switch{ pixel_y = 28 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -21915,7 +22024,7 @@ name = "Conference Room"; req_access_txt = "19" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21931,7 +22040,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "aZT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -21954,7 +22063,7 @@ name = "Captain's Office"; req_access_txt = "20" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22029,7 +22138,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -22111,7 +22220,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bao" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/computer/security/telescreen/entertainment{ @@ -22136,7 +22245,7 @@ /obj/machinery/status_display/ai{ pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22215,12 +22324,6 @@ }, /turf/open/floor/plasteel/dark, /area/chapel/main) -"baC" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit) "baD" = ( /obj/machinery/power/apc{ dir = 8; @@ -22228,7 +22331,7 @@ areastring = "/area/hallway/secondary/exit"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/red{ @@ -22239,7 +22342,7 @@ }, /area/hallway/secondary/exit) "baE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -22293,17 +22396,17 @@ /area/maintenance/port) "baM" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/power/apc{ dir = 4; name = "Locker Restrooms APC"; areastring = "/area/crew_quarters/toilet/locker"; - pixel_x = 27; + pixel_x = 24; pixel_y = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -22340,7 +22443,7 @@ /turf/open/floor/plasteel, /area/quartermaster/warehouse) "baT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22464,7 +22567,7 @@ /turf/open/floor/wood, /area/bridge/meeting_room) "bbi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -22550,9 +22653,9 @@ dir = 1; name = "Captain's Office APC"; areastring = "/area/crew_quarters/heads/captain"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/wood, @@ -22561,10 +22664,10 @@ /obj/machinery/status_display/evac{ pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/carpet, @@ -22637,7 +22740,7 @@ }, /area/hallway/secondary/exit) "bbH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -22648,25 +22751,25 @@ dir = 8; name = "Vacant Office APC"; areastring = "/area/vacant_room/office"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/maintenance/port) "bbJ" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, /area/maintenance/port) "bbK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -22801,7 +22904,7 @@ /turf/open/floor/wood, /area/bridge/meeting_room) "bcd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22819,7 +22922,7 @@ /area/ai_monitored/turret_protected/ai_upload) "bcf" = ( /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -22847,7 +22950,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bcj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/junction{ @@ -22875,7 +22978,7 @@ /obj/structure/chair/comfy/brown{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -22967,7 +23070,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "bcA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -23044,7 +23147,7 @@ /turf/open/floor/plating, /area/maintenance/port) "bcL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/junction/flip{ @@ -23148,7 +23251,7 @@ /turf/open/floor/wood, /area/bridge/meeting_room) "bde" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23168,7 +23271,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "bdg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit, @@ -23203,10 +23306,10 @@ /area/crew_quarters/heads/captain) "bdl" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -23214,7 +23317,7 @@ /area/hallway/primary/starboard) "bdm" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -23266,7 +23369,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -23317,7 +23420,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -23336,7 +23439,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -23345,14 +23448,14 @@ /turf/open/floor/plating, /area/maintenance/port) "bdC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail/flip{ dir = 1; sortType = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -23364,7 +23467,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, @@ -23442,7 +23545,7 @@ req_access_txt = "12" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -23462,7 +23565,7 @@ /turf/closed/wall, /area/maintenance/disposal) "bdR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -23480,9 +23583,9 @@ dir = 8; name = "Disposal APC"; areastring = "/area/maintenance/disposal"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -23521,7 +23624,7 @@ /turf/open/floor/carpet, /area/bridge/meeting_room) "bdZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23568,7 +23671,7 @@ dir = 2; name = "Upload APC"; areastring = "/area/ai_monitored/turret_protected/ai_upload"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /turf/open/floor/circuit, @@ -23646,7 +23749,7 @@ /turf/open/floor/plating, /area/maintenance/port) "bem" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -23728,13 +23831,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bew" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -23764,7 +23867,7 @@ }, /area/hallway/primary/starboard) "bez" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -23782,13 +23885,13 @@ c_tag = "Starboard Primary Hallway 3"; dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "beC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -23843,7 +23946,7 @@ /area/hallway/secondary/exit) "beJ" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -24010,9 +24113,9 @@ dir = 1; name = "Locker Room APC"; areastring = "/area/crew_quarters/locker"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24036,7 +24139,7 @@ dir = 9 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -24080,12 +24183,12 @@ name = "Cargo Bay APC"; areastring = "/area/quartermaster/storage"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -24201,7 +24304,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bfD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/wood, @@ -24247,7 +24350,7 @@ /turf/closed/wall, /area/medical/morgue) "bfM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -24267,9 +24370,9 @@ dir = 2; name = "Starboard Primary Hallway APC"; areastring = "/area/hallway/primary/starboard"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bfQ" = ( @@ -24378,7 +24481,7 @@ /area/hallway/secondary/exit) "bge" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -24445,16 +24548,16 @@ /area/hallway/primary/central) "bgo" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/power/apc{ dir = 4; name = "Mech Bay APC"; areastring = "/area/science/robotics/mechbay"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -24465,7 +24568,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "bgq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -24488,6 +24591,10 @@ dir = 1; pixel_y = -22 }, +/obj/machinery/shower{ + dir = 8 + }, +/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/locker) "bgt" = ( @@ -24510,7 +24617,7 @@ /turf/closed/wall, /area/quartermaster/office) "bgw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -24685,7 +24792,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bgW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -24715,9 +24822,9 @@ dir = 1; name = "Chemistry APC"; areastring = "/area/medical/chemistry"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/white, @@ -24872,9 +24979,9 @@ dir = 1; name = "Morgue APC"; areastring = "/area/medical/morgue"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/dark, @@ -24919,7 +25026,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -25044,7 +25151,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -25102,7 +25209,7 @@ /turf/open/floor/plating, /area/maintenance/port) "bhO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -25300,7 +25407,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bin" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -25376,7 +25483,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "bix" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/depsec/medical, @@ -25413,7 +25520,7 @@ /turf/open/floor/plating, /area/quartermaster/storage) "biB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -25443,7 +25550,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -25452,39 +25559,39 @@ /obj/machinery/mech_bay_recharge_port{ dir = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/science/robotics/mechbay) "biH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/science/robotics/mechbay) "biI" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/circuit, /area/science/robotics/mechbay) "biJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/circuit, /area/science/robotics/mechbay) "biK" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -25628,7 +25735,7 @@ /area/science/lab) "biY" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -25691,7 +25798,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25711,7 +25818,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25720,7 +25827,7 @@ /turf/open/floor/plating, /area/maintenance/port) "bjk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25732,10 +25839,10 @@ /turf/open/floor/plating, /area/maintenance/port) "bjl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -25800,7 +25907,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -25827,13 +25934,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/quartermaster/sorting) "bjx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -25894,7 +26001,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bjH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/firealarm{ @@ -25904,19 +26011,19 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bjI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bjJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bjK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -25927,7 +26034,7 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "bjM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -25954,7 +26061,7 @@ /obj/machinery/computer/mech_bay_power_console{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -26114,7 +26221,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -26149,7 +26256,7 @@ /turf/open/floor/plasteel/white, /area/science/robotics/lab) "bkp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -26215,7 +26322,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -26295,7 +26402,7 @@ name = "Cargo Bay Maintenance"; req_access_txt = "31" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26319,7 +26426,7 @@ /turf/open/floor/plating, /area/quartermaster/storage) "bkK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -26364,7 +26471,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26376,7 +26483,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small, @@ -26387,7 +26494,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -26411,7 +26518,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -26420,10 +26527,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26434,7 +26541,7 @@ /area/medical/morgue) "bkV" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26443,7 +26550,7 @@ /turf/open/floor/plating, /area/maintenance/fore/secondary) "bkW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -26455,17 +26562,17 @@ areastring = "/area/bridge/meeting_room"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, /area/maintenance/central) "bkY" = ( /obj/effect/landmark/blobstart, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -26489,7 +26596,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26514,7 +26621,7 @@ name = "Captain's Office Maintenance"; req_access_txt = "20" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, @@ -26550,7 +26657,7 @@ name = "Morgue Maintenance"; req_access_txt = "6" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26622,16 +26729,16 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/power/apc{ dir = 1; name = "Starboard Emergency Storage APC"; areastring = "/area/storage/emergency/starboard"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26646,7 +26753,7 @@ areastring = "/area/security/checkpoint/medical"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/red{ @@ -26658,10 +26765,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "blq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/sorting/mail{ @@ -26700,16 +26807,16 @@ /obj/machinery/computer/mech_bay_power_console{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel, /area/science/robotics/mechbay) "blv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/holopad, @@ -26735,14 +26842,14 @@ /obj/machinery/light_switch{ pixel_x = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/science/robotics/lab) "blz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -26857,7 +26964,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -26891,7 +26998,7 @@ /turf/open/floor/plating, /area/maintenance/disposal) "blT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -26971,7 +27078,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -26981,7 +27088,7 @@ dir = 4 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -27009,7 +27116,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "bmh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -27022,7 +27129,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "bmj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27037,7 +27144,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "bmm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -27076,7 +27183,7 @@ name = "Head of Personnel"; req_access_txt = "57" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -27084,7 +27191,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "bmt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown{ @@ -27162,7 +27269,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/heads/captain) "bmD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -27224,7 +27331,7 @@ name = "Cargo Bay"; req_access_txt = "31" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -27284,7 +27391,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bmN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -27306,7 +27413,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "bmP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -27354,7 +27461,7 @@ name = "Morgue"; req_access_txt = "6;5" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27384,7 +27491,7 @@ /area/medical/genetics) "bna" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27456,7 +27563,7 @@ /turf/open/floor/plasteel/white, /area/science/lab) "bnl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -27537,7 +27644,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -27546,7 +27653,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, @@ -27554,7 +27661,7 @@ /area/quartermaster/office) "bnz" = ( /obj/effect/landmark/start/cargo_technician, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27566,7 +27673,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27582,11 +27689,11 @@ /area/medical/chemistry) "bnE" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -27652,7 +27759,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "bnM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -27723,7 +27830,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hop) "bnS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -27734,14 +27841,14 @@ /obj/structure/sign/warning/electricshock{ pixel_x = -32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/engine/gravity_generator) "bnU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/engineering/glass{ @@ -27751,10 +27858,10 @@ /turf/open/floor/plasteel/dark, /area/engine/gravity_generator) "bnV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -27764,10 +27871,10 @@ /obj/structure/sign/warning/radiation/rad_area{ pixel_x = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -27816,7 +27923,7 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "boc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -27906,7 +28013,7 @@ name = "Security Office"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -28070,7 +28177,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28092,7 +28199,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28178,7 +28285,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "boV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -28260,7 +28367,7 @@ /turf/open/floor/carpet, /area/crew_quarters/heads/hop) "bpc" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/structure/disposalpipe/segment{ @@ -28286,7 +28393,7 @@ /area/crew_quarters/heads/hop) "bpf" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -28365,7 +28472,7 @@ }, /area/science/research) "bpq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white/side{ @@ -28407,7 +28514,7 @@ /turf/closed/wall, /area/medical/medbay/central) "bpx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -28436,7 +28543,7 @@ /area/quartermaster/office) "bpB" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -28453,7 +28560,7 @@ name = "Chemistry Lab"; req_access_txt = "5; 33" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -28479,9 +28586,9 @@ dir = 1; name = "Genetics APC"; areastring = "/area/medical/genetics"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/white, @@ -28549,7 +28656,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bpP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -28558,7 +28665,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bpQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -28685,7 +28792,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -28763,13 +28870,13 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "bqq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, /area/crew_quarters/heads/hop) "bqr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -28798,7 +28905,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/shutters/preopen{ @@ -28837,7 +28944,7 @@ dir = 8; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -28845,7 +28952,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hop) "bqD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -28866,7 +28973,7 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "bqG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable, @@ -28894,7 +29001,7 @@ /obj/structure/sign/warning/securearea{ pixel_x = -32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -28921,7 +29028,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -28963,7 +29070,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bqS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -28977,7 +29084,7 @@ /area/medical/medbay/central) "bqT" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -28992,7 +29099,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bqU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/noticeboard{ @@ -29009,7 +29116,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bqV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29021,7 +29128,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bqW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -29030,7 +29137,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bqX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29039,14 +29146,14 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bqY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bqZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -29087,23 +29194,23 @@ /turf/open/floor/plasteel, /area/medical/genetics) "brf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) "brg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/medical/medbay/central) "brh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/blue{ @@ -29133,7 +29240,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "brk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -29143,7 +29250,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white/side{ @@ -29224,7 +29331,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29250,7 +29357,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29262,7 +29369,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29360,10 +29467,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29372,10 +29479,10 @@ /turf/open/floor/plasteel/white, /area/science/explab) "brQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -29389,7 +29496,7 @@ /area/maintenance/starboard) "brR" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -29402,7 +29509,7 @@ /obj/structure/sign/warning/electricshock{ pixel_y = -32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable, @@ -29421,7 +29528,7 @@ /turf/open/floor/plating, /area/medical/medbay/central) "brW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/vending/cart, @@ -29449,11 +29556,11 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "brZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29562,7 +29669,7 @@ /obj/machinery/light_switch{ pixel_x = 27 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -29634,7 +29741,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bsv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29648,13 +29755,13 @@ /turf/open/floor/plasteel/white, /area/science/robotics/lab) "bsx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bsy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -29747,7 +29854,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "bsV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -29767,7 +29874,7 @@ }, /area/science/research) "bsY" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/head_of_personnel, @@ -29787,7 +29894,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/white/side{ @@ -29845,7 +29952,7 @@ dir = 2; sortType = 12 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -30022,7 +30129,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hop) "btE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -30046,7 +30153,7 @@ /turf/closed/wall/r_wall, /area/engine/gravity_generator) "btH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair/stool, @@ -30058,15 +30165,15 @@ dir = 8; name = "Teleporter APC"; areastring = "/area/teleporter"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel, /area/teleporter) "btJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/bluespace_beacon, @@ -30074,13 +30181,13 @@ /area/teleporter) "btK" = ( /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/teleporter) "btL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -30091,22 +30198,22 @@ name = "Teleport Access"; req_access_txt = "17" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/teleporter) "btN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/teleporter) "btO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -30217,9 +30324,9 @@ name = "Cargo Office APC"; areastring = "/area/quartermaster/office"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -30308,7 +30415,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -30331,7 +30438,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30343,7 +30450,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30360,7 +30467,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30376,20 +30483,20 @@ /obj/structure/disposalpipe/sorting/mail{ sortType = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /turf/open/floor/plasteel/white, /area/medical/genetics) "buz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -30438,7 +30545,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30461,7 +30568,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30489,7 +30596,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -30573,7 +30680,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30591,7 +30698,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor/heavy, @@ -30633,7 +30740,7 @@ /turf/open/floor/plasteel, /area/teleporter) "bva" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/sign/warning/securearea{ @@ -30652,10 +30759,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30667,7 +30774,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light, @@ -30686,10 +30793,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -30713,11 +30820,11 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -30845,7 +30952,7 @@ /area/medical/genetics) "bvz" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -30879,7 +30986,7 @@ /turf/open/floor/plating, /area/security/checkpoint/science) "bvD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -30922,7 +31029,7 @@ /area/science/research) "bvI" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -31063,10 +31170,10 @@ /area/hallway/primary/central) "bwc" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -31140,7 +31247,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hop) "bwl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -31198,7 +31305,7 @@ /turf/open/floor/plating, /area/teleporter) "bwu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -31265,9 +31372,7 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "bwD" = ( -/obj/machinery/sleeper{ - dir = 8 - }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/sleeper) "bwE" = ( @@ -31340,7 +31445,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bwM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31391,7 +31496,7 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/heads/hor) "bwS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31407,7 +31512,7 @@ name = "Quartermaster"; req_access_txt = "41" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31419,7 +31524,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "bwU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31435,7 +31540,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "bwV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31452,10 +31557,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31464,10 +31569,10 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bwX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -31518,7 +31623,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31530,7 +31635,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31543,7 +31648,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31607,7 +31712,7 @@ "bxt" = ( /obj/machinery/meter, /obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -31616,7 +31721,7 @@ /turf/closed/wall, /area/quartermaster/qm) "bxv" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/depsec/science, @@ -31644,7 +31749,7 @@ /turf/closed/wall, /area/quartermaster/miningdock) "bxA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -31673,7 +31778,7 @@ name = "Head of Personnel"; req_access_txt = "57" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -31712,7 +31817,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bxM" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/tile/red, @@ -31739,7 +31844,7 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "bxP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -31785,7 +31890,7 @@ name = "Research Director"; req_access_txt = "30" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31894,7 +31999,7 @@ name = "Server Room"; req_access_txt = "30" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -31907,7 +32012,7 @@ name = "Security Office"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -32041,9 +32146,9 @@ dir = 1; name = "Quartermaster APC"; areastring = "/area/quartermaster/qm"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/brown{ @@ -32097,16 +32202,16 @@ dir = 1; name = "Mining Dock APC"; areastring = "/area/quartermaster/miningdock"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) "byG" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -32159,7 +32264,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "byL" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/depsec/supply, @@ -32227,7 +32332,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "byR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -32471,7 +32576,7 @@ /obj/machinery/atmospherics/pipe/simple{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, @@ -32504,9 +32609,9 @@ dir = 1; name = "Server Room APC"; areastring = "/area/science/server"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -32666,13 +32771,13 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "bzQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/quartermaster/qm) "bzR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -32689,9 +32794,9 @@ /turf/open/floor/plasteel, /area/medical/sleeper) "bzT" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/quartermaster, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -32731,13 +32836,13 @@ /area/science/research) "bAa" = ( /obj/machinery/door/firedoor/heavy, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, /area/science/research) "bAb" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/shaft_miner, @@ -32745,7 +32850,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bAc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -32775,7 +32880,7 @@ codes_txt = "patrol;next_patrol=AIW"; location = "QM" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -32826,12 +32931,15 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bAn" = ( @@ -32842,7 +32950,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -32854,7 +32962,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/power/apc{ @@ -32862,9 +32970,9 @@ name = "Cargo Security APC"; areastring = "/area/security/checkpoint/supply"; pixel_x = 1; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -32884,14 +32992,12 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "bAq" = ( -/obj/machinery/sleeper{ - dir = 8 - }, /obj/machinery/camera{ c_tag = "Medbay Treatment Center"; network = list("ss13","medbay"); dir = 8 }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/sleeper) "bAr" = ( @@ -32937,7 +33043,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33011,13 +33117,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science) "bAF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, /area/security/checkpoint/science) "bAG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -33032,7 +33138,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science) "bAI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -33047,7 +33153,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33059,10 +33165,10 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33248,17 +33354,17 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "bBg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bBh" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/brown{ @@ -33267,7 +33373,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bBi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -33277,14 +33383,14 @@ dir = 1; pixel_y = -22 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bBk" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/camera{ @@ -33294,7 +33400,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bBl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -33423,7 +33529,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bBz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -33432,7 +33538,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bBA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/junction/flip{ @@ -33441,7 +33547,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bBB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -33464,10 +33570,10 @@ }, /area/science/research) "bBE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -33477,6 +33583,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bBH" = ( @@ -33640,7 +33749,7 @@ dir = 2; name = "Science Security APC"; areastring = "/area/security/checkpoint/science"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/effect/turf_decal/tile/red, @@ -33775,7 +33884,7 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -33784,7 +33893,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -33819,7 +33928,7 @@ req_access_txt = "12" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -33861,7 +33970,7 @@ /turf/open/floor/plasteel, /area/janitor) "bCx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -33878,7 +33987,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -33950,7 +34059,7 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "bCI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/event_spawn, @@ -34198,7 +34307,7 @@ }, /area/science/research) "bDm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -34216,6 +34325,9 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bDp" = ( @@ -34259,7 +34371,7 @@ /area/maintenance/port/aft) "bDu" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34310,9 +34422,9 @@ dir = 1; name = "Tech Storage APC"; areastring = "/area/storage/tech"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -34329,9 +34441,9 @@ dir = 4; name = "Treatment Center APC"; areastring = "/area/medical/sleeper"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -34438,7 +34550,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bDO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -34456,7 +34568,7 @@ /area/janitor) "bDQ" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -34497,7 +34609,7 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/heads/cmo) "bDV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail{ @@ -34517,7 +34629,7 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "bDY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/xeno_spawn, @@ -34537,7 +34649,7 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "bEb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -34547,7 +34659,7 @@ /turf/open/floor/plasteel, /area/science/storage) "bEc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -34573,7 +34685,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bEf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34584,7 +34696,7 @@ }, /area/science/research) "bEg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/research{ @@ -34694,7 +34806,7 @@ areastring = "/area/science/research"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/white/side{ @@ -34702,13 +34814,13 @@ }, /area/science/research) "bEr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -34741,7 +34853,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "bEE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34758,7 +34870,7 @@ /turf/open/floor/plating, /area/maintenance/starboard) "bEG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34770,7 +34882,7 @@ /turf/open/floor/plating, /area/maintenance/starboard) "bEI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -34785,7 +34897,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -34798,7 +34910,7 @@ /turf/closed/wall/r_wall, /area/science/mixing) "bEN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -34829,10 +34941,10 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bER" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -34845,7 +34957,7 @@ /turf/closed/wall, /area/maintenance/port/aft) "bET" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -34854,33 +34966,33 @@ /turf/open/floor/plating, /area/storage/tech) "bEU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/storage/tech) "bEV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/storage/tech) "bEW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -34893,7 +35005,7 @@ /turf/open/floor/plating, /area/storage/tech) "bEY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -34913,13 +35025,13 @@ /turf/open/floor/plating, /area/storage/tech) "bFb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/storage/tech) "bFc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -34941,7 +35053,7 @@ name = "Tech Storage"; req_access_txt = "23" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -34959,7 +35071,7 @@ /turf/open/floor/plasteel, /area/janitor) "bFh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -34975,7 +35087,7 @@ /area/janitor) "bFj" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers, @@ -34990,16 +35102,16 @@ /turf/open/floor/plasteel, /area/janitor) "bFl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/power/apc{ dir = 8; name = "Custodial Closet APC"; areastring = "/area/janitor"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -35328,9 +35440,9 @@ dir = 4; name = "Toxins Lab APC"; areastring = "/area/science/mixing"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -35340,7 +35452,7 @@ /obj/machinery/door/airlock/maintenance{ req_one_access_txt = "8;12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -35404,18 +35516,18 @@ /area/maintenance/port/aft) "bGq" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/port/aft) "bGr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/storage/tech) "bGs" = ( @@ -35423,7 +35535,7 @@ c_tag = "Secure Tech Storage"; dir = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -35447,7 +35559,7 @@ /area/storage/tech) "bGw" = ( /obj/structure/rack, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/spawner/lootdrop/techstorage/rnd, @@ -35479,7 +35591,7 @@ dir = 2 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35501,7 +35613,7 @@ /turf/open/floor/plasteel, /area/janitor) "bGC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor/heavy, @@ -35533,13 +35645,13 @@ /turf/open/floor/plasteel, /area/janitor) "bGF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35548,10 +35660,10 @@ /turf/open/floor/plasteel, /area/science/mixing) "bGG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -35565,29 +35677,29 @@ /turf/open/floor/plasteel, /area/science/mixing) "bGH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/aft) "bGI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/aft) "bGJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/aft) "bGK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -35612,13 +35724,16 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bGN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -35627,7 +35742,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bGO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35643,7 +35758,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bGP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -35772,7 +35887,7 @@ areastring = "/area/science/storage"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/camera{ @@ -35808,7 +35923,7 @@ /turf/open/floor/plating, /area/storage/tech) "bHj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -35858,7 +35973,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -35866,7 +35981,7 @@ /area/maintenance/aft) "bHq" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -35985,7 +36100,7 @@ /turf/open/floor/plasteel, /area/storage/tech) "bHH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -35995,13 +36110,13 @@ name = "Secure Tech Storage"; req_access_txt = "19;23" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/storage/tech) "bHJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/xeno_spawn, @@ -36075,7 +36190,7 @@ /turf/open/floor/plating, /area/medical/medbay/central) "bHU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/grille/broken, @@ -36086,9 +36201,9 @@ dir = 8; name = "Aft Maintenance APC"; areastring = "/area/maintenance/aft"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -36106,7 +36221,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36118,7 +36233,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers, @@ -36164,7 +36279,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bIf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/doorButtons/access_button{ @@ -36188,10 +36303,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bIg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -36207,10 +36322,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36342,7 +36457,7 @@ name = "Xenobiology Maintenance"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36354,10 +36469,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36369,7 +36484,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36450,7 +36565,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "bIF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -36505,7 +36620,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bIL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -36515,7 +36630,7 @@ /area/medical/virology) "bIM" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/sign/warning/securearea{ @@ -36545,7 +36660,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "bIQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -36641,16 +36756,19 @@ req_access_txt = "48"; shuttledocked = 1 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/quartermaster/miningdock) "bJc" = ( /obj/docking_port/stationary{ dir = 8; dwidth = 3; - height = 5; + height = 10; id = "mining_home"; name = "mining shuttle bay"; - roundstart_template = /datum/map_template/shuttle/mining/box; + roundstart_template = /datum/map_template/shuttle/mining/large; width = 7 }, /turf/open/space/basic, @@ -36663,6 +36781,9 @@ name = "Mining Dock"; req_access_txt = "48" }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bJe" = ( @@ -36675,7 +36796,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "bJg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -36731,7 +36852,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance{ @@ -36749,7 +36870,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "bJs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -36761,7 +36882,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "bJt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -36777,10 +36898,10 @@ /turf/open/floor/plasteel, /area/construction) "bJv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -36792,13 +36913,13 @@ /turf/open/floor/plating, /area/maintenance/aft) "bJw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -36814,7 +36935,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bJy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -36879,20 +37000,20 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bJH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/shieldwallgen/xenobiologyaccess, /turf/open/floor/plating, /area/science/xenobiology) "bJI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -36903,7 +37024,7 @@ /turf/open/floor/engine, /area/science/xenobiology) "bJJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -36915,10 +37036,10 @@ /area/science/xenobiology) "bJK" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -36934,7 +37055,7 @@ name = "Test Chamber"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -36944,7 +37065,7 @@ /turf/open/floor/engine, /area/science/xenobiology) "bJM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -37019,7 +37140,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "bKb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -37132,22 +37253,22 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bKr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/storage/tech) "bKs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/storage/tech) "bKt" = ( @@ -37224,10 +37345,10 @@ /turf/open/floor/plating, /area/maintenance/aft) "bKD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -37246,14 +37367,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/cargo_technician, /turf/open/floor/plasteel, /area/quartermaster/sorting) "bKG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/securearea{ @@ -37268,7 +37389,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -37281,7 +37402,7 @@ dir = 8; sortType = 11 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -37294,7 +37415,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -37304,7 +37425,7 @@ /area/maintenance/aft) "bKK" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -37320,10 +37441,10 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -37386,9 +37507,9 @@ dir = 1; name = "CM Office APC"; areastring = "/area/crew_quarters/heads/cmo"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -37414,7 +37535,7 @@ /turf/open/floor/plating, /area/construction) "bKV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -37427,7 +37548,7 @@ /area/engine/atmos) "bKW" = ( /obj/item/wrench, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -37443,7 +37564,7 @@ req_access_txt = "55" }, /obj/structure/table/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/window/reinforced{ @@ -37490,7 +37611,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "bLb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -37534,7 +37655,7 @@ /turf/closed/wall, /area/science/xenobiology) "bLf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -37547,7 +37668,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -37565,7 +37686,7 @@ areastring = "/area/science/mixing/chamber"; dir = 8; name = "Toxins Chamber APC"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable, /turf/open/floor/plasteel/white, @@ -37643,7 +37764,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "bLw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -37702,7 +37823,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -37723,9 +37844,9 @@ name = "Delivery Office APC"; areastring = "/area/quartermaster/sorting"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -37780,7 +37901,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bLO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -37809,7 +37930,7 @@ /area/maintenance/aft) "bLT" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -37854,7 +37975,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bLZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -37870,7 +37991,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -37886,7 +38007,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -37898,10 +38019,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -37910,11 +38031,11 @@ /turf/open/floor/plating, /area/maintenance/aft) "bMe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/junction, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -37927,17 +38048,17 @@ areastring = "/area/science/xenobiology"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/white, /area/science/xenobiology) "bMh" = ( /obj/structure/chair/stool, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -37952,7 +38073,7 @@ /turf/closed/wall, /area/maintenance/port/aft) "bMk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -38110,10 +38231,10 @@ /turf/open/floor/plating/airless, /area/science/test_area) "bMG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -38163,7 +38284,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bMO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -38264,11 +38385,11 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -38314,10 +38435,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -38329,7 +38450,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -38502,7 +38623,7 @@ /turf/open/floor/plating, /area/construction) "bNN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -38697,7 +38818,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bOq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -38788,7 +38909,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "bOD" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel, @@ -38891,9 +39012,9 @@ dir = 8; name = "Engineering Security APC"; areastring = "/area/security/checkpoint/engineering"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/newscaster{ @@ -38996,7 +39117,7 @@ }, /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = 30 }, @@ -39019,7 +39140,7 @@ /turf/closed/wall, /area/engine/atmos) "bOZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -39170,9 +39291,9 @@ dir = 4; name = "Testing Lab APC"; areastring = "/area/science/misc_lab"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/decal/cleanable/dirt, @@ -39277,7 +39398,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -39369,7 +39490,7 @@ /obj/effect/spawner/lootdrop/maintenance, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -39463,7 +39584,7 @@ pixel_y = -6; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/radio/off, @@ -39549,7 +39670,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bQp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -39689,7 +39810,7 @@ "bQL" = ( /obj/machinery/door/firedoor, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -39733,7 +39854,7 @@ /area/tcommsat/computer) "bQQ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -39790,7 +39911,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bRj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -39799,7 +39920,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bRk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -39824,7 +39945,7 @@ name = "Security Office"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -39906,7 +40027,7 @@ /turf/open/floor/plasteel/dark/corner, /area/engine/atmos) "bRv" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/atmospheric_technician, @@ -39948,7 +40069,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -40052,7 +40173,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bRP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -40083,7 +40204,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bRS" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/depsec/engineering, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel, @@ -40116,7 +40237,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/preopen{ @@ -40128,10 +40249,10 @@ /area/science/xenobiology) "bRX" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -40139,7 +40260,7 @@ "bRY" = ( /obj/structure/window/reinforced, /obj/structure/table/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/button/door{ @@ -40154,16 +40275,16 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "bRZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, /area/science/xenobiology) "bSa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -40219,7 +40340,7 @@ "bSm" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -40278,7 +40399,7 @@ /turf/open/floor/plating, /area/construction) "bSw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -40401,7 +40522,7 @@ /area/engine/atmos) "bSI" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -40500,7 +40621,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bSV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/firealarm{ @@ -40509,7 +40630,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bSW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -40522,9 +40643,9 @@ dir = 1; name = "Virology APC"; areastring = "/area/medical/virology"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/camera{ @@ -40557,7 +40678,7 @@ name = "Containment Pen"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -40568,7 +40689,7 @@ /area/science/xenobiology) "bTc" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -40588,7 +40709,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "bTe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window/northleft{ @@ -40603,7 +40724,7 @@ /turf/open/floor/engine, /area/science/xenobiology) "bTg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -40650,7 +40771,7 @@ /turf/open/floor/engine, /area/science/misc_lab) "bTr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -40729,7 +40850,7 @@ /turf/closed/wall, /area/maintenance/port/aft) "bTD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -40797,7 +40918,7 @@ pixel_x = -25; pixel_y = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/disposalpipe/segment, @@ -40952,7 +41073,7 @@ /obj/structure/window/reinforced{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -40961,7 +41082,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "bUe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable, @@ -40974,10 +41095,10 @@ /area/science/xenobiology) "bUf" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -41028,7 +41149,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bUm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -41061,13 +41182,13 @@ /turf/open/space, /area/space/nearstation) "bUs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/aft) "bUt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -41076,10 +41197,10 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41088,7 +41209,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "bUv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -41098,10 +41219,10 @@ /obj/structure/disposalpipe/junction/yjunction{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -41115,7 +41236,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "bUz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41128,9 +41249,9 @@ dir = 2; name = "Telecomms Monitoring APC"; areastring = "/area/tcommsat/computer"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41220,7 +41341,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bUM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -41286,13 +41407,13 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -41301,7 +41422,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41357,7 +41478,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bVe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41419,7 +41540,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "bVm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41435,7 +41556,7 @@ /turf/open/floor/plating, /area/engine/break_room) "bVp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -41628,7 +41749,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bVV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ @@ -41695,7 +41816,7 @@ /turf/open/floor/engine/n2o, /area/engine/atmos) "bWe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -41750,7 +41871,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/preopen{ @@ -41763,7 +41884,7 @@ "bWm" = ( /obj/structure/window/reinforced, /obj/structure/table/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/button/door{ @@ -41778,10 +41899,10 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "bWn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -41805,7 +41926,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "bWt" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -41877,9 +41998,9 @@ dir = 1; name = "Telecomms Server APC"; areastring = "/area/tcommsat/server"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/circuit/telecomms/mainframe, @@ -41903,14 +42024,14 @@ /area/tcommsat/computer) "bWI" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, /area/tcommsat/computer) "bWJ" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -42000,7 +42121,7 @@ c_tag = "Atmospherics West"; dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -42123,7 +42244,7 @@ name = "Containment Pen"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -42133,7 +42254,7 @@ /turf/open/floor/engine, /area/science/xenobiology) "bXg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window/northleft{ @@ -42157,10 +42278,10 @@ codes_txt = "patrol;next_patrol=AIE"; location = "AftH" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -42169,7 +42290,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bXm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -42178,7 +42299,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bXn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -42191,7 +42312,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bXo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, @@ -42201,10 +42322,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bXp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -42213,7 +42334,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bXq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -42283,7 +42404,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "bXC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/telecomms/mainframe, @@ -42306,27 +42427,27 @@ /area/tcommsat/computer) "bXF" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/tcommsat/computer) "bXG" = ( /turf/open/floor/plasteel, /area/tcommsat/computer) "bXH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers, /turf/open/floor/plasteel, /area/engine/break_room) "bXI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -42514,7 +42635,7 @@ /obj/structure/window/reinforced{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -42527,7 +42648,7 @@ dir = 4 }, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -42558,7 +42679,7 @@ /turf/open/floor/engine, /area/science/misc_lab) "bYj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -42580,7 +42701,7 @@ "bYn" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow, @@ -42925,35 +43046,35 @@ /turf/open/floor/plating/airless, /area/space/nearstation) "bZn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "bZo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "bZp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "bZq" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -42964,10 +43085,10 @@ /area/tcommsat/computer) "bZs" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/tcommsat/computer) "bZt" = ( @@ -43038,7 +43159,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -43052,17 +43173,17 @@ name = "privacy shutter" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/crew_quarters/heads/chief) "bZD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -43072,7 +43193,7 @@ }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -43094,16 +43215,16 @@ dir = 8; name = "Atmospherics APC"; areastring = "/area/engine/atmos"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel, /area/engine/atmos) "bZG" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -43215,7 +43336,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/preopen{ @@ -43234,7 +43355,7 @@ pixel_y = 4; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -43243,10 +43364,10 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "bZX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -43296,7 +43417,7 @@ /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "cah" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/circuit/telecomms/mainframe, @@ -43305,7 +43426,7 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/circuit/telecomms/mainframe, @@ -43332,7 +43453,7 @@ name = "Server Room"; req_access_txt = "61" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -43395,7 +43516,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "caq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -43427,7 +43548,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "cau" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43465,7 +43586,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "cay" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -43477,7 +43598,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "caz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -43496,7 +43617,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43513,7 +43634,7 @@ "caE" = ( /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = 30 }, @@ -43572,7 +43693,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43585,10 +43706,10 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -43600,7 +43721,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43610,7 +43731,7 @@ /area/maintenance/aft) "caO" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -43654,7 +43775,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43666,10 +43787,10 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -43679,7 +43800,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -43695,7 +43816,7 @@ name = "Containment Pen"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -43705,7 +43826,7 @@ /turf/open/floor/engine, /area/science/xenobiology) "caW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window/northleft{ @@ -43738,7 +43859,7 @@ /turf/open/floor/plasteel, /area/science/misc_lab) "caZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -43779,7 +43900,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cbg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -43832,10 +43953,10 @@ /area/tcommsat/server) "cbm" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/tcommsat/computer) "cbn" = ( @@ -43847,10 +43968,10 @@ /area/tcommsat/computer) "cbo" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -43866,10 +43987,10 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -43905,7 +44026,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -43934,9 +44055,9 @@ dir = 8; name = "Engineering Foyer APC"; areastring = "/area/engine/break_room"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -43951,10 +44072,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cbw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -43971,7 +44092,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "cby" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44044,7 +44165,7 @@ /turf/open/floor/engine/co2, /area/engine/atmos) "cbJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ @@ -44057,7 +44178,7 @@ /turf/closed/wall, /area/maintenance/aft) "cbL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -44070,7 +44191,7 @@ /area/maintenance/aft) "cbN" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -44088,7 +44209,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -44112,7 +44233,7 @@ /obj/structure/window/reinforced{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light, @@ -44123,7 +44244,7 @@ /area/science/xenobiology) "cbS" = ( /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -44135,7 +44256,7 @@ /area/science/xenobiology) "cbT" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/white, @@ -44162,7 +44283,7 @@ /turf/open/floor/engine, /area/science/misc_lab) "cca" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/solar{ @@ -44172,7 +44293,7 @@ /turf/open/floor/plasteel/airless/solarpanel, /area/solar/port/aft) "ccb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/solar{ @@ -44182,13 +44303,13 @@ /turf/open/floor/plasteel/airless/solarpanel, /area/solar/port/aft) "ccc" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "2-8" }, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/aft) "ccd" = ( @@ -44208,7 +44329,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -44218,7 +44339,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "ccg" = ( -/obj/machinery/telecomms/message_server, +/obj/machinery/telecomms/message_server/preset, /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "cch" = ( @@ -44253,10 +44374,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/chief) "cck" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -44307,7 +44428,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ccp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -44319,7 +44440,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "ccq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -44331,10 +44452,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "ccr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -44349,7 +44470,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "cct" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -44359,7 +44480,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "ccu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -44443,7 +44564,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44452,7 +44573,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "ccJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -44464,7 +44585,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44476,7 +44597,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44492,7 +44613,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44505,7 +44626,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -44536,7 +44657,7 @@ /area/security/checkpoint/supply) "ccU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44554,16 +44675,16 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "ccX" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, /obj/structure/cable{ icon_state = "2-8" }, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/aft) "ccY" = ( @@ -44622,7 +44743,7 @@ dir = 8; sortType = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -44632,20 +44753,20 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/aft) "cdj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ dir = 9 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -44705,10 +44826,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cdr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44723,7 +44844,7 @@ areastring = "/area/maintenance/starboard/aft"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/camera{ @@ -44751,7 +44872,7 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -44816,7 +44937,7 @@ /turf/open/floor/engine/co2, /area/engine/atmos) "cdE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ @@ -44825,10 +44946,10 @@ /turf/open/floor/plating, /area/maintenance/aft) "cdF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44837,7 +44958,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "cdG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44852,7 +44973,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "cdI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44895,7 +45016,7 @@ /area/maintenance/aft) "cdO" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -44909,11 +45030,11 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -44937,7 +45058,7 @@ pixel_x = -25; pixel_y = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -44948,7 +45069,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -44991,7 +45112,7 @@ /area/tcommsat/computer) "cef" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/tcommsat/computer) "ceg" = ( @@ -45044,7 +45165,7 @@ "cem" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -45068,10 +45189,10 @@ /turf/closed/wall/r_wall, /area/engine/engineering) "ceq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -45083,35 +45204,10 @@ }, /turf/open/floor/plasteel, /area/engine/break_room) -"ces" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cet" = ( -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "cev" = ( /obj/effect/spawner/structure/window, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -45159,14 +45255,14 @@ /turf/open/floor/plasteel, /area/engine/atmos) "ceC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/yellow/visible, /turf/open/floor/plating, /area/maintenance/aft) "ceD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -45220,7 +45316,7 @@ /area/maintenance/aft) "ceM" = ( /obj/machinery/meter, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -45280,7 +45376,7 @@ dir = 4 }, /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -45318,7 +45414,7 @@ /turf/closed/wall/r_wall, /area/crew_quarters/heads/chief) "cfc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -45329,15 +45425,14 @@ /turf/open/floor/plating, /area/crew_quarters/heads/chief) "cfd" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = 24 - }, -/obj/structure/closet/radiation, /obj/effect/turf_decal/tile/yellow, /obj/effect/turf_decal/tile/yellow{ dir = 4 }, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/structure/closet/radiation, /turf/open/floor/plasteel, /area/engine/engineering) "cfe" = ( @@ -45348,14 +45443,14 @@ /obj/structure/sign/warning/securearea{ pixel_x = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/port/aft) "cfg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -45380,7 +45475,7 @@ /turf/closed/wall, /area/maintenance/disposal/incinerator) "cfk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -45468,7 +45563,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cfz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -45482,6 +45577,10 @@ /obj/effect/turf_decal/tile/yellow{ dir = 4 }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 24 + }, /turf/open/floor/plasteel, /area/engine/engineering) "cfD" = ( @@ -45490,7 +45589,7 @@ name = "Engineering Maintenance"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -45545,7 +45644,7 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers, @@ -45559,7 +45658,7 @@ /obj/machinery/firealarm{ pixel_y = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -45574,6 +45673,7 @@ req_access_txt = "10" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/engine/engineering) "cfN" = ( @@ -45617,10 +45717,10 @@ /turf/closed/wall, /area/maintenance/disposal/incinerator) "cfW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/yellow/visible, @@ -45631,14 +45731,14 @@ dir = 2; name = "Incinerator APC"; areastring = "/area/maintenance/disposal/incinerator"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/simple/yellow/visible, /turf/open/floor/plating, /area/maintenance/aft) "cfY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -45661,28 +45761,13 @@ capacity = 9e+006; charge = 10000 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"cgb" = ( -/obj/structure/sign/warning/deathsposal{ - pixel_y = 32 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/portable_atmospherics/canister, -/obj/effect/turf_decal/delivery, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cgc" = ( /obj/effect/landmark/xeno_spawn, /turf/open/floor/plating{ @@ -45751,7 +45836,7 @@ /turf/open/floor/circuit/telecomms, /area/science/xenobiology) "cgm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45767,11 +45852,11 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cgo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -45780,7 +45865,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cgp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -45809,13 +45894,13 @@ /area/maintenance/starboard/aft) "cgv" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -45853,7 +45938,7 @@ /turf/open/floor/plating, /area/maintenance/solars/port/aft) "cgB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/smes, @@ -45863,12 +45948,12 @@ /obj/machinery/power/terminal{ dir = 4 }, -/obj/structure/cable{ - icon_state = "0-2" - }, /obj/machinery/light/small{ dir = 1 }, +/obj/structure/cable{ + icon_state = "0-2" + }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "cgD" = ( @@ -45888,13 +45973,13 @@ /area/maintenance/solars/port/aft) "cgF" = ( /obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/aft) "cgG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance{ @@ -45964,10 +46049,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cgS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -45985,7 +46070,7 @@ name = "SMES Room"; req_access_txt = "32" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46120,13 +46205,6 @@ "chg" = ( /turf/open/floor/plating, /area/engine/atmos) -"chh" = ( -/obj/machinery/atmospherics/components/unary/tank/toxins{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "chi" = ( /obj/machinery/meter, /obj/machinery/atmospherics/pipe/simple/general/visible{ @@ -46135,11 +46213,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"chj" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "chk" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, /turf/closed/wall, @@ -46163,22 +46236,12 @@ dir = 8; pixel_x = 24 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"chn" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cho" = ( /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/general/visible{ @@ -46234,7 +46297,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "chv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -46254,14 +46317,14 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/starboard/aft) "chA" = ( /obj/structure/reagent_dispensers/watertank, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -46270,7 +46333,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "chB" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46281,7 +46344,7 @@ /area/engine/engineering) "chC" = ( /obj/structure/rack, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance, @@ -46291,7 +46354,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "chD" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46304,17 +46367,17 @@ /area/engine/engineering) "chE" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "chF" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46326,7 +46389,7 @@ /area/engine/engineering) "chG" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -46339,24 +46402,24 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "chI" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/aft) "chJ" = ( /obj/machinery/power/tracker, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/port/aft) "chK" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-8" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/aft) "chL" = ( @@ -46364,10 +46427,10 @@ /turf/open/space, /area/solar/port/aft) "chM" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-4" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/aft) "chN" = ( @@ -46377,9 +46440,6 @@ /turf/open/floor/plating, /area/maintenance/solars/port/aft) "chO" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, @@ -46387,6 +46447,9 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "chP" = ( @@ -46399,10 +46462,10 @@ /turf/open/floor/plating, /area/maintenance/solars/port/aft) "chQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -46418,19 +46481,19 @@ name = "Port Quarter Solar Access"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "chT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, /area/maintenance/port/aft) "chV" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46448,7 +46511,7 @@ /turf/open/floor/engine, /area/engine/engineering) "chX" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46483,10 +46546,10 @@ /obj/machinery/airalarm{ pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -46500,9 +46563,9 @@ dir = 1; name = "Engineering APC"; areastring = "/area/engine/engineering"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel, @@ -46516,7 +46579,7 @@ /obj/item/clothing/gloves/color/yellow, /obj/item/clothing/gloves/color/yellow, /obj/item/clothing/gloves/color/yellow, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/light{ @@ -46533,7 +46596,7 @@ pixel_x = -5; pixel_y = 30 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -46542,7 +46605,7 @@ /turf/closed/wall, /area/engine/engineering) "cii" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46561,7 +46624,7 @@ /area/engine/engineering) "cij" = ( /obj/machinery/modular_computer/console/preset/engineering, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -46600,7 +46663,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "cin" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -46634,12 +46697,12 @@ /turf/open/floor/engine, /area/engine/engineering) "ciq" = ( -/obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ id = "ceprivacy"; name = "privacy shutter" }, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/crew_quarters/heads/chief) "cir" = ( @@ -46671,15 +46734,6 @@ /obj/machinery/atmospherics/pipe/simple/cyan/visible, /turf/closed/wall/r_wall, /area/engine/atmos) -"ciy" = ( -/obj/structure/sign/warning/nosmoking{ - pixel_x = -28 - }, -/obj/structure/reagent_dispensers/watertank, -/obj/item/extinguisher, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "ciz" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 4 @@ -46687,20 +46741,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"ciA" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) -"ciB" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/structure/disposalpipe/trunk, -/obj/machinery/disposal/bin, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "ciC" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/yellow/visible{ @@ -46708,17 +46748,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/warning/nosmoking{ - pixel_x = 28 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "ciF" = ( /obj/structure/table, /obj/item/cartridge/medical, @@ -46761,7 +46790,7 @@ luminosity = 2 }, /obj/structure/cable/yellow, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-2" }, /obj/machinery/camera{ @@ -46772,7 +46801,7 @@ /turf/open/floor/engine/vacuum, /area/maintenance/disposal/incinerator) "ciN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -46780,7 +46809,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ciO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -46790,10 +46819,10 @@ /turf/open/floor/engine, /area/engine/engineering) "ciP" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-2" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port/aft) "ciQ" = ( @@ -46811,14 +46840,14 @@ dir = 4; name = "Port Quarter Solar APC"; areastring = "/area/maintenance/solars/port/aft"; - pixel_x = 23; + pixel_x = 24; pixel_y = 2 }, /obj/machinery/camera{ c_tag = "Aft Port Solar Control"; dir = 1 }, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "ciS" = ( @@ -46863,7 +46892,7 @@ /turf/open/floor/plating, /area/engine/engineering) "cja" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -46881,7 +46910,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cjd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -46900,19 +46929,19 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "cje" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/engine/engineering) "cjf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/station_engineer, @@ -46935,7 +46964,7 @@ /obj/machinery/requests_console{ announcementConsole = 1; department = "Chief Engineer's Desk"; - departmentType = 3; + departmentType = 4; name = "Chief Engineer RC"; pixel_x = -32 }, @@ -46962,7 +46991,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cji" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -46981,7 +47010,7 @@ dir = 4; pixel_x = 27 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -47031,30 +47060,10 @@ /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/storage/toolbox/emergency, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cjr" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"cjs" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cju" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 1; @@ -47069,20 +47078,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"cjv" = ( -/obj/structure/cable/yellow{ - 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 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cjw" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -47146,7 +47141,7 @@ name = "Starboard Quarter Solar Access"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -47156,17 +47151,17 @@ /turf/closed/wall/r_wall, /area/maintenance/solars/starboard/aft) "cjH" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ - icon_state = "1-8" + icon_state = "1-2" }, /obj/structure/cable{ icon_state = "1-4" }, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "1-8" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/turf/open/space/basic, /area/solar/port/aft) "cjI" = ( /obj/structure/closet/crate, @@ -47277,7 +47272,7 @@ /obj/machinery/light_switch{ pixel_x = 27 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -47347,11 +47342,6 @@ }, /turf/closed/wall/r_wall, /area/engine/atmos) -"cke" = ( -/obj/structure/chair/stool, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "ckf" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -47364,15 +47354,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"ckh" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix to MiniSat" - }, -/obj/structure/disposalpipe/segment, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cki" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -47390,7 +47371,7 @@ /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "ckk" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -47435,10 +47416,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cks" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -47448,16 +47429,16 @@ dir = 8; name = "Starboard Quarter Solar APC"; areastring = "/area/maintenance/solars/starboard/aft"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "cku" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes, @@ -47470,13 +47451,13 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "ckw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "ckx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light{ @@ -47485,13 +47466,13 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "cky" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "ckz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -47516,7 +47497,7 @@ /obj/item/stack/cable_coil, /obj/item/stack/cable_coil, /obj/item/storage/box/lights/mixed, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -47533,7 +47514,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ckH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -47553,7 +47534,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ckL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -47564,10 +47545,10 @@ name = "Chief Engineer"; req_access_txt = "56" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -47592,14 +47573,15 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "ckT" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/turf_decal/tile/yellow{ +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 +/obj/machinery/door/airlock/engineering{ + name = "Engine Room"; + req_access_txt = "10" }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/engine/engineering) "ckU" = ( @@ -47676,18 +47658,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"clg" = ( -/obj/item/radio/intercom{ - pixel_y = -29 - }, -/obj/structure/table, -/obj/item/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/pen, -/turf/open/floor/plating, -/area/maintenance/disposal/incinerator) "clh" = ( /obj/machinery/light/small, /obj/structure/extinguisher_cabinet{ @@ -47717,7 +47687,7 @@ /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "clj" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -47828,12 +47798,12 @@ /obj/machinery/power/terminal{ dir = 1 }, -/obj/structure/cable{ - icon_state = "0-8" - }, /obj/machinery/light/small{ dir = 4 }, +/obj/structure/cable{ + icon_state = "0-8" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "clA" = ( @@ -47852,10 +47822,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "clC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -47874,7 +47844,7 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "clE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes/engineering, @@ -47891,16 +47861,16 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "clF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "clG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/smes/engineering, @@ -47952,16 +47922,11 @@ /obj/effect/turf_decal/tile/yellow{ dir = 1 }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"clO" = ( -/obj/machinery/vr_sleeper, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, /turf/open/floor/plasteel, -/area/crew_quarters/fitness) +/area/engine/engineering) "clQ" = ( /obj/effect/turf_decal/tile/yellow{ dir = 1 @@ -48044,7 +48009,7 @@ "cmf" = ( /obj/effect/mapping_helpers/airlock/locked, /obj/machinery/door/airlock/public/glass/incinerator/atmos_interior, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, @@ -48092,7 +48057,7 @@ /area/maintenance/aft) "cml" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/showroomfloor, @@ -48170,16 +48135,16 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "cmy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "cmz" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -48188,7 +48153,7 @@ /obj/machinery/power/terminal{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -48207,7 +48172,7 @@ /obj/machinery/power/terminal{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -48250,7 +48215,7 @@ dir = 4; pixel_x = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/closet/wardrobe/engineering_yellow, @@ -48266,7 +48231,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cmL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -48281,7 +48246,7 @@ /obj/structure/sign/warning/nosmoking{ pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -48348,7 +48313,7 @@ /turf/open/floor/engine, /area/maintenance/disposal/incinerator) "cna" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{ @@ -48401,38 +48366,38 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "cnk" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/machinery/door/airlock/external{ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "cnl" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-4" + }, /obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/turf/open/space/basic, /area/solar/port/aft) "cnm" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "cnn" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -48448,10 +48413,10 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "cnp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/camera{ @@ -48477,7 +48442,7 @@ c_tag = "Engineering West"; dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/station_engineer, @@ -48495,7 +48460,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/corner{ @@ -48519,7 +48484,7 @@ /obj/item/stock_parts/cell/high/plus, /obj/item/stock_parts/cell/high/plus, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/twohanded/rcl/pre_loaded, @@ -48535,7 +48500,7 @@ "cnC" = ( /obj/effect/mapping_helpers/airlock/locked, /obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -48577,7 +48542,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -48594,7 +48559,7 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "cnL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/window/reinforced, @@ -48606,20 +48571,20 @@ name = "SMES Chamber"; req_access_txt = "32" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "cnN" = ( /obj/structure/window/reinforced, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /obj/machinery/power/terminal{ @@ -48632,7 +48597,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, @@ -48642,13 +48607,13 @@ dir = 1 }, /obj/structure/window/reinforced, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "cnQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light{ @@ -48663,7 +48628,7 @@ /turf/open/floor/plasteel, /area/engine/engine_smes) "cnR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -48673,7 +48638,7 @@ /area/engine/engine_smes) "cnS" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/camera{ @@ -48689,7 +48654,7 @@ /turf/open/floor/plasteel, /area/engine/engine_smes) "cnU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/electricshock{ @@ -48702,7 +48667,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cnX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/extinguisher_cabinet{ @@ -48715,7 +48680,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cnY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/nosmoking{ @@ -48727,7 +48692,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cnZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/airalarm{ @@ -48739,7 +48704,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "coa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -48749,13 +48714,13 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cob" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -48788,7 +48753,7 @@ /obj/machinery/igniter{ id = "Incinerator" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/air_sensor{ @@ -48815,7 +48780,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -48827,7 +48792,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -48849,7 +48814,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -48861,7 +48826,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -48873,7 +48838,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -48892,7 +48857,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -48904,7 +48869,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -48913,7 +48878,7 @@ /turf/open/floor/plasteel, /area/engine/engine_smes) "coH" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48923,7 +48888,7 @@ /area/engine/engineering) "coJ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48935,26 +48900,26 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/spawner/structure/window/plasma/reinforced, /turf/open/floor/plating, /area/engine/engineering) "coL" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, /area/engine/engineering) "coM" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49046,14 +49011,14 @@ /turf/open/space, /area/space/nearstation) "cpi" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard/aft) "cpj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -49134,7 +49099,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cpu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -49145,10 +49110,10 @@ /turf/open/floor/engine, /area/engine/engineering) "cpv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/corner{ @@ -49157,7 +49122,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cpx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -49166,16 +49131,16 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, /area/engine/engineering) "cpA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel, @@ -49189,7 +49154,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -49252,7 +49217,7 @@ dir = 2; name = "SMES room APC"; areastring = "/area/engine/engine_smes"; - pixel_y = -24 + pixel_y = -23 }, /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -49300,7 +49265,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cpY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -49328,7 +49293,7 @@ /turf/open/floor/plating, /area/engine/engineering) "cqb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/engine, @@ -49350,7 +49315,7 @@ /area/engine/engineering) "cqe" = ( /obj/effect/turf_decal/stripes/corner, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/green/visible{ @@ -49417,7 +49382,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/cyan/visible{ @@ -49504,7 +49469,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cqy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -49531,7 +49496,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/green/visible, @@ -49616,7 +49581,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "cqM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -49755,7 +49720,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cro" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -49766,21 +49731,21 @@ /turf/closed/wall/r_wall, /area/engine/engineering) "crq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/engine/engineering) "crr" = ( -/obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/engine/engineering) "crs" = ( @@ -49844,63 +49809,63 @@ /turf/open/floor/plating, /area/engine/engineering) "crB" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "2-4" }, /obj/structure/cable{ icon_state = "1-4" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/turf/open/space/basic, /area/solar/starboard/aft) "crC" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-4" - }, +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/space/basic, /area/solar/starboard/aft) "crD" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-8" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/turf/open/space/basic, /area/solar/starboard/aft) "crE" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard/aft) -"crF" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/structure/lattice/catwalk, -/turf/open/space, -/area/solar/starboard/aft) -"crG" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/structure/cable{ icon_state = "2-8" }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/open/space, +/area/solar/starboard/aft) +"crF" = ( /obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/space, +/area/solar/starboard/aft) +"crG" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, /turf/open/space, /area/solar/starboard/aft) "crH" = ( @@ -50129,7 +50094,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -50139,10 +50104,10 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat_interior) "csE" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-2" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard/aft) "csH" = ( @@ -50182,10 +50147,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/green/visible{ @@ -50231,6 +50196,8 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat_interior) "csY" = ( +/obj/structure/cable, +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-2" }, @@ -50240,16 +50207,14 @@ /obj/structure/cable{ icon_state = "0-8" }, -/obj/structure/cable, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard/aft) "csZ" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/lattice/catwalk, -/turf/open/space, +/turf/open/space/basic, /area/solar/starboard/aft) "cta" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -50449,10 +50414,10 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "ctG" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, @@ -50464,7 +50429,7 @@ "ctJ" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/start/cyborg, @@ -50534,17 +50499,17 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "ctT" = ( /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -50559,14 +50524,14 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "MiniSat Foyer APC"; areastring = "/area/ai_monitored/turret_protected/aisat_interior"; - pixel_x = 27 + pixel_x = 24 }, /obj/structure/chair, /turf/open/floor/plasteel/dark, @@ -50626,7 +50591,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat_interior"; enabled = 1; - icon_state = "control_standby"; name = "Antechamber Turret Control"; pixel_y = -24; req_access = null; @@ -50642,7 +50606,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cue" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -50688,7 +50652,7 @@ /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/aisat_interior) "cul" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -50767,7 +50731,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cuu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -50869,7 +50833,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat/atmos"; enabled = 1; - icon_state = "control_standby"; name = "Atmospherics Turret Control"; pixel_x = -27; req_access = null; @@ -50896,7 +50859,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat/service"; enabled = 1; - icon_state = "control_standby"; name = "Service Bay Turret Control"; pixel_x = 27; req_access = null; @@ -50909,7 +50871,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cuG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -50974,7 +50936,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/service) "cuL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -50987,9 +50949,9 @@ dir = 8; name = "MiniSat Atmospherics APC"; areastring = "/area/ai_monitored/turret_protected/aisat/atmos"; - pixel_x = -27 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/portable_atmospherics/scrubber, @@ -50999,7 +50961,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/atmos) "cuN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -51008,7 +50970,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/atmos) "cuO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/ai_slipper{ @@ -51018,7 +50980,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/atmos) "cuP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51027,7 +50989,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cuQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51041,7 +51003,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cuR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51051,13 +51013,13 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cuS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/ai_slipper{ @@ -51068,7 +51030,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cuT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51077,7 +51039,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/service) "cuU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51091,19 +51053,19 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cuV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/service) "cuW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/ai_slipper{ uses = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -51113,9 +51075,9 @@ dir = 4; name = "MiniSat Service Bay APC"; areastring = "/area/ai_monitored/turret_protected/aisat/service"; - pixel_x = 27 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/port_gen/pacman, @@ -51188,7 +51150,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cve" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51198,7 +51160,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat/hallway"; enabled = 1; - icon_state = "control_standby"; name = "Chamber Hallway Turret Control"; pixel_x = 32; pixel_y = -24; @@ -51238,7 +51199,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/service) "cvi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -51265,7 +51226,7 @@ /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/aisat/hallway) "cvo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51284,7 +51245,7 @@ name = "MiniSat Maintenance"; req_access_txt = "65" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -51343,7 +51304,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/hallway) "cvz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51380,7 +51341,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/hallway) "cvC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -51421,7 +51382,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/hallway) "cvI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51473,7 +51434,7 @@ /obj/structure/sign/warning/securearea{ pixel_x = -32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -51514,7 +51475,7 @@ /turf/open/floor/circuit, /area/ai_monitored/turret_protected/aisat/hallway) "cvT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -51526,19 +51487,19 @@ name = "MiniSat Maintenance"; req_access_txt = "65" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/hallway) "cvV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/aisat/hallway) "cvW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -51564,7 +51525,7 @@ dir = 4; name = "MiniSat Chamber Hallway APC"; areastring = "/area/ai_monitored/turret_protected/aisat/hallway"; - pixel_x = 27 + pixel_x = 24 }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/aisat/hallway) @@ -51576,7 +51537,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/hallway) "cwc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51585,28 +51546,13 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/hallway) -"cwd" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/radio/intercom{ - broadcasting = 1; - frequency = 1447; - listening = 0; - name = "Station Intercom (AI Private)"; - pixel_x = -28; - pixel_y = -29 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/hallway) "cwe" = ( /obj/structure/sign/warning/securearea, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai) "cwf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51648,7 +51594,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "cwj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51683,7 +51629,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "cwo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -51692,7 +51638,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "cwp" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/structure/extinguisher_cabinet{ pixel_x = 27 }, @@ -51712,7 +51658,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/ai) "cwt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51724,7 +51670,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "cwu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/ai_slipper{ @@ -51743,7 +51689,7 @@ /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "cww" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51752,7 +51698,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "cwx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51774,10 +51720,10 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "cwA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/holopad, @@ -51822,14 +51768,14 @@ /obj/structure/window/reinforced{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "AI Chamber APC"; areastring = "/area/ai_monitored/turret_protected/ai"; - pixel_y = -24 + pixel_y = -23 }, /obj/machinery/flasher{ id = "AI"; @@ -51844,7 +51790,7 @@ /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "cwH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -51892,17 +51838,17 @@ /turf/open/space, /area/space/nearstation) "cxk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "cxl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/lawyer, @@ -51950,9 +51896,6 @@ /turf/open/floor/plating, /area/security/processing) "cxN" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, @@ -51960,6 +51903,9 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "cxP" = ( @@ -52121,9 +52067,6 @@ /turf/open/floor/plating, /area/engine/atmos) "cyK" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, @@ -52131,6 +52074,9 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) "cyL" = ( @@ -52138,22 +52084,11 @@ req_access_txt = "12" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/maintenance/port/aft) -"cyM" = ( -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/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) "cyT" = ( /obj/docking_port/stationary{ dir = 8; @@ -52166,9 +52101,6 @@ /turf/open/space/basic, /area/space) "cyU" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, @@ -52176,6 +52108,9 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "czg" = ( @@ -52215,7 +52150,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -52223,7 +52158,7 @@ "czH" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -52273,7 +52208,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "czR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -52294,7 +52229,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -52303,7 +52238,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -52315,7 +52250,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -52324,7 +52259,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -52405,16 +52340,16 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "cAh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/port/aft) "cAi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -52423,10 +52358,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/green/visible, @@ -52437,7 +52372,7 @@ /turf/open/floor/engine, /area/engine/supermatter) "cAo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/corner{ @@ -52446,7 +52381,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cAp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/binary/pump/on{ @@ -52468,7 +52403,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cAr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/binary/pump{ @@ -52500,7 +52435,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cAu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/emitter/anchored{ @@ -52563,16 +52498,16 @@ /turf/open/floor/plating, /area/maintenance/disposal) "cAG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/power/apc{ dir = 2; name = "Head of Personnel APC"; areastring = "/area/crew_quarters/heads/hop"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -52610,7 +52545,7 @@ name = "Security Maintenance"; req_access_txt = "1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -52635,7 +52570,7 @@ name = "AI Core Door"; req_access_txt = "16" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/circuit, @@ -52693,7 +52628,7 @@ /turf/open/space, /area/space/nearstation) "cAV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/showcase/cyborg/old{ @@ -52728,13 +52663,13 @@ /turf/open/space, /area/space/nearstation) "cAY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall, /area/ai_monitored/turret_protected/ai) "cAZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, @@ -52743,7 +52678,7 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/circuit, @@ -52813,7 +52748,7 @@ "cBj" = ( /obj/structure/table, /obj/item/folder/blue, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -52876,7 +52811,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cBx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -52912,17 +52847,17 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "cBC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel, /area/storage/tech) "cBD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -52948,17 +52883,17 @@ /area/engine/atmos) "cBG" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel/white, /area/science/xenobiology) "cBH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -53000,7 +52935,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53028,7 +52963,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cBS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -53053,7 +52988,7 @@ name = "Security Office"; req_access_txt = "1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -53128,7 +53063,7 @@ /turf/open/floor/plating, /area/maintenance/port) "cCl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -53275,7 +53210,7 @@ dir = 6 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -53289,10 +53224,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -53304,7 +53239,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -53317,7 +53252,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cDi" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53334,7 +53269,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cDj" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53361,16 +53296,16 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cDo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/engine/engineering) "cDp" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -53379,19 +53314,19 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, /area/engine/engineering) "cDs" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -53421,7 +53356,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cDx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/binary/pump{ @@ -53492,7 +53427,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/visible, @@ -53551,7 +53486,7 @@ /turf/open/space, /area/space/nearstation) "cDZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/closet/radiation, @@ -53584,7 +53519,7 @@ /obj/machinery/light{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/green/visible, @@ -53605,7 +53540,7 @@ /obj/machinery/light{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/visible, @@ -53648,7 +53583,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cEs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/binary/pump/on{ @@ -53666,7 +53601,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -53678,7 +53613,7 @@ network = list("engine"); pixel_x = 23 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -53688,7 +53623,7 @@ dir = 8 }, /obj/machinery/power/rad_collector/anchored, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /obj/structure/window/plasma/reinforced{ @@ -53713,7 +53648,7 @@ dir = 4 }, /obj/machinery/power/rad_collector/anchored, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /obj/structure/window/plasma/reinforced{ @@ -53722,7 +53657,7 @@ /turf/open/floor/engine, /area/engine/supermatter) "cEz" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -53736,7 +53671,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -53745,10 +53680,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/meter, @@ -53758,7 +53693,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cEC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/binary/pump{ @@ -53812,7 +53747,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/item/tank/internals/plasma, @@ -53828,7 +53763,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -53837,10 +53772,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/visible, @@ -53865,7 +53800,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/binary/pump{ @@ -53879,7 +53814,7 @@ dir = 5 }, /obj/machinery/power/rad_collector/anchored, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /obj/structure/window/plasma/reinforced{ @@ -53892,7 +53827,7 @@ dir = 9 }, /obj/machinery/power/rad_collector/anchored, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /obj/structure/window/plasma/reinforced{ @@ -53918,7 +53853,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -53927,7 +53862,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/binary/pump{ @@ -54104,7 +54039,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cGe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/orange/visible{ @@ -54120,7 +54055,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cGg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ @@ -54129,7 +54064,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cGh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/stripes/corner, @@ -54181,7 +54116,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cGv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line, @@ -54233,7 +54168,7 @@ name = "Laser Room"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/engine, @@ -54262,7 +54197,7 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "cGS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -54305,46 +54240,46 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "cHb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/engine/engineering) "cHc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, /area/engine/engineering) "cHd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/engine/engineering) "cHe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/engine/engineering) "cHg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/engine/engineering) "cHj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/emitter/anchored{ @@ -54354,7 +54289,7 @@ /turf/open/floor/plating, /area/engine/engineering) "cHn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -54372,13 +54307,13 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "cHr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, /area/engine/engineering) "cHD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54386,7 +54321,7 @@ dir = 2; sortType = 14 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -54399,7 +54334,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -54421,7 +54356,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -54436,7 +54371,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -54451,10 +54386,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -54469,7 +54404,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -54484,7 +54419,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -54501,7 +54436,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -54513,7 +54448,7 @@ /obj/machinery/mech_bay_recharge_port{ dir = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -54525,7 +54460,7 @@ /turf/open/floor/plasteel/white, /area/science/robotics/lab) "cHN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit, @@ -54728,7 +54663,7 @@ /turf/open/floor/plating, /area/engine/supermatter) "cMQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/solar{ @@ -54767,9 +54702,9 @@ dir = 1; name = "Central Maintenance APC"; areastring = "/area/maintenance/central"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -54778,7 +54713,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -54788,13 +54723,13 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/quartermaster/sorting) "cNR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -54804,9 +54739,9 @@ dir = 4; name = "Starboard Maintenance APC"; areastring = "/area/maintenance/starboard"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -54815,18 +54750,18 @@ /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/maintenance/starboard) "cNU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -54837,7 +54772,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -54849,7 +54784,7 @@ /obj/machinery/door/airlock/maintenance{ req_one_access_txt = "8;12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54864,7 +54799,7 @@ /turf/closed/wall, /area/maintenance/starboard/aft) "cNZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54925,7 +54860,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -54946,7 +54881,7 @@ /turf/closed/wall, /area/security/courtroom) "cSE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark/telecomms, @@ -54962,7 +54897,7 @@ /turf/closed/wall/r_wall, /area/engine/supermatter) "cSH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/meter, @@ -54985,7 +54920,7 @@ /turf/open/floor/engine, /area/engine/engineering) "cSK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ @@ -55049,7 +54984,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -55059,7 +54994,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -55068,7 +55003,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -55081,7 +55016,7 @@ /area/engine/engineering) "cSR" = ( /obj/effect/turf_decal/delivery, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/nosmoking{ @@ -55096,7 +55031,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -55201,7 +55136,7 @@ /area/engine/engineering) "cTc" = ( /obj/effect/spawner/structure/window, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -55212,7 +55147,7 @@ /turf/open/floor/plating, /area/engine/engineering) "cTe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -55224,13 +55159,13 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cTf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/requests_console{ announcementConsole = 0; department = "Engineering"; - departmentType = 4; + departmentType = 3; name = "Engineering RC"; pixel_y = 30 }, @@ -55243,16 +55178,16 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cTD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/power/apc{ dir = 8; name = "Central Maintenance APC"; areastring = "/area/maintenance/central/secondary"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -55286,7 +55221,7 @@ req_access_txt = "12" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -55294,17 +55229,17 @@ /area/maintenance/department/medical/morgue) "cTK" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/department/medical/morgue) "cTL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, @@ -55314,9 +55249,9 @@ dir = 4; name = "Morgue Maintenance APC"; areastring = "/area/maintenance/department/medical/morgue"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -55325,7 +55260,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55335,7 +55270,7 @@ /area/maintenance/department/medical/morgue) "cTS" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -55345,7 +55280,7 @@ /turf/open/floor/plating, /area/maintenance/department/medical/morgue) "cTX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/shieldwallgen/xenobiologyaccess, @@ -55454,7 +55389,7 @@ /area/security/detectives_office) "dCN" = ( /obj/effect/turf_decal/stripes/line, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -55494,12 +55429,18 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "dPH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light, /turf/open/floor/plasteel, /area/hallway/primary/central) +"dUO" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) "dYq" = ( /turf/closed/wall, /area/science/nanite) @@ -55519,7 +55460,7 @@ /area/science/nanite) "elq" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -55564,14 +55505,6 @@ }, /turf/open/floor/plasteel, /area/vacant_room/commissary) -"eHI" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "eRu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, @@ -55610,13 +55543,13 @@ /area/science/mixing/chamber) "fgq" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -55651,11 +55584,21 @@ dir = 4; pixel_x = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, /area/hallway/secondary/service) +"foE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) "fsD" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 4 @@ -55706,7 +55649,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "fXM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -55718,7 +55661,7 @@ /turf/open/floor/plasteel, /area/science/misc_lab) "gbq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -55746,7 +55689,7 @@ /turf/closed/wall, /area/quartermaster/warehouse) "glg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -55783,7 +55726,6 @@ c_tag = "Fitness Room South"; dir = 1 }, -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/green, /obj/effect/turf_decal/tile/green{ dir = 4 @@ -55813,16 +55755,6 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/vacant_room/commissary) -"gGE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "gHj" = ( /obj/structure/closet/radiation, /turf/open/floor/plasteel/white/corner{ @@ -55871,15 +55803,15 @@ dir = 4; name = "Research Lab APC"; areastring = "/area/science/lab"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/white, /area/science/lab) "gWd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -55902,16 +55834,16 @@ "hcE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/power/apc{ dir = 4; name = "Cargo Warehouse APC"; areastring = "/area/quartermaster/warehouse"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -55945,7 +55877,7 @@ /turf/open/floor/plasteel, /area/vacant_room/commissary) "hsQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/carpet, @@ -55959,6 +55891,12 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"hMJ" = ( +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) "hYR" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden, /turf/open/floor/plating, @@ -56003,6 +55941,12 @@ }, /turf/open/floor/engine, /area/science/misc_lab) +"iBZ" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/electrical) "iEJ" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod One" @@ -56043,14 +55987,14 @@ /turf/open/floor/plasteel, /area/security/brig) "jbf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ areastring = "/area/hallway/secondary/service"; dir = 1; name = "Service Hall APC"; - pixel_y = 25 + pixel_y = 23 }, /turf/open/floor/plasteel, /area/hallway/secondary/service) @@ -56079,13 +56023,19 @@ dir = 1; name = "Law Office APC"; areastring = "/area/lawoffice"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, /area/maintenance/fore) +"jvP" = ( +/obj/machinery/shower{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) "jxy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -56105,7 +56055,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56118,7 +56068,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56159,7 +56109,7 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "jVl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -56215,10 +56165,10 @@ /area/security/detectives_office) "klL" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -56242,7 +56192,7 @@ "kob" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -56288,7 +56238,7 @@ /turf/closed/wall, /area/maintenance/starboard) "kyZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -56359,7 +56309,7 @@ /area/science/mixing) "kPd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -56383,7 +56333,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white/side{ @@ -56436,9 +56386,14 @@ }, /turf/open/floor/plasteel/white, /area/medical/chemistry) +"lqJ" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lantern, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "ltd" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -56448,7 +56403,7 @@ /turf/open/floor/plating, /area/maintenance/starboard) "ltG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -56553,6 +56508,12 @@ /obj/machinery/vending/wardrobe/bar_wardrobe, /turf/open/floor/wood, /area/crew_quarters/bar) +"mvb" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel/white/corner{ + dir = 1 + }, +/area/hallway/secondary/exit) "mBm" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -56563,7 +56524,7 @@ /turf/open/floor/plasteel, /area/science/nanite) "mBv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line, @@ -56573,6 +56534,11 @@ }, /turf/open/floor/engine, /area/engine/engineering) +"mFY" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/vending/modularpc, +/turf/open/floor/plasteel, +/area/storage/primary) "mJd" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -56592,14 +56558,14 @@ network = list("ss13","rd") }, /obj/structure/closet/l3closet/scientist, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, /area/science/explab) "mMA" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -56611,7 +56577,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "mSf" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/grimy, @@ -56660,7 +56626,7 @@ areastring = "/area/construction"; pixel_y = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -56679,7 +56645,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "nGt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -56690,7 +56656,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "nGv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -56760,8 +56726,20 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/engine, /area/science/explab) +"nXT" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) "nXU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -56794,6 +56772,14 @@ }, /turf/open/floor/plasteel/white, /area/science/explab) +"ozs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/table/glass, +/obj/item/storage/fancy/candle_box, +/turf/open/floor/plasteel/dark, +/area/chapel/main) "oDF" = ( /obj/machinery/light, /turf/open/floor/plating, @@ -56805,10 +56791,10 @@ /turf/open/floor/engine, /area/science/misc_lab) "oIK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -56868,7 +56854,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "pjk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -56913,8 +56899,15 @@ /obj/structure/chair/stool, /turf/open/floor/plasteel/white, /area/science/mixing) +"ptP" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/space, +/area/solar/starboard/aft) "pvj" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) @@ -56969,7 +56962,7 @@ pixel_x = 8; pixel_y = 28 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/junction{ @@ -57084,13 +57077,13 @@ /obj/effect/turf_decal/bot{ dir = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/science/mixing) "qQH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57169,7 +57162,7 @@ /turf/open/floor/plasteel, /area/security/brig) "rOY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57202,7 +57195,7 @@ /turf/open/floor/plasteel/dark, /area/science/nanite) "sjK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57216,7 +57209,7 @@ req_access_txt = "12" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -57229,10 +57222,10 @@ areastring = "/area/vacant_room/commissary"; dir = 4; name = "Vacant Commissary APC"; - pixel_x = 27; + pixel_x = 24; pixel_y = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -57256,7 +57249,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white/side{ @@ -57309,6 +57302,13 @@ }, /turf/open/floor/engine, /area/science/misc_lab) +"sWA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/shower{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) "sXy" = ( /obj/machinery/door/airlock/external{ name = "Security External Airlock"; @@ -57321,10 +57321,10 @@ /area/security/main) "sYI" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/preopen{ @@ -57361,7 +57361,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57378,7 +57378,7 @@ /turf/open/floor/plasteel/white, /area/science/explab) "tfg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57401,7 +57401,7 @@ /turf/open/floor/plasteel, /area/science/nanite) "thy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -57437,13 +57437,13 @@ /obj/effect/turf_decal/tile/red{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, /area/security/brig) "tDw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -57453,10 +57453,10 @@ /area/science/misc_lab) "tJU" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/crew_quarters/heads/hos) "tKG" = ( @@ -57483,7 +57483,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/white, @@ -57547,7 +57547,7 @@ /turf/open/floor/plasteel, /area/science/nanite) "uCq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -57580,7 +57580,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, @@ -57607,7 +57607,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "uVS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -57638,7 +57638,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -57667,7 +57667,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "vqI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57685,9 +57685,9 @@ areastring = "/area/security/detectives_office"; dir = 8; name = "Detective's Office APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/disposalpipe/segment{ @@ -57733,7 +57733,7 @@ name = "Experimentation Lab"; req_access_txt = "47" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -57742,7 +57742,7 @@ /turf/open/floor/plasteel/white, /area/science/explab) "vHp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57794,6 +57794,12 @@ }, /turf/open/floor/plasteel/white, /area/science/mixing) +"vUf" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/quartermaster/miningdock) "wfU" = ( /obj/machinery/atmospherics/components/trinary/mixer{ dir = 8 @@ -57834,7 +57840,7 @@ /obj/machinery/light{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -57869,7 +57875,7 @@ /turf/open/floor/plasteel/white, /area/science/explab) "wQy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -57892,10 +57898,23 @@ /obj/item/reagent_containers/glass/bucket, /turf/open/floor/plasteel, /area/hallway/secondary/service) +"wXs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/structure/chair{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit) "wZy" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/white, @@ -57918,7 +57937,7 @@ dir = 4; name = "Experimentation Lab APC"; areastring = "/area/science/explab"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -57930,7 +57949,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -57938,10 +57957,10 @@ "xiw" = ( /obj/machinery/door/airlock{ name = "Service Hall"; - req_one_access_txt = "25;26;35;28" + req_one_access_txt = "22;25;26;28;35;37;38;46" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -77159,7 +77178,7 @@ ayy ayy aAO aBN -aDe +mFY aDe aFT aDe @@ -79001,7 +79020,7 @@ aaf aaf bGi bHz -byE +vUf bKk bGi aoV @@ -79220,7 +79239,7 @@ aEO aGc aHF aJd -aKb +aKv aLN aMQ aNT @@ -79258,7 +79277,7 @@ aaa aaa bGi bHy -byE +vUf bKj bGi aoV @@ -79772,7 +79791,7 @@ bxy bxy ahw bHA -bHA +nXT bKl bxy aaH @@ -80029,7 +80048,7 @@ bDk agv byE byE -byE +vUf byE bGi aaf @@ -80542,8 +80561,8 @@ bvI bAm bBG bDo -byE -byE +dUO +hMJ bKp bGi aaf @@ -89049,9 +89068,9 @@ bZE cbs cCT cdn +sWA cej cep -ces clN ccm ckF @@ -89306,10 +89325,10 @@ cfh cfM cco cdp -cel -cyM -ckT cgU +cel +ckT +foE cco cgU cgU @@ -89563,9 +89582,9 @@ cap ctR ccn cdo +jvP cek ccw -cet cfd cfB cfI @@ -93854,10 +93873,10 @@ aaa aaa aaf arj -clO +aua asZ aua -clO +aua awB axY azh @@ -94706,8 +94725,8 @@ bVu bVu bVu bVu -bVu caJ +aaf aoV aoV aoV @@ -94960,11 +94979,11 @@ aaf cfj cfU cfj -cfj ckf cfj cfj -bUr +amp +bVu bVu bVu bVu @@ -95215,11 +95234,11 @@ bzs bzs cfj cfj -cjp -chh -ciy -cke -clg +akC +akF +alN +alY +alZ cfj aoV aoV @@ -95471,10 +95490,10 @@ bzs bAw caK cfj -ciB -ckh -chj -ciA +aku +alf +cjr +cjr cjr clh cfj @@ -95731,7 +95750,7 @@ chk chl ciz chi -gGE +alm cjr ckg cmb @@ -95988,7 +96007,7 @@ cfl cfZ cki cld -eHI +alo cjr csq xEu @@ -96245,7 +96264,7 @@ cfk cfY rfW ckj -cjs +alE cle cli uPT @@ -96499,10 +96518,10 @@ cbL cdI ceG cfj -cgb -chn -clj -cjv +akE +alj +all +alM clj ckk cmf @@ -96542,7 +96561,7 @@ cvT cBS cwc cvz -cwd +cvz cwf cwj cwo @@ -96758,7 +96777,7 @@ ceF cfj cga chm -ciD +akD cju clf csr @@ -96972,7 +96991,7 @@ bdc bfL beY bhm -bhm +ajY bhm bkR bfL @@ -104398,7 +104417,7 @@ auI awP avJ awO -awO +iBZ asB aCM aEg @@ -104667,7 +104686,7 @@ aFw aMM aFz aFz -aQw +lqJ aRS aRS aRS @@ -104914,7 +104933,7 @@ auI azu aAz asB -aCO +ozs aEh aFz aHk @@ -104925,7 +104944,7 @@ aML aFz aFz aQw -cdl +aRS aRS aRS aRS @@ -105171,24 +105190,24 @@ auI azw aAA asB -aCQ -aEk -aFB -aHn -aFB -csT -aFB -aLr -aFB -aPn -aQy -aPn -aTi -aUK -aVU -aWg +aCO +aEh +aFz +aCO +aFz +aFz +aFz +aEh +aFz +aFz +lqJ +cdl +aRS +aRS +aRS +aRS aZf -baA +aRS bbF aYV aXq @@ -105426,26 +105445,26 @@ auJ awS auI awO -awO +iBZ asB -aCP -aEj -aFA -aHm -aEj -aEj -aEj -aEj -aEj -aPm -aQx -aPm -aTh -aUJ -aTh -aXz -aZg -aFz +aCQ +aEk +aFB +aHn +aFB +csT +aFB +aLr +aFB +aPn +aQy +aPn +aTi +aUK +aVU +aWg +aZf +baA bbF aYV bdv @@ -105685,25 +105704,25 @@ ayj azx aAB asB -aCR -aEm -aCR -aPl -aQv -aPl -aQv -aCR -aNY -aCR -aQA -aCR -aTj +aCP +aEj +aFA +aHm +aEj +aEj +aEj +aEj +aEj +aPm +aQx +aPm +aTh +aUJ +aTh +aXz +aZg aFz -aVV -aXB -aZh -baB -aCR +bbF bcq bdx bcq @@ -105943,23 +105962,23 @@ asB asB asB aCR -bfb +aEm aCR -aHo -aIE -aKe -aIE +aPl +aQv +aPl +aQv aCR -aNX -aPo -aQz +aNY aCR +aQA aCR -aCR -aCR -aXy -aZe -aCR +aTj +aFz +aVV +aXB +aZh +baB aCR bcy bdw @@ -106200,24 +106219,24 @@ aaf aaf atS aCR -aEn +bfb aCR -aHq -aHq -aHq -aHq +aHo +aIE +aKe +aIE +aCR +aNX +aPo +aQz aCR aCR aCR aCR +aXy +aZe +aCR aCR -aTl -aUL -aVW -aXD -aZj -baD -bbG aTk bdy beI @@ -106456,25 +106475,25 @@ aoV aoV aaf atS -aaf -aaa -aaf -aaa -aaa -aaa -aaa -aMZ -aNZ -aPp -aQB -aNa -aTk -aPq -aPq -aXC -aZi -baC -aPq +aCR +aEn +aCR +aHq +aHq +aHq +aHq +aCR +aCR +aCR +aCR +aCR +aTl +aUL +aVW +aXD +aZj +baD +bbG aPq bdy beH @@ -106723,9 +106742,9 @@ aaf aMZ aOb aPr -aQC +wXs aRU -aQC +mvb aQC aQC czO @@ -108344,7 +108363,7 @@ crF aaa aaa aaa -csZ +ptP aaa aaa aaa diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 3c14defea68..8d64643adb1 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -287,6 +287,21 @@ /obj/item/clothing/head/welding, /turf/open/floor/plasteel, /area/science/robotics/mechbay) +"aaH" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/mapping_helpers/dead_body_placer, +/turf/open/floor/plasteel, +/area/medical/morgue) "aaO" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -567,7 +582,7 @@ /turf/closed/wall/r_wall, /area/maintenance/solars/starboard/fore) "act" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/light/small{ @@ -580,7 +595,7 @@ /area/maintenance/solars/starboard/fore) "acu" = ( /obj/machinery/power/smes, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/stripes/line{ @@ -630,7 +645,7 @@ /area/construction/mining/aux_base) "acH" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -652,7 +667,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow, @@ -666,7 +681,7 @@ name = "Starboard Bow Solar Access"; req_access_txt = "10" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -681,10 +696,10 @@ /turf/open/floor/plasteel, /area/maintenance/solars/starboard/fore) "acK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -884,7 +899,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "ade" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -925,7 +940,7 @@ dir = 2; name = "Starboard Bow Solar APC"; areastring = "/area/maintenance/solars/starboard/fore"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -933,7 +948,7 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/fore) "adi" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/airalarm{ @@ -1027,7 +1042,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "adP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1121,7 +1136,7 @@ /area/hallway/secondary/entry) "aek" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1186,7 +1201,7 @@ /area/construction/mining/aux_base) "aeD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow{ @@ -1304,7 +1319,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -1428,7 +1443,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -1492,7 +1507,7 @@ /area/construction/mining/aux_base) "afX" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -1541,14 +1556,14 @@ /obj/machinery/light{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Auxiliary Construction APC"; areastring = "/area/construction/mining/aux_base"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1562,11 +1577,11 @@ /area/construction/mining/aux_base) "agn" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -1656,7 +1671,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "agN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -1749,7 +1764,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "ahb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -1795,7 +1810,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "ahu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -1852,7 +1867,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "ahE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1980,7 +1995,7 @@ /area/hallway/secondary/entry) "ahY" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2016,7 +2031,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aii" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -2025,14 +2040,14 @@ /area/maintenance/starboard/fore) "aij" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/starboard/fore) "aik" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -2215,7 +2230,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aiF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -2317,7 +2332,7 @@ /area/maintenance/starboard/fore) "aiX" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2484,7 +2499,7 @@ /area/maintenance/starboard/fore) "ajk" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -2693,14 +2708,14 @@ }, /area/hallway/secondary/entry) "ajB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 1; name = "Arrivals Hallway APC"; areastring = "/area/hallway/secondary/entry"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -2718,7 +2733,7 @@ }, /area/hallway/secondary/entry) "ajC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -2825,7 +2840,7 @@ "ajM" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -2970,7 +2985,7 @@ /turf/open/floor/plasteel/white/corner, /area/hallway/secondary/entry) "akb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -3128,7 +3143,7 @@ /area/maintenance/starboard/fore) "akp" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -3243,7 +3258,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -3263,7 +3278,7 @@ /turf/closed/wall, /area/security/checkpoint/customs) "akG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -3336,7 +3351,7 @@ /turf/closed/wall, /area/security/checkpoint) "akQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -3609,7 +3624,7 @@ /area/vacant_room/office) "alt" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -3631,7 +3646,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "alv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/photocopier, @@ -3686,7 +3701,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "alA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/table/reinforced, @@ -3723,7 +3738,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "alD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3738,7 +3753,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "alE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3754,7 +3769,7 @@ /area/maintenance/starboard/fore) "alF" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3763,7 +3778,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "alG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3772,7 +3787,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "alH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral, @@ -3793,7 +3808,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "alJ" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/maintenance/starboard/fore) @@ -3922,7 +3937,7 @@ }, /area/maintenance/port/fore) "alZ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/sign/poster/official/do_not_question{ @@ -3966,7 +3981,7 @@ /turf/open/floor/plasteel/grimy, /area/vacant_room/office) "amg" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/carpet, @@ -3979,21 +3994,21 @@ /turf/open/floor/carpet, /area/vacant_room/office) "ami" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/port/fore) "amj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Customs Desk APC"; areastring = "/area/security/checkpoint/customs"; - pixel_x = -26 + pixel_x = -25 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 @@ -4007,10 +4022,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "amk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/holopad, @@ -4131,10 +4146,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "amw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/holopad, @@ -4145,14 +4160,14 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "amx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ areastring = "/area/security/checkpoint"; dir = 4; name = "Security Checkpoint APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 @@ -4169,7 +4184,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "amz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -4412,7 +4427,7 @@ /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) "amW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -4426,7 +4441,7 @@ }, /area/maintenance/port/fore) "amX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -4458,7 +4473,7 @@ /turf/open/floor/plasteel/grimy, /area/vacant_room/office) "ana" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/carpet, @@ -4494,7 +4509,7 @@ /area/vacant_room/office) "anh" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4517,7 +4532,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "anj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -4544,7 +4559,7 @@ /area/security/checkpoint/customs) "anl" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -4612,7 +4627,7 @@ /area/hallway/secondary/entry) "anu" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -4630,7 +4645,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "anw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -4682,14 +4697,14 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "anA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Starboard Bow Maintenance APC"; areastring = "/area/maintenance/starboard/fore"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/decal/cleanable/dirt, /obj/structure/chair/stool/bar, @@ -4941,7 +4956,7 @@ /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) "anX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -4987,7 +5002,7 @@ /turf/open/floor/wood, /area/vacant_room/office) "aoc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -4996,7 +5011,7 @@ /turf/open/floor/wood, /area/vacant_room/office) "aod" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5010,7 +5025,7 @@ pixel_y = -26 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5025,7 +5040,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5040,10 +5055,10 @@ /turf/open/floor/plasteel, /area/vacant_room/office) "aog" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -5080,13 +5095,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "aoi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/neutral{ @@ -5102,7 +5117,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "aoj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -5116,10 +5131,10 @@ /area/security/checkpoint/customs) "aok" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/window/brigdoor/southright{ @@ -5156,10 +5171,10 @@ /area/hallway/secondary/entry) "aoq" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -5168,7 +5183,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "aor" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -5189,13 +5204,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "aos" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -5244,7 +5259,7 @@ /area/maintenance/starboard/fore) "aov" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, @@ -5311,7 +5326,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/starboard/fore) "aoA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/chair/stool/bar, @@ -5337,7 +5352,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "aoC" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/red{ @@ -5512,7 +5527,7 @@ /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) "aoU" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/wood, @@ -5532,7 +5547,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aoX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5545,7 +5560,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aoZ" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel/grimy, /area/vacant_room/office) "apa" = ( @@ -5553,7 +5568,7 @@ /turf/open/floor/plasteel/grimy, /area/vacant_room/office) "apb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -5572,7 +5587,7 @@ /area/vacant_room/office) "apd" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5607,7 +5622,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "apf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -5703,7 +5718,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "apq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -5737,7 +5752,7 @@ /area/security/checkpoint) "aps" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -5763,7 +5778,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "apx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -6040,7 +6055,7 @@ /obj/structure/chair/comfy/brown{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/wood, @@ -6049,7 +6064,7 @@ /obj/structure/table/wood, /obj/item/folder/red, /obj/item/pen, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/wood, @@ -6058,20 +6073,20 @@ /obj/structure/chair/comfy/brown{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) "apW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) "apX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/wood{ @@ -6087,7 +6102,7 @@ /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) "apZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6155,7 +6170,7 @@ dir = 2; name = "Auxiliary Office APC"; areastring = "/area/vacant_room/office"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable/white, @@ -6195,7 +6210,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "aqk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6274,7 +6289,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint) "aqs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6306,10 +6321,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aqv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6320,7 +6335,7 @@ /area/maintenance/starboard/fore) "aqw" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -6341,7 +6356,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "aqx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -6361,7 +6376,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/starboard/fore) "aqy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6370,7 +6385,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aqz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6389,7 +6404,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/starboard/fore) "aqA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -6408,7 +6423,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/starboard/fore) "aqB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -6623,7 +6638,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/electronic_marketing_den) "aqQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/wood{ @@ -6645,7 +6660,7 @@ dir = 2; name = "Electronics Marketing APC"; areastring = "/area/crew_quarters/electronic_marketing_den"; - pixel_y = -26 + pixel_y = -23 }, /turf/open/floor/wood, /area/crew_quarters/electronic_marketing_den) @@ -6668,7 +6683,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6682,7 +6697,7 @@ /area/maintenance/port/fore) "aqX" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -6693,7 +6708,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aqY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -6711,7 +6726,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aqZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -6729,7 +6744,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "ara" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -6931,7 +6946,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/barricade/wooden, @@ -6994,20 +7009,20 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "arC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/port/fore) "arD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/fore) "arE" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -7019,7 +7034,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "arF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, @@ -7033,17 +7048,17 @@ /area/maintenance/port/fore) "arG" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/fore) "arH" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7058,20 +7073,20 @@ }, /area/maintenance/port/fore) "arI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/fore) "arJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7168,7 +7183,7 @@ /area/maintenance/starboard/fore) "arT" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7184,7 +7199,7 @@ /area/maintenance/starboard/fore) "arV" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -7549,14 +7564,14 @@ /area/maintenance/port/fore) "asE" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/port/fore) "asF" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -7569,16 +7584,16 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "asG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/fore) "asH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral, @@ -7588,7 +7603,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "asI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7598,7 +7613,7 @@ /area/maintenance/port/fore) "asJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -7607,7 +7622,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "asK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7621,7 +7636,7 @@ /area/maintenance/port/fore) "asL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7632,7 +7647,7 @@ /area/maintenance/port/fore) "asM" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7642,7 +7657,7 @@ /area/maintenance/port/fore) "asN" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7660,7 +7675,7 @@ }, /area/maintenance/port/fore) "asO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7670,10 +7685,10 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "asP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -7684,7 +7699,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "asQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7693,10 +7708,10 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "asR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -7809,7 +7824,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "atd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -7823,7 +7838,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "ate" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7840,7 +7855,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7858,7 +7873,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "atg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -7874,7 +7889,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "ath" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -8031,10 +8046,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "atq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -8052,7 +8067,7 @@ /area/maintenance/starboard/fore) "atr" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8073,10 +8088,10 @@ /area/maintenance/starboard/fore) "ats" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -8096,7 +8111,7 @@ /area/maintenance/starboard/fore) "att" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral, @@ -8550,7 +8565,7 @@ /turf/closed/wall, /area/maintenance/port/fore) "auc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -8624,7 +8639,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "aul" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -8696,7 +8711,7 @@ /area/maintenance/starboard/fore) "aut" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -8729,7 +8744,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "auw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8742,7 +8757,7 @@ /area/maintenance/starboard/fore) "aux" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8762,7 +8777,7 @@ /area/maintenance/starboard/fore) "auy" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8775,7 +8790,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "auz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8793,7 +8808,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "auA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8806,7 +8821,7 @@ /area/maintenance/starboard/fore) "auB" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8818,7 +8833,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "auC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -8833,7 +8848,7 @@ /area/maintenance/starboard/fore) "auD" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8849,10 +8864,10 @@ /area/maintenance/starboard/fore) "auE" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8864,7 +8879,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "auF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8891,7 +8906,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -8910,7 +8925,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -8920,7 +8935,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -8935,7 +8950,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -8951,7 +8966,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown, @@ -8968,7 +8983,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/airalarm{ @@ -8988,7 +9003,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/blood/splatter, @@ -9002,7 +9017,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/blood/splatter, @@ -9017,13 +9032,13 @@ dir = 2; name = "Disposal APC"; areastring = "/area/maintenance/disposal"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/disposalpipe/segment{ dir = 9 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/brown, @@ -9267,7 +9282,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "avp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -9343,7 +9358,7 @@ /turf/open/floor/wood, /area/maintenance/port/fore) "avy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -9407,9 +9422,9 @@ dir = 1; name = "Custodial Closet APC"; areastring = "/area/janitor"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/bot, @@ -9541,7 +9556,7 @@ /obj/machinery/door/airlock{ name = "Auxiliary Restroom" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -9625,7 +9640,7 @@ /area/quartermaster/warehouse) "avR" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -9801,7 +9816,7 @@ "awn" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/landmark/blobstart, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -9910,7 +9925,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "awA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -9965,7 +9980,7 @@ /area/janitor) "awD" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10099,7 +10114,7 @@ }, /area/crew_quarters/toilet/auxiliary) "awO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -10542,7 +10557,7 @@ "axI" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -10644,7 +10659,7 @@ "axT" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10690,7 +10705,7 @@ /area/janitor) "axW" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -10783,7 +10798,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/auxiliary) "ayf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/decal/cleanable/dirt, @@ -10791,7 +10806,7 @@ dir = 2; name = "Auxiliary Restrooms APC"; areastring = "/area/crew_quarters/toilet/auxiliary"; - pixel_y = -26 + pixel_y = -23 }, /turf/open/floor/plating, /area/crew_quarters/toilet/auxiliary) @@ -10800,7 +10815,7 @@ dir = 8; pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -10824,7 +10839,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "ayi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -10843,7 +10858,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "ayj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -10859,7 +10874,7 @@ /area/hallway/primary/fore) "ayk" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -10882,7 +10897,7 @@ /area/quartermaster/warehouse) "ayl" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -10902,7 +10917,7 @@ "ayn" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -11102,7 +11117,7 @@ /turf/open/floor/plating, /area/quartermaster/storage) "ayE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -11270,7 +11285,7 @@ dir = 2; name = "Port Bow Maintenance APC"; areastring = "/area/maintenance/port/fore"; - pixel_y = -26 + pixel_y = -23 }, /obj/structure/cable/white, /obj/effect/turf_decal/tile/neutral, @@ -11380,7 +11395,7 @@ /area/janitor) "azb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/purple{ @@ -11397,7 +11412,7 @@ pixel_y = -26 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/green{ @@ -11489,7 +11504,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "azj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -11519,7 +11534,7 @@ /area/hallway/primary/fore) "azl" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11546,7 +11561,7 @@ /area/quartermaster/warehouse) "azo" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11716,7 +11731,7 @@ /area/quartermaster/storage) "azG" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -11931,7 +11946,7 @@ /area/maintenance/port/fore) "aAg" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11952,7 +11967,7 @@ req_access_txt = "26" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -12049,7 +12064,7 @@ /turf/open/floor/plating, /area/crew_quarters/toilet/auxiliary) "aAq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -12073,7 +12088,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "aAs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12094,7 +12109,7 @@ /turf/open/floor/plating, /area/quartermaster/warehouse) "aAv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -12277,17 +12292,17 @@ /area/quartermaster/storage) "aAI" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/storage) "aAJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -12295,10 +12310,10 @@ /turf/open/floor/plating, /area/quartermaster/storage) "aAK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -12563,7 +12578,7 @@ /turf/open/floor/plasteel, /area/hydroponics/garden/abandoned) "aBq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -12573,7 +12588,7 @@ /area/maintenance/port/fore) "aBr" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12586,7 +12601,7 @@ /area/maintenance/port/fore) "aBs" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12598,7 +12613,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aBt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12615,7 +12630,7 @@ /area/maintenance/port/fore) "aBu" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12631,7 +12646,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aBv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12643,10 +12658,10 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aBw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12660,7 +12675,7 @@ /area/maintenance/port/fore) "aBx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, @@ -12680,10 +12695,10 @@ /area/maintenance/port/fore) "aBy" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12797,7 +12812,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "aBH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -12816,7 +12831,7 @@ /area/hallway/primary/fore) "aBI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12842,7 +12857,7 @@ /turf/open/floor/plasteel, /area/quartermaster/warehouse) "aBL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13011,7 +13026,7 @@ dir = 8; id = "cargounload" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/poddoor{ @@ -13169,7 +13184,7 @@ /turf/open/floor/plasteel, /area/hydroponics/garden/abandoned) "aCz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13205,10 +13220,10 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aCE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -13218,7 +13233,7 @@ /area/maintenance/port/fore) "aCF" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13232,7 +13247,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aCG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13246,7 +13261,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aCH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -13254,7 +13269,7 @@ /area/maintenance/port/fore) "aCI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13272,7 +13287,7 @@ /area/maintenance/port/fore) "aCJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13289,7 +13304,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13304,7 +13319,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aCL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13317,13 +13332,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "aCM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -13350,7 +13365,7 @@ /area/hallway/primary/fore) "aCO" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13364,7 +13379,7 @@ "aCP" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -13387,7 +13402,7 @@ /area/quartermaster/warehouse) "aCQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13406,10 +13421,10 @@ /area/quartermaster/warehouse) "aCR" = ( /obj/effect/decal/cleanable/oil, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -13423,10 +13438,10 @@ /area/quartermaster/warehouse) "aCS" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13449,7 +13464,7 @@ /area/quartermaster/warehouse) "aCT" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13461,14 +13476,14 @@ /area/quartermaster/warehouse) "aCU" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/quartermaster/warehouse) "aCV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -13477,7 +13492,7 @@ "aCW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/crate, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance/two, @@ -13486,14 +13501,14 @@ /area/quartermaster/warehouse) "aCX" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "Cargo Warehouse APC"; areastring = "/area/quartermaster/warehouse"; - pixel_x = 26 + pixel_x = 24 }, /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ @@ -13632,7 +13647,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aDh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -13793,7 +13808,7 @@ "aDB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13849,12 +13864,12 @@ /turf/closed/wall, /area/hallway/secondary/service) "aDK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ name = "Service Hallway Maintenance Hatch"; - req_one_access_txt = "12;25;28;46" + req_one_access_txt = "22;25;26;28;35;37;38;46" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, @@ -13905,7 +13920,7 @@ /area/quartermaster/warehouse) "aDQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14082,7 +14097,7 @@ /turf/open/floor/plating, /area/quartermaster/storage) "aEi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, @@ -14256,7 +14271,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aEx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/cyan/visible{ @@ -14275,7 +14290,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aEy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -14288,9 +14303,9 @@ dir = 4; name = "Atmospherics Engine APC"; areastring = "/area/engine/atmospherics_engine"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable, @@ -14304,27 +14319,27 @@ /area/space/nearstation) "aEB" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/hydroponics/garden/abandoned) "aEC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hydroponics/garden/abandoned) "aED" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hydroponics/garden/abandoned) "aEE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -14336,7 +14351,7 @@ /area/hydroponics/garden/abandoned) "aEG" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14353,7 +14368,7 @@ /turf/open/floor/plasteel/grimy, /area/hallway/secondary/service) "aEI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/grimy, @@ -14396,7 +14411,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aEN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -14432,12 +14447,12 @@ dir = 1; name = "Bar APC"; areastring = "/area/crew_quarters/bar"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/light/small{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -14608,14 +14623,14 @@ /area/crew_quarters/bar) "aFb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Port Primary Hallway APC"; areastring = "/area/hallway/primary/fore"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/effect/turf_decal/tile/neutral{ @@ -14624,10 +14639,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "aFc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -14664,7 +14679,7 @@ "aFg" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/mining{ @@ -14707,7 +14722,7 @@ /turf/closed/wall/r_wall, /area/security/prison) "aFn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -14890,7 +14905,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aFE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14912,7 +14927,7 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14932,7 +14947,7 @@ /area/engine/atmospherics_engine) "aFG" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/stripes/corner, @@ -14983,7 +14998,7 @@ dir = 2; name = "Abandoned Garden APC"; areastring = "/area/hydroponics/garden/abandoned"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, @@ -15012,7 +15027,7 @@ /area/hydroponics/garden/abandoned) "aFP" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -15036,7 +15051,7 @@ /turf/open/floor/plasteel, /area/hydroponics/garden/abandoned) "aFS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15096,7 +15111,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aGa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15149,7 +15164,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar) "aGd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -15322,7 +15337,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aGr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15577,7 +15592,7 @@ dir = 4; id = "cargoload" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -15602,7 +15617,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aGI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/item/cultivator, @@ -15617,10 +15632,10 @@ name = "old sink"; pixel_y = 28 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -15639,7 +15654,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aGK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/item/reagent_containers/glass/bucket, @@ -15678,7 +15693,7 @@ /area/maintenance/solars/port/fore) "aGN" = ( /obj/machinery/power/smes, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/light/small{ @@ -15690,7 +15705,7 @@ /turf/open/floor/plating, /area/maintenance/solars/port/fore) "aGO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/sign/directions/engineering{ @@ -15831,7 +15846,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "aGV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -15853,7 +15868,7 @@ /obj/structure/sign/warning/electricshock{ pixel_y = 32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -15880,7 +15895,7 @@ /area/engine/atmospherics_engine) "aGY" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -15890,7 +15905,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aGZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15904,7 +15919,7 @@ pixel_y = -32 }, /obj/machinery/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15921,7 +15936,7 @@ dir = 1; pixel_y = -24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15931,7 +15946,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aHc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15944,10 +15959,10 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aHd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15966,7 +15981,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aHe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -15976,7 +15991,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aHf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -15989,7 +16004,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aHg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/electricshock{ @@ -16001,10 +16016,10 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aHh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16060,7 +16075,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/barricade/wooden, @@ -16080,7 +16095,7 @@ /area/hydroponics/garden/abandoned) "aHp" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16108,10 +16123,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aHr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -16125,7 +16140,7 @@ /area/hallway/secondary/service) "aHs" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -16147,7 +16162,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar) "aHt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16160,7 +16175,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar) "aHu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16278,7 +16293,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aHI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16311,7 +16326,7 @@ /turf/open/floor/plating, /area/quartermaster/sorting) "aHL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -16468,17 +16483,17 @@ /turf/open/floor/plating, /area/quartermaster/storage) "aHW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/storage) "aHX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable/white, @@ -16486,7 +16501,7 @@ /turf/open/floor/plating, /area/quartermaster/storage) "aIc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -16494,14 +16509,14 @@ /area/security/prison) "aId" = ( /obj/machinery/seed_extractor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/security/prison) "aIe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -16518,13 +16533,13 @@ /turf/open/floor/plasteel, /area/security/prison) "aIf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -16540,7 +16555,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aIg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -16558,14 +16573,14 @@ /area/security/prison) "aIh" = ( /obj/machinery/biogenerator, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/security/prison) "aIi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -16643,10 +16658,10 @@ /turf/open/floor/plating, /area/maintenance/solars/port/fore) "aIo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -16665,7 +16680,7 @@ name = "Port Bow Solar Access"; req_one_access_txt = "24;10" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -16681,7 +16696,7 @@ /area/maintenance/solars/port/fore) "aIq" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -16730,7 +16745,7 @@ /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -16760,9 +16775,9 @@ dir = 1; name = "Turbine Generator APC"; areastring = "/area/maintenance/disposal/incinerator"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/decal/cleanable/oil, @@ -16788,7 +16803,7 @@ "aIz" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16812,7 +16827,7 @@ /area/engine/atmospherics_engine) "aIB" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -16835,13 +16850,13 @@ /turf/closed/wall/r_wall, /area/engine/atmospherics_engine) "aID" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16850,7 +16865,7 @@ /area/engine/atmospherics_engine) "aIE" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/cable{ @@ -16870,7 +16885,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aIF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/decal/cleanable/dirt, @@ -16900,7 +16915,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aIJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16909,7 +16924,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aIK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16920,7 +16935,7 @@ /area/maintenance/port/fore) "aIL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16935,10 +16950,10 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aIM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -16997,7 +17012,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aIT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light/small{ @@ -17138,7 +17153,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -17181,7 +17196,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aJi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17216,11 +17231,11 @@ /turf/open/floor/plating, /area/quartermaster/sorting) "aJl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -17230,7 +17245,7 @@ /obj/machinery/computer/security{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -17246,13 +17261,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aJn" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -17268,7 +17283,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aJo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -17279,7 +17294,7 @@ /area/security/checkpoint/supply) "aJp" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -17364,7 +17379,7 @@ }, /area/security/prison) "aJA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -17398,7 +17413,7 @@ /turf/open/floor/plating, /area/maintenance/solars/port/fore) "aJF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/airalarm{ @@ -17414,7 +17429,7 @@ dir = 2; name = "Port Bow Solar APC"; areastring = "/area/maintenance/solars/port/fore"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -17432,7 +17447,7 @@ /obj/item/wrench, /obj/item/tank/internals/emergency_oxygen/engi, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/yellow{ @@ -17453,13 +17468,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "aJK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -17477,7 +17492,7 @@ "aJL" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -17493,11 +17508,11 @@ /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "aJO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -17513,7 +17528,7 @@ /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "aJP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -17532,13 +17547,13 @@ /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "aJQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17558,7 +17573,7 @@ /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "aJR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -17575,7 +17590,7 @@ name = "Turbine Generator Access"; req_one_access_txt = "24;10" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17591,7 +17606,7 @@ /area/maintenance/disposal/incinerator) "aJT" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17603,7 +17618,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aJU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -17648,7 +17663,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aJY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -17676,7 +17691,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aKb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -17787,7 +17802,7 @@ /turf/open/floor/wood, /area/hallway/secondary/service) "aKn" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/wood, @@ -17825,7 +17840,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aKs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -17962,7 +17977,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aKE" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/cargo_technician, @@ -18003,7 +18018,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aKH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -18052,7 +18067,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aKL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -18183,7 +18198,7 @@ /turf/closed/wall, /area/security/prison) "aKW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -18194,13 +18209,13 @@ /turf/open/floor/plating, /area/security/prison) "aKX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/public/glass{ @@ -18209,7 +18224,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aKY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -18402,7 +18417,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aLs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -18441,7 +18456,7 @@ /turf/open/floor/plasteel, /area/engine/atmospherics_engine) "aLv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/computer/monitor{ @@ -18465,14 +18480,14 @@ /turf/open/floor/plasteel/dark, /area/engine/atmospherics_engine) "aLw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes{ charge = 2e+006 }, /obj/machinery/light/small, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/circuit/green, @@ -18484,7 +18499,7 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/item/radio/intercom{ @@ -18515,7 +18530,7 @@ /turf/closed/wall, /area/crew_quarters/abandoned_gambling_den/secondary) "aLB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -18572,7 +18587,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aLI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/airalarm{ @@ -18699,7 +18714,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aLR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -18724,7 +18739,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aLT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door_timer{ @@ -18737,7 +18752,7 @@ dir = 8; name = "Security Post - Cargo APC"; areastring = "/area/security/checkpoint/supply"; - pixel_x = -26 + pixel_x = -25 }, /obj/effect/turf_decal/tile/red{ dir = 1 @@ -18749,10 +18764,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aLU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -18835,14 +18850,14 @@ "aMe" = ( /obj/structure/table, /obj/machinery/computer/libraryconsole/bookmanagement, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/security/prison) "aMf" = ( /obj/structure/easel, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/computer/security/telescreen/entertainment{ @@ -18860,7 +18875,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aMg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -18870,7 +18885,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aMh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -18881,13 +18896,13 @@ /turf/open/floor/plasteel, /area/security/prison) "aMi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -18899,7 +18914,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aMj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -18910,7 +18925,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aMk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -18921,7 +18936,7 @@ /area/security/prison) "aMl" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/paper_bin, @@ -18936,7 +18951,7 @@ "aMm" = ( /obj/structure/table, /obj/item/clipboard, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/toy/figure/syndie, @@ -18949,10 +18964,10 @@ /turf/open/floor/plasteel, /area/security/prison) "aMn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/twohanded/required/kirbyplants/random, @@ -18962,7 +18977,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aMo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/punching_bag, @@ -19166,7 +19181,7 @@ /area/engine/atmos) "aMJ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -19245,14 +19260,14 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den/secondary) "aMU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ areastring = "/area/crew_quarters/abandoned_gambling_den/secondary"; dir = 1; name = "Abandoned Gambling Den APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/wood{ @@ -19281,7 +19296,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aMZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -19332,7 +19347,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/bar/atrium) "aNc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/light{ @@ -19342,7 +19357,7 @@ dir = 1; name = "Atrium APC"; areastring = "/area/crew_quarters/bar/atrium"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/camera{ c_tag = "Theatre Stage"; @@ -19483,20 +19498,20 @@ /turf/open/floor/plating, /area/quartermaster/sorting) "aNq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/supply) "aNr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -19517,7 +19532,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aNs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -19662,7 +19677,7 @@ /area/security/prison) "aNE" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/paper, @@ -20068,7 +20083,7 @@ /turf/open/floor/plasteel/dark, /area/engine/atmos) "aOk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ @@ -20147,7 +20162,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/abandoned_gambling_den/secondary) "aOq" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/grimy, @@ -20171,7 +20186,7 @@ /obj/structure/chair/stool/bar, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -20234,7 +20249,7 @@ /area/crew_quarters/theatre) "aOx" = ( /obj/machinery/vending/autodrobe, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/light{ @@ -20244,7 +20259,7 @@ dir = 1; name = "Theatre Backstage APC"; areastring = "/area/crew_quarters/theatre"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/turf_decal/tile/red{ dir = 1 @@ -20310,7 +20325,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aOB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -20339,7 +20354,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/bar/atrium) "aOE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -20438,7 +20453,7 @@ /area/crew_quarters/bar/atrium) "aOM" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/item/stack/wrapping_paper{ @@ -20450,7 +20465,7 @@ dir = 8; name = "Delivery Office APC"; areastring = "/area/quartermaster/sorting"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/effect/turf_decal/tile/brown{ @@ -20462,10 +20477,10 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aON" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/cargo_technician, @@ -20482,10 +20497,10 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aOO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -20504,7 +20519,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aOP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -20528,17 +20543,17 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aOR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/supply) "aOS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/closet/secure_closet/brig{ @@ -20557,10 +20572,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aOT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/red{ @@ -20621,14 +20636,14 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aPb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/quartermaster/storage) "aPc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light, @@ -20641,7 +20656,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aPd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -20651,14 +20666,14 @@ /area/quartermaster/storage) "aPe" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/quartermaster/storage) "aPf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -20667,7 +20682,7 @@ "aPg" = ( /obj/structure/cable/white, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -20735,7 +20750,7 @@ /area/security/prison) "aPm" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/toy/cards/deck, @@ -21132,7 +21147,7 @@ /turf/open/floor/plasteel/dark, /area/engine/atmos) "aPP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -21260,7 +21275,7 @@ /area/crew_quarters/abandoned_gambling_den/secondary) "aQb" = ( /obj/structure/chair/stool/bar, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -21278,7 +21293,7 @@ /area/crew_quarters/abandoned_gambling_den/secondary) "aQd" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21320,7 +21335,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aQg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -21363,7 +21378,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aQk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light/small{ @@ -21399,7 +21414,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/bar/atrium) "aQn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21566,7 +21581,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -21628,7 +21643,7 @@ /turf/open/floor/plasteel, /area/quartermaster/sorting) "aQD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21675,10 +21690,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aQH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/red, @@ -21688,7 +21703,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aQI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair{ @@ -21704,11 +21719,11 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aQJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -21748,7 +21763,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aQN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -21773,47 +21788,47 @@ /turf/closed/wall, /area/quartermaster/qm) "aQR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/qm) "aQS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/qm) "aQT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/qm) "aQU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, /area/quartermaster/qm) "aQV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -21939,7 +21954,7 @@ /turf/open/floor/plating, /area/security/prison) "aRj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -21984,7 +21999,7 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aRl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -22139,7 +22154,7 @@ /obj/machinery/atmospherics/pipe/simple/cyan/visible{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -22239,17 +22254,17 @@ }, /area/crew_quarters/abandoned_gambling_den/secondary) "aRL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/wood, /area/crew_quarters/abandoned_gambling_den/secondary) "aRM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -22264,7 +22279,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aRN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22287,7 +22302,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aRO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22307,7 +22322,7 @@ /area/crew_quarters/theatre) "aRP" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22320,10 +22335,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aRQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -22339,7 +22354,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aRR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22357,7 +22372,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aRS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22371,7 +22386,7 @@ /area/crew_quarters/theatre) "aRT" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -22390,7 +22405,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aRU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22401,13 +22416,13 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aRV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -22416,7 +22431,7 @@ /area/hallway/secondary/service) "aRW" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -22435,7 +22450,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar/atrium) "aRX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -22458,7 +22473,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/bar/atrium) "aRY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22470,7 +22485,7 @@ /obj/structure/chair/wood/normal{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22496,7 +22511,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar/atrium) "aSd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22504,7 +22519,7 @@ /area/hallway/primary/fore) "aSe" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/mining/glass{ @@ -22538,7 +22553,7 @@ /turf/closed/wall, /area/security/checkpoint/supply) "aSi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -22549,13 +22564,13 @@ /area/security/checkpoint/supply) "aSj" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/security/glass{ @@ -22575,7 +22590,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aSk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -22585,14 +22600,14 @@ /turf/open/floor/plating, /area/security/checkpoint/supply) "aSl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 8; name = "Cargo Bay APC"; areastring = "/area/quartermaster/storage"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/structure/disposalpipe/segment{ @@ -22691,7 +22706,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aSr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/brown, @@ -22737,14 +22752,14 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aSv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Quartermaster's Office APC"; areastring = "/area/quartermaster/qm"; - pixel_y = 28 + pixel_y = 23 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/effect/turf_decal/tile/brown{ @@ -22801,7 +22816,7 @@ /area/quartermaster/qm) "aSz" = ( /obj/structure/bed, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/bedsheet/qm, @@ -22885,7 +22900,7 @@ id_tag = "permabolt2"; name = "Cell 2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -22954,7 +22969,7 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aSJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/table/reinforced, @@ -23001,10 +23016,10 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aSK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -23020,7 +23035,7 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aSL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden, @@ -23036,11 +23051,11 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aSM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/closet/secure_closet/injection, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -23242,7 +23257,7 @@ /obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -23261,7 +23276,7 @@ /obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -23282,7 +23297,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -23412,7 +23427,7 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den/secondary) "aTq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -23425,7 +23440,7 @@ /area/crew_quarters/abandoned_gambling_den/secondary) "aTr" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -23438,7 +23453,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/barricade/wooden, @@ -23454,10 +23469,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/abandoned_gambling_den/secondary) "aTt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -23530,7 +23545,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aTB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/pod{ @@ -23690,7 +23705,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar/atrium) "aTN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23739,7 +23754,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aTR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -23807,9 +23822,9 @@ dir = 1; name = "Cargo Office APC"; areastring = "/area/quartermaster/office"; - pixel_y = 28 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/brown{ @@ -23830,7 +23845,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aTX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/brown{ @@ -23859,7 +23874,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aTZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light{ @@ -23899,7 +23914,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aUb" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/cargo_technician, @@ -23989,7 +24004,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aUg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -24068,10 +24083,10 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aUl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -24154,7 +24169,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aUr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -24264,7 +24279,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aUz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -24353,10 +24368,10 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aUE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -24406,7 +24421,7 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aUH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red, @@ -24625,7 +24640,7 @@ /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -24782,7 +24797,7 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/theatre) "aVm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/twohanded/required/kirbyplants/random, @@ -24909,7 +24924,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar/atrium) "aVv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail{ @@ -24960,7 +24975,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aVz" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/cargo_technician, @@ -24982,7 +24997,7 @@ /area/quartermaster/office) "aVA" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -25004,7 +25019,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aVB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -25026,7 +25041,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aVC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25048,7 +25063,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aVD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25057,7 +25072,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -25074,7 +25089,7 @@ /area/quartermaster/office) "aVE" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25083,7 +25098,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -25099,7 +25114,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aVF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25116,7 +25131,7 @@ /area/quartermaster/office) "aVG" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/mining{ @@ -25138,10 +25153,10 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aVH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25159,7 +25174,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -25181,7 +25196,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -25204,7 +25219,7 @@ /area/quartermaster/storage) "aVK" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25228,7 +25243,7 @@ /area/quartermaster/storage) "aVL" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/quartermaster, @@ -25240,7 +25255,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25262,7 +25277,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25284,7 +25299,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25303,13 +25318,13 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -25322,7 +25337,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -25339,7 +25354,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aVR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown{ @@ -25351,7 +25366,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aVS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -25367,7 +25382,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aVT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -25385,10 +25400,10 @@ /area/quartermaster/qm) "aVU" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/bot, @@ -25396,7 +25411,7 @@ /area/quartermaster/qm) "aVV" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/folder/yellow, @@ -25414,13 +25429,13 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aVW" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/start/quartermaster, @@ -25437,7 +25452,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aVX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown, @@ -25447,7 +25462,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aVY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -25464,13 +25479,13 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aVZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/quartermaster, @@ -25572,7 +25587,7 @@ }, /area/security/prison) "aWh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -25640,7 +25655,7 @@ /turf/open/floor/plasteel/dark, /area/security/execution/education) "aWm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -25686,7 +25701,7 @@ dir = 2; name = "Education Chamber APC"; areastring = "/area/security/execution/education"; - pixel_y = -26 + pixel_y = -23 }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ dir = 4 @@ -25943,7 +25958,7 @@ /area/engine/atmos) "aWM" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -26020,14 +26035,14 @@ /turf/open/floor/engine/air, /area/engine/atmos) "aWT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Service Hall APC"; areastring = "/area/hallway/secondary/service"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -26040,10 +26055,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aWU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/newscaster{ @@ -26170,7 +26185,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar/atrium) "aXd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail{ @@ -26439,7 +26454,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aXv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26502,7 +26517,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aXA" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -26548,7 +26563,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aXC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -26608,7 +26623,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aXG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -26628,14 +26643,14 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aXI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/qm) "aXJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -26652,7 +26667,7 @@ }, /area/security/prison) "aXL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -26686,7 +26701,7 @@ name = "Long-Term Cell 2"; req_access_txt = "2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -26708,7 +26723,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aXR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -26960,7 +26975,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "aYm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -27054,7 +27069,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aYs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -27073,10 +27088,10 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aYt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -27089,7 +27104,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aYu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -27101,7 +27116,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aYv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -27115,13 +27130,13 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "aYw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -27133,7 +27148,7 @@ /area/maintenance/port/fore) "aYx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -27147,7 +27162,7 @@ /area/maintenance/port/fore) "aYy" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -27157,7 +27172,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "aYz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -27176,7 +27191,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aYA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -27189,10 +27204,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "aYB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -27270,7 +27285,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -27508,7 +27523,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aYZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/pod{ @@ -27600,7 +27615,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aZg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/brown, @@ -27624,10 +27639,10 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aZi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -27636,7 +27651,7 @@ /area/quartermaster/qm) "aZj" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -27644,7 +27659,7 @@ /area/quartermaster/qm) "aZk" = ( /obj/item/twohanded/required/kirbyplants/random, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/red, @@ -27667,10 +27682,10 @@ /turf/open/floor/plasteel, /area/security/prison) "aZn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27678,20 +27693,20 @@ /turf/open/floor/plasteel, /area/security/prison) "aZo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/red, /turf/open/floor/plasteel, /area/security/prison) "aZp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -27701,7 +27716,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27711,7 +27726,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -27731,7 +27746,7 @@ pixel_x = 6; pixel_y = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27744,7 +27759,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/computer/security/telescreen{ @@ -27759,10 +27774,10 @@ /turf/open/floor/plasteel, /area/security/prison) "aZu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -27774,10 +27789,10 @@ /turf/open/floor/plasteel, /area/security/prison) "aZv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27799,10 +27814,10 @@ pixel_x = 6; pixel_y = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27815,7 +27830,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27830,10 +27845,10 @@ /turf/open/floor/plasteel, /area/security/prison) "aZy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -27841,7 +27856,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27864,7 +27879,7 @@ pixel_x = 6; pixel_y = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27876,10 +27891,10 @@ /turf/open/floor/plasteel, /area/security/prison) "aZB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27889,10 +27904,10 @@ /turf/open/floor/plasteel, /area/security/prison) "aZC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -27906,13 +27921,13 @@ /turf/open/floor/plasteel, /area/security/prison) "aZD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/button/door{ @@ -27929,7 +27944,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -27943,10 +27958,10 @@ /area/security/prison) "aZF" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security/glass{ @@ -27965,7 +27980,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -27974,7 +27989,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -27986,7 +28001,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -28001,7 +28016,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aZJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -28226,7 +28241,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "baf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -28327,7 +28342,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "bap" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -28346,7 +28361,7 @@ /turf/closed/wall, /area/hydroponics) "bat" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -28388,7 +28403,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "bax" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -28587,7 +28602,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "baO" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/cargo_technician, /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ @@ -28652,7 +28667,7 @@ /area/quartermaster/miningoffice) "baW" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -28664,33 +28679,33 @@ /turf/closed/wall, /area/quartermaster/qm) "baY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable/white, /turf/open/floor/plating, /area/quartermaster/qm) "baZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/security/prison) "bba" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28707,7 +28722,7 @@ pixel_y = -26 }, /obj/machinery/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28719,10 +28734,10 @@ /turf/open/floor/plasteel, /area/security/prison) "bbc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -28732,7 +28747,7 @@ /turf/open/floor/plasteel, /area/security/prison) "bbd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28802,7 +28817,7 @@ name = "Prison Wing APC"; areastring = "/area/security/prison"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /obj/effect/turf_decal/tile/red{ @@ -28824,7 +28839,7 @@ /turf/open/floor/plasteel, /area/security/prison) "bbm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -28890,7 +28905,7 @@ }, /area/security/prison) "bbs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -29083,7 +29098,7 @@ /area/engine/atmos) "bbJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -29170,7 +29185,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bbT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29233,7 +29248,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "bcb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29335,7 +29350,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "bcn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -29482,7 +29497,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bcA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29526,7 +29541,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bcG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, @@ -29570,7 +29585,7 @@ name = "Prison Wing"; req_access_txt = "1" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29628,7 +29643,7 @@ /area/security/prison) "bcP" = ( /obj/structure/rack, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/restraints/handcuffs, @@ -29695,7 +29710,7 @@ /obj/structure/closet/secure_closet/brig{ name = "Prisoner Locker" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -29744,7 +29759,7 @@ /turf/open/floor/plasteel, /area/security/prison) "bcV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/table, @@ -29961,7 +29976,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "bdp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -29995,7 +30010,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bds" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -30013,7 +30028,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bdt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30032,7 +30047,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bdu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30047,10 +30062,10 @@ /turf/open/floor/plasteel, /area/hydroponics) "bdv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30065,7 +30080,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bdw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -30080,7 +30095,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bdx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30091,7 +30106,7 @@ /area/hydroponics) "bdy" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -30110,24 +30125,24 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "bdz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/hallway/secondary/service) "bdA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -30136,7 +30151,7 @@ /area/hallway/secondary/service) "bdB" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -30155,7 +30170,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/kitchen) "bdC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30166,7 +30181,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/kitchen) "bdD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30175,7 +30190,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/kitchen) "bdE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/cook, @@ -30185,7 +30200,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/kitchen) "bdF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -30412,7 +30427,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bdZ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/neutral{ @@ -30446,7 +30461,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bec" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -30502,7 +30517,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bei" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable/white, @@ -30510,20 +30525,20 @@ /turf/open/floor/plating, /area/quartermaster/miningoffice) "bej" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/miningoffice) "bek" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -30531,10 +30546,10 @@ /turf/open/floor/plating, /area/quartermaster/miningoffice) "bel" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -30545,7 +30560,7 @@ id = "brigprison"; name = "Prison Blast door" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -30789,7 +30804,7 @@ /area/maintenance/port/fore) "beL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -30902,7 +30917,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/service) "beW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -30957,7 +30972,7 @@ dir = 2; name = "Kitchen APC"; areastring = "/area/crew_quarters/kitchen"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, @@ -31118,7 +31133,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bfr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/brown{ @@ -31219,10 +31234,10 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bfz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -31338,10 +31353,10 @@ /turf/open/floor/plating, /area/quartermaster/miningoffice) "bfN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/sign/warning/securearea{ @@ -31359,7 +31374,7 @@ /turf/open/floor/plasteel, /area/security/prison) "bfO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -31378,7 +31393,7 @@ pixel_y = 26; req_access_txt = "63" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -31392,14 +31407,14 @@ /area/security/prison) "bfQ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security/glass{ name = "Storage Closet"; req_access_txt = "63" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -31415,7 +31430,7 @@ /turf/open/floor/plasteel, /area/security/prison) "bfR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -31428,7 +31443,7 @@ /area/security/prison) "bfS" = ( /obj/structure/closet/l3closet/security, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -31677,10 +31692,11 @@ "bgn" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock{ - name = "Service Hall" + name = "Service Hall"; + req_one_access_txt = "22;25;26;28;35;37;38;46" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -31746,7 +31762,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/kitchen) "bgv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/junction{ @@ -31973,7 +31989,7 @@ /area/quartermaster/miningoffice) "bgN" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -32066,7 +32082,7 @@ name = "Prison Wing"; req_access_txt = "1" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -32082,7 +32098,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bhb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -32115,7 +32131,7 @@ /turf/closed/wall/r_wall, /area/security/main) "bhe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -32189,9 +32205,9 @@ dir = 1; name = "Atmospherics APC"; areastring = "/area/engine/atmos"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/yellow{ @@ -32282,7 +32298,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bhq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -32463,7 +32479,7 @@ /area/hallway/secondary/service) "bhI" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -32606,7 +32622,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -32777,7 +32793,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bii" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -32796,7 +32812,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bij" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -32809,7 +32825,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bik" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -32829,7 +32845,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bil" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -32844,7 +32860,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bim" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -32861,10 +32877,10 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bin" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -32952,14 +32968,14 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "biu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/miningoffice) "biy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -33026,7 +33042,7 @@ /turf/open/floor/plasteel/white, /area/security/brig) "biC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -33036,7 +33052,7 @@ /turf/open/floor/plating, /area/security/brig) "biD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -33056,7 +33072,7 @@ /area/security/brig) "biE" = ( /obj/item/twohanded/required/kirbyplants/random, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -33097,10 +33113,10 @@ /turf/open/floor/plasteel, /area/security/main) "biH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -33112,7 +33128,7 @@ /turf/open/floor/plasteel, /area/security/main) "biI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/airalarm{ @@ -33127,7 +33143,7 @@ /turf/open/floor/plasteel, /area/security/main) "biJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light{ @@ -33149,7 +33165,7 @@ /turf/open/floor/plasteel, /area/security/main) "biK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/newscaster/security_unit{ @@ -33165,7 +33181,7 @@ /turf/open/floor/plasteel, /area/security/main) "biL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/stripes/box, @@ -33193,7 +33209,7 @@ /turf/open/floor/plasteel, /area/security/main) "biN" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/item/radio/intercom{ @@ -33233,7 +33249,7 @@ /turf/closed/wall/r_wall, /area/crew_quarters/heads/hos) "biQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -33244,13 +33260,13 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hos) "biR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -33261,7 +33277,7 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hos) "biS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -33415,7 +33431,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bjd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33434,7 +33450,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bje" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -33451,7 +33467,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bjf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33473,7 +33489,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bjg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33497,10 +33513,10 @@ "bjh" = ( /obj/machinery/holopad, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -33513,7 +33529,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bji" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -33532,7 +33548,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bjj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, @@ -33719,7 +33735,7 @@ "bjy" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -33906,7 +33922,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "bjN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -33991,7 +34007,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bjT" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -34008,7 +34024,7 @@ /area/quartermaster/miningoffice) "bjU" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -34054,10 +34070,10 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bjY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -34068,7 +34084,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bjZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple, @@ -34078,7 +34094,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bka" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/requests_console{ @@ -34098,7 +34114,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bkb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown, @@ -34108,11 +34124,11 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bkc" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple, @@ -34124,7 +34140,7 @@ "bkd" = ( /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/folder/yellow, @@ -34139,20 +34155,20 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "bke" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/miningoffice) "bkf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable/white, @@ -34160,11 +34176,11 @@ /turf/open/floor/plating, /area/quartermaster/miningoffice) "bkj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -34172,7 +34188,7 @@ /area/security/brig) "bkk" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/clothing/gloves/color/latex, @@ -34194,13 +34210,13 @@ /turf/open/floor/plasteel/white, /area/security/brig) "bkl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, /area/security/brig) "bkm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -34209,10 +34225,10 @@ /turf/open/floor/plasteel/white, /area/security/brig) "bkn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/airlock/medical/glass{ @@ -34228,10 +34244,10 @@ /turf/open/floor/plasteel/white, /area/security/brig) "bko" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -34246,10 +34262,10 @@ /turf/open/floor/plasteel, /area/security/brig) "bkp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -34283,14 +34299,14 @@ /turf/open/floor/plasteel, /area/security/main) "bks" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red, /turf/open/floor/plasteel, /area/security/main) "bkt" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/security_officer, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -34393,7 +34409,7 @@ /area/crew_quarters/heads/hos) "bkB" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/taperecorder{ @@ -34551,7 +34567,7 @@ /area/engine/atmos) "bkS" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -34661,7 +34677,7 @@ "blc" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -34788,7 +34804,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -35118,7 +35134,7 @@ /area/quartermaster/miningoffice) "blR" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/loading_area, @@ -35126,7 +35142,7 @@ /area/quartermaster/miningoffice) "blS" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/item/storage/firstaid/regular, @@ -35135,7 +35151,7 @@ dir = 4; name = "Mining Dock APC"; areastring = "/area/quartermaster/miningoffice"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/camera{ c_tag = "Cargo - Mining Office"; @@ -35172,7 +35188,7 @@ "blV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -35281,10 +35297,10 @@ /turf/open/floor/plasteel, /area/security/brig) "bmi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -35300,7 +35316,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bmj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -35312,7 +35328,7 @@ /area/security/brig) "bmk" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -35329,10 +35345,10 @@ /turf/open/floor/plasteel, /area/security/main) "bmm" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/security_officer, @@ -35411,7 +35427,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bms" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -35444,7 +35460,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bmv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -35710,7 +35726,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bmV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -35834,7 +35850,7 @@ /area/maintenance/port/fore) "bnf" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -35940,10 +35956,11 @@ "bno" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ - name = "Service Foyer" + name = "Service Foyer"; + req_one_access_txt = "22;25;26;28;35;37;38;46" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -36000,7 +36017,7 @@ /obj/machinery/door/airlock/public/glass{ name = "Fore Primary Hallway" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -36076,7 +36093,7 @@ /area/quartermaster/miningoffice) "bnB" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -36093,37 +36110,37 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/fore) "bnC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/quartermaster/miningoffice) "bnD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/execution/transfer) "bnE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/execution/transfer) "bnF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -36152,7 +36169,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bnI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36192,9 +36209,9 @@ dir = 8; name = "Security Office APC"; areastring = "/area/security/main"; - pixel_x = -26 + pixel_x = -25 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36210,13 +36227,13 @@ /turf/open/floor/plasteel, /area/security/main) "bnM" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/start/security_officer, @@ -36337,7 +36354,7 @@ /area/security/main) "bnU" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -36357,7 +36374,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bnW" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36369,7 +36386,7 @@ /obj/structure/table/wood, /obj/item/flashlight/lamp, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -36401,7 +36418,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "boa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -36423,7 +36440,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bod" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -36625,7 +36642,7 @@ /area/engine/atmos) "bou" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -36722,7 +36739,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -36799,7 +36816,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -36893,7 +36910,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "boV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36903,9 +36920,9 @@ dir = 1; name = "Central Primary Hallway APC"; areastring = "/area/hallway/primary/central"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -36914,7 +36931,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "boW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -36931,7 +36948,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36947,7 +36964,7 @@ /area/maintenance/starboard/fore) "boY" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -36964,7 +36981,7 @@ "boZ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -37003,7 +37020,7 @@ /area/security/execution/transfer) "bpe" = ( /obj/structure/filingcabinet/chestdrawer, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -37084,14 +37101,14 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bpj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/execution/transfer) "bpk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -37114,7 +37131,7 @@ /turf/open/floor/plasteel, /area/security/main) "bpm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red, @@ -37169,7 +37186,7 @@ /turf/open/floor/plasteel, /area/security/main) "bpr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -37184,7 +37201,7 @@ /turf/open/floor/plasteel, /area/security/main) "bps" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37203,13 +37220,13 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bpt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/airlock/command{ @@ -37235,10 +37252,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "bpu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -37248,7 +37265,7 @@ /area/crew_quarters/heads/hos) "bpv" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37258,7 +37275,7 @@ /area/crew_quarters/heads/hos) "bpw" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/folder/red, @@ -37266,10 +37283,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/grimy, @@ -37278,7 +37295,7 @@ /obj/structure/chair/comfy/black{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/head_of_security, @@ -37288,7 +37305,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bpy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37297,7 +37314,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bpz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -37313,13 +37330,13 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "bpA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/airlock/command{ @@ -37342,21 +37359,21 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "bpB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bpC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/head_of_security, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bpD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/computer/crew{ @@ -37365,11 +37382,11 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "bpE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -37695,7 +37712,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bqd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -37796,7 +37813,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bqn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -37814,7 +37831,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bqo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37831,7 +37848,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37847,7 +37864,7 @@ /area/maintenance/port/fore) "bqq" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37859,7 +37876,7 @@ "bqr" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37868,7 +37885,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "bqs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37882,7 +37899,7 @@ /area/maintenance/port/fore) "bqt" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37901,7 +37918,7 @@ }, /area/maintenance/port/fore) "bqu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37910,7 +37927,7 @@ /turf/open/floor/plating, /area/maintenance/port/fore) "bqv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -37921,7 +37938,7 @@ /area/maintenance/port/fore) "bqw" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/junction/flip{ @@ -37931,10 +37948,10 @@ /area/maintenance/port/fore) "bqx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -37977,7 +37994,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bqC" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/botanist, @@ -38008,13 +38025,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -38037,7 +38054,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -38057,7 +38074,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -38076,7 +38093,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -38099,7 +38116,7 @@ /area/hallway/primary/central) "bqJ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -38114,7 +38131,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -38134,7 +38151,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -38149,7 +38166,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -38161,7 +38178,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -38173,7 +38190,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -38190,14 +38207,14 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -38213,7 +38230,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -38222,7 +38239,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -38231,7 +38248,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -38240,7 +38257,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral, @@ -38250,7 +38267,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -38266,7 +38283,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -38284,7 +38301,7 @@ /area/hallway/primary/central) "bqW" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -38296,7 +38313,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -38315,7 +38332,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, @@ -38332,7 +38349,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bqZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -38351,10 +38368,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bra" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -38403,7 +38420,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "brf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -38419,7 +38436,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "brh" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/stripes/line, @@ -38444,7 +38461,7 @@ /area/security/execution/transfer) "brk" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -38467,7 +38484,7 @@ /turf/open/floor/plasteel, /area/security/brig) "brm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -38501,7 +38518,7 @@ /area/security/brig) "bro" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/security/glass{ @@ -38532,10 +38549,10 @@ /turf/open/floor/plasteel, /area/security/main) "brq" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/security_officer, @@ -38622,7 +38639,7 @@ /turf/open/floor/plasteel, /area/security/main) "brw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -38656,7 +38673,7 @@ /area/security/main) "bry" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -38670,7 +38687,7 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hos) "brz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -38679,7 +38696,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "brA" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -38706,7 +38723,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -39011,7 +39028,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bsg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ @@ -39043,7 +39060,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bsi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -39115,7 +39132,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -39155,7 +39172,7 @@ /turf/closed/wall, /area/storage/tech) "bsv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -39235,7 +39252,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "bsA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -39511,7 +39528,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bsU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -39543,17 +39560,17 @@ /turf/closed/wall, /area/hallway/primary/central) "bta" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/execution/transfer) "btb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -39561,17 +39578,17 @@ /turf/open/floor/plating, /area/security/execution/transfer) "btc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/execution/transfer) "btd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -39580,10 +39597,10 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bte" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -39654,7 +39671,7 @@ /turf/open/floor/plasteel/dark, /area/security/execution/transfer) "bti" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -39668,13 +39685,13 @@ /area/security/execution/transfer) "btj" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/security/glass{ @@ -39697,7 +39714,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "btk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -39715,13 +39732,13 @@ /turf/open/floor/plasteel, /area/security/brig) "btl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -39744,7 +39761,7 @@ /turf/open/floor/plasteel, /area/security/brig) "btm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -39759,13 +39776,13 @@ /area/security/brig) "btn" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security/glass{ @@ -39784,7 +39801,7 @@ /turf/open/floor/plasteel, /area/security/main) "bto" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -39793,13 +39810,13 @@ /turf/open/floor/plasteel, /area/security/main) "btp" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/landmark/start/security_officer, @@ -39814,7 +39831,7 @@ /area/security/main) "btq" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/folder/red, @@ -39836,7 +39853,7 @@ /area/security/main) "btr" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/paper_bin, @@ -39857,7 +39874,7 @@ /turf/open/floor/plasteel, /area/security/main) "bts" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -39872,7 +39889,7 @@ /turf/open/floor/plasteel, /area/security/main) "btt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -39892,7 +39909,7 @@ /turf/open/floor/plasteel, /area/security/main) "btu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -39911,10 +39928,10 @@ /turf/open/floor/plasteel, /area/security/main) "btv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -39957,13 +39974,13 @@ pixel_x = -24; pixel_y = -32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hos) "btz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -40221,10 +40238,10 @@ /turf/open/floor/plasteel, /area/engine/atmos) "btX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -40244,7 +40261,7 @@ "btY" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -40261,13 +40278,13 @@ name = "Atmospherics Desk"; req_access_txt = "24" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -40284,7 +40301,7 @@ /area/engine/atmos) "bua" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40294,7 +40311,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bub" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/portable_atmospherics/canister/nitrous_oxide, @@ -40305,7 +40322,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "buc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/portable_atmospherics/canister/nitrogen, @@ -40346,11 +40363,11 @@ /area/hallway/primary/port) "buh" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -40370,9 +40387,9 @@ dir = 4; name = "Port Primary Hallway APC"; areastring = "/area/hallway/primary/port"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -40383,7 +40400,7 @@ "buj" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -40424,7 +40441,7 @@ /area/hallway/primary/central) "buo" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -40458,7 +40475,7 @@ /area/hallway/primary/central) "bus" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -40521,10 +40538,10 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "buD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment, @@ -40537,7 +40554,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "buE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -40549,10 +40566,10 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "buF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40564,10 +40581,10 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "buG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40579,7 +40596,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "buH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -40592,7 +40609,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "buI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, @@ -40615,7 +40632,7 @@ /turf/open/floor/plasteel, /area/security/brig) "buK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -40655,7 +40672,7 @@ /turf/open/floor/plasteel, /area/security/main) "buO" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/security_officer, @@ -40690,7 +40707,7 @@ /turf/open/floor/plasteel, /area/security/main) "buR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -40724,7 +40741,7 @@ dir = 2; name = "Head of Security's Office APC"; areastring = "/area/crew_quarters/heads/hos"; - pixel_y = -26 + pixel_y = -23 }, /obj/structure/cable/white, /obj/effect/turf_decal/tile/neutral{ @@ -40757,7 +40774,7 @@ /area/crew_quarters/heads/hos) "buV" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/fancy/donut_box, @@ -40955,7 +40972,7 @@ /area/engine/atmos) "bvj" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -41019,7 +41036,7 @@ /area/engine/atmos) "bvo" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -41050,7 +41067,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bvr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -41077,7 +41094,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/junction, @@ -41108,27 +41125,27 @@ /turf/closed/wall/r_wall, /area/storage/tech) "bvw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/storage/tech) "bvx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/storage/tech) "bvy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -41199,7 +41216,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bvG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -41243,7 +41260,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bvM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -41267,7 +41284,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bvO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -41354,7 +41371,7 @@ /area/security/nuke_storage) "bvX" = ( /obj/structure/closet/emcloset, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -41363,10 +41380,10 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bvY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -41392,7 +41409,7 @@ dir = 2; name = "Security Transferring APC"; areastring = "/area/security/execution/transfer"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -41401,7 +41418,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bwb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red, @@ -41429,7 +41446,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bwd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -41499,7 +41516,7 @@ /turf/open/floor/plasteel, /area/security/main) "bwk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -41528,10 +41545,10 @@ /area/security/main) "bwm" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -41546,7 +41563,7 @@ /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai) "bwo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/item/twohanded/required/kirbyplants/random, @@ -41557,10 +41574,10 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/sign/warning/electricshock{ @@ -41575,7 +41592,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bwq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/item/twohanded/required/kirbyplants/random, @@ -41679,7 +41696,7 @@ /area/engine/atmos) "bwA" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -41737,10 +41754,10 @@ /area/engine/atmos) "bwD" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -41759,7 +41776,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bwE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -41780,7 +41797,7 @@ /area/engine/atmos) "bwF" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -41797,14 +41814,14 @@ "bwG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/plasticflaps/opaque, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/poddoor/preopen{ id = "atmoslock"; name = "Atmospherics Lockdown Blast door" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -41831,7 +41848,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail{ @@ -41852,7 +41869,7 @@ /area/hallway/primary/port) "bwJ" = ( /obj/structure/rack, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -41863,13 +41880,13 @@ /area/storage/tech) "bwK" = ( /obj/structure/rack, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line, @@ -41878,7 +41895,7 @@ /area/storage/tech) "bwL" = ( /obj/structure/rack, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -41943,10 +41960,10 @@ /turf/open/floor/plasteel, /area/hydroponics) "bwR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -41957,10 +41974,10 @@ /turf/open/floor/plating, /area/bridge) "bwS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -41971,10 +41988,10 @@ /turf/open/floor/plating, /area/bridge) "bwT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -41988,7 +42005,7 @@ /turf/closed/wall/r_wall, /area/bridge) "bwV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -41999,13 +42016,13 @@ /turf/open/floor/plating, /area/bridge) "bwW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -42016,7 +42033,7 @@ /turf/open/floor/plating, /area/bridge) "bwX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -42036,7 +42053,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bwZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -42066,11 +42083,11 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bxb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -42080,7 +42097,7 @@ /turf/open/floor/plating, /area/hallway/primary/central) "bxc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -42133,10 +42150,10 @@ /area/security/nuke_storage) "bxm" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/door/airlock/security/glass{ @@ -42157,7 +42174,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bxn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -42208,20 +42225,20 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bxr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/security/main) "bxs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/security{ @@ -42242,7 +42259,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bxt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -42319,7 +42336,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bxy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -42507,7 +42524,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bxO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -42553,7 +42570,7 @@ /area/engine/atmos) "bxS" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -42577,7 +42594,7 @@ /turf/open/floor/plasteel/dark/corner, /area/engine/atmos) "bxU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -42601,7 +42618,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -42644,7 +42661,7 @@ /turf/open/floor/plasteel, /area/storage/tech) "bya" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -42664,7 +42681,7 @@ /turf/open/floor/plasteel, /area/storage/tech) "byc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -42686,7 +42703,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bye" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -42731,7 +42748,7 @@ /area/bridge) "byi" = ( /obj/machinery/computer/med_data, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -42763,7 +42780,7 @@ /area/bridge) "byl" = ( /obj/machinery/computer/security, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -42794,7 +42811,7 @@ /area/bridge) "byo" = ( /obj/machinery/computer/station_alert, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow{ @@ -42823,10 +42840,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "byr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -42842,7 +42859,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bys" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -42855,13 +42872,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "byt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -42888,7 +42905,7 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/central) "byu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -42915,7 +42932,7 @@ name = "Vault Door"; req_access_txt = "53" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/electricshock{ @@ -42940,7 +42957,7 @@ /turf/open/floor/plasteel/dark, /area/security/nuke_storage) "byw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -42952,7 +42969,7 @@ /obj/machinery/nuclearbomb/selfdestruct{ layer = 2 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -42971,20 +42988,20 @@ /turf/open/floor/plasteel/dark, /area/security/nuke_storage) "byy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/circuit/green, /area/security/nuke_storage) "byz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "Vault APC"; areastring = "/area/security/nuke_storage"; - pixel_x = 26 + pixel_x = 24 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -43003,7 +43020,7 @@ pixel_y = 28 }, /obj/item/twohanded/required/kirbyplants/random, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -43012,10 +43029,10 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "byE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -43143,14 +43160,14 @@ /turf/open/floor/plasteel/dark, /area/security/main) "byO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/security/main) "byP" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/decal/cleanable/dirt, @@ -43167,7 +43184,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "byQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -43223,7 +43240,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "byT" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -43239,7 +43256,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "byU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43248,17 +43265,17 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "byV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "byW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43267,13 +43284,13 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "byX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/ai_slipper{ @@ -43285,10 +43302,10 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "byY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43297,7 +43314,7 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "byZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43307,7 +43324,7 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bza" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43473,7 +43490,7 @@ /area/engine/break_room) "bzr" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -43500,7 +43517,7 @@ /obj/machinery/status_display/evac{ pixel_x = -32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/modular_computer/console/preset/engineering{ @@ -43514,10 +43531,10 @@ }, /area/engine/atmos) "bzu" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -43533,19 +43550,19 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bzv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/holopad, /obj/effect/landmark/start/atmospheric_technician, /obj/effect/turf_decal/bot, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, /area/engine/atmos) "bzw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -43562,10 +43579,10 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bzx" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -43575,10 +43592,10 @@ /area/engine/atmos) "bzy" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/item/folder/yellow, @@ -43608,7 +43625,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -43641,13 +43658,13 @@ /area/hallway/primary/port) "bzC" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/highsecurity{ @@ -43668,10 +43685,10 @@ /turf/closed/wall/r_wall, /area/storage/tech) "bzE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -43684,7 +43701,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "bzF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43698,7 +43715,7 @@ /area/maintenance/port/fore) "bzG" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43715,10 +43732,10 @@ /area/maintenance/port/fore) "bzH" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43734,7 +43751,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43749,7 +43766,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/fore) "bzJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -43762,10 +43779,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bzK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43815,7 +43832,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bzN" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -43831,10 +43848,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bzO" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -43863,7 +43880,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bzQ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/neutral{ @@ -43879,7 +43896,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bzR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -43895,7 +43912,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bzS" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/neutral{ @@ -43942,17 +43959,17 @@ /area/hallway/primary/central) "bzW" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/hallway/primary/central) "bzX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -44005,7 +44022,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bAg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -44086,7 +44103,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bAm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44138,7 +44155,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bAp" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -44173,7 +44190,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bAr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -44191,20 +44208,20 @@ /area/security/main) "bAs" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/security/main) "bAt" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -44220,7 +44237,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bAu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/item/radio/intercom{ @@ -44322,7 +44339,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bAA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -44348,7 +44365,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bAC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -44383,7 +44400,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bAE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44392,7 +44409,7 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bAF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -44456,7 +44473,7 @@ /turf/open/floor/plasteel/dark, /area/engine/gravity_generator) "bAJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -44544,7 +44561,7 @@ "bAT" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/power/apc/auto_name/east, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/bot, @@ -44606,7 +44623,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bAY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -44668,7 +44685,7 @@ }, /area/engine/atmos) "bBb" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -44685,7 +44702,7 @@ /area/engine/atmos) "bBc" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -44754,7 +44771,7 @@ /area/hallway/primary/port) "bBh" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44818,7 +44835,7 @@ /turf/open/floor/plasteel, /area/storage/tech) "bBm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -44853,7 +44870,7 @@ "bBp" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -44896,7 +44913,7 @@ "bBt" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/plasticflaps/opaque, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -44928,7 +44945,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bBw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -45021,7 +45038,7 @@ /area/bridge) "bBE" = ( /obj/machinery/computer/cargo/request, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow{ @@ -45056,7 +45073,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bBH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -45073,7 +45090,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bBI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/beacon, @@ -45104,7 +45121,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bBK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -45148,7 +45165,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bBN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/modular_computer/console/preset/command, @@ -45274,10 +45291,10 @@ /turf/open/floor/plasteel/dark, /area/security/nuke_storage) "bBY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -45366,7 +45383,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bCf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -45412,7 +45429,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bCj" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -45461,7 +45478,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "bCl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -45489,7 +45506,7 @@ /turf/open/floor/plating, /area/security/main) "bCn" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -45554,7 +45571,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bCr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -45569,7 +45586,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/ai) "bCu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green, @@ -45634,7 +45651,7 @@ /area/engine/gravity_generator) "bCA" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -45697,10 +45714,10 @@ name = "Power Tools Storage"; req_access_txt = "19" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -45727,10 +45744,10 @@ name = "Power Tools Storage"; req_access_txt = "19" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45745,7 +45762,7 @@ /turf/open/floor/plasteel, /area/engine/storage_shared) "bCJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -45806,7 +45823,7 @@ /area/engine/storage_shared) "bCO" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -45891,9 +45908,9 @@ dir = 1; name = "Engineering Foyer APC"; areastring = "/area/engine/break_room"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45908,7 +45925,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bCV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -45923,10 +45940,10 @@ }, /area/engine/break_room) "bCW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -46025,7 +46042,7 @@ /turf/open/floor/plasteel/dark/corner, /area/engine/atmos) "bDd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -46086,7 +46103,7 @@ /turf/open/floor/plasteel, /area/storage/tech) "bDh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -46189,7 +46206,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "bDq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -46307,10 +46324,10 @@ /turf/closed/wall, /area/storage/primary) "bDv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46332,7 +46349,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bDw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46348,10 +46365,10 @@ /area/hallway/primary/central) "bDx" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -46367,7 +46384,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -46383,7 +46400,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46405,7 +46422,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -46432,13 +46449,13 @@ /area/bridge) "bDA" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -46464,7 +46481,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46483,7 +46500,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -46503,10 +46520,10 @@ /area/bridge) "bDD" = ( /obj/item/twohanded/required/kirbyplants/random, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/light{ @@ -46531,10 +46548,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDE" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -46553,16 +46570,16 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46581,10 +46598,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46596,7 +46613,7 @@ /area/bridge) "bDH" = ( /obj/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46609,7 +46626,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/southright{ @@ -46627,13 +46644,13 @@ /area/bridge) "bDJ" = ( /obj/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46646,10 +46663,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -46659,13 +46676,13 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDL" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -46684,10 +46701,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDM" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46706,7 +46723,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46727,10 +46744,10 @@ /area/bridge) "bDO" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -46756,7 +46773,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -46780,10 +46797,10 @@ /area/bridge) "bDQ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -46796,7 +46813,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -46812,7 +46829,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bDR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -46824,10 +46841,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bDS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -46882,7 +46899,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bDX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail{ @@ -46965,7 +46982,7 @@ /turf/closed/wall, /area/security/brig) "bEd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/security{ @@ -47031,7 +47048,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bEh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/ai_slipper{ @@ -47119,7 +47136,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bEl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/ai_slipper{ @@ -47195,10 +47212,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -47210,7 +47227,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -47219,26 +47236,26 @@ /obj/machinery/holopad, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/bot, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/engine/gravity_generator) "bEs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, /area/engine/gravity_generator) "bEt" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -47250,7 +47267,7 @@ name = "Gravity Generator Room"; req_access_txt = "19;23" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -47265,16 +47282,16 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "bEv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -47283,14 +47300,14 @@ "bEw" = ( /obj/machinery/holopad, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/engine/gravity_generator) "bEx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -47301,7 +47318,7 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "bEy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47311,7 +47328,7 @@ /area/engine/storage_shared) "bEz" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/highsecurity{ @@ -47334,7 +47351,7 @@ /turf/open/floor/plasteel, /area/engine/storage_shared) "bEA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47347,7 +47364,7 @@ /turf/open/floor/plasteel, /area/engine/storage_shared) "bEB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47366,7 +47383,7 @@ /turf/open/floor/plasteel, /area/engine/storage_shared) "bEC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -47383,13 +47400,13 @@ /turf/open/floor/plasteel, /area/engine/storage_shared) "bED" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -47403,7 +47420,7 @@ }, /area/engine/storage_shared) "bEE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -47414,7 +47431,7 @@ /turf/open/floor/plasteel, /area/engine/storage_shared) "bEF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers, @@ -47427,7 +47444,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bEG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47437,7 +47454,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bEH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -47453,7 +47470,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bEI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -47473,7 +47490,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bEJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47493,7 +47510,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bEK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47512,7 +47529,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bEL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -47531,10 +47548,10 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bEM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -47572,7 +47589,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -47657,17 +47674,17 @@ dir = 8; name = "Primary Tool Storage APC"; areastring = "/area/storage/primary"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/storage/primary) "bEX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -47682,7 +47699,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "bEY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -47697,7 +47714,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "bEZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -47712,7 +47729,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "bFa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -47774,7 +47791,7 @@ /area/hallway/primary/central) "bFh" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -47842,7 +47859,7 @@ /area/bridge) "bFk" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -47912,7 +47929,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bFn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -47951,7 +47968,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bFp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48016,7 +48033,7 @@ /area/bridge) "bFu" = ( /obj/machinery/computer/communications, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48070,7 +48087,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bFz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -48124,7 +48141,7 @@ /area/bridge) "bFC" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -48160,7 +48177,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bFE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48189,7 +48206,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bFG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -48200,10 +48217,10 @@ /turf/open/floor/plating, /area/security/execution/transfer) "bFH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/airlock/security/glass{ @@ -48220,7 +48237,7 @@ /turf/open/floor/plasteel, /area/security/execution/transfer) "bFI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -48228,7 +48245,7 @@ /turf/open/floor/plating, /area/security/execution/transfer) "bFJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -48297,7 +48314,7 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bFP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -48487,7 +48504,7 @@ /turf/closed/wall/r_wall, /area/engine/gravity_generator) "bGd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -48638,7 +48655,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bGq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48761,7 +48778,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -48778,7 +48795,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bGA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -48920,7 +48937,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "bGN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -49028,7 +49045,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bGW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49058,7 +49075,7 @@ dir = 2; name = "Bridge APC"; areastring = "/area/bridge"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -49125,7 +49142,7 @@ color = "#596479"; dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -49198,7 +49215,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bHl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49260,7 +49277,7 @@ /turf/closed/wall/r_wall, /area/security/detectives_office) "bHs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -49304,7 +49321,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bHw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -49351,7 +49368,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bHz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -49368,10 +49385,10 @@ /turf/open/floor/plasteel, /area/security/brig) "bHB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49391,7 +49408,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bHC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49403,7 +49420,7 @@ /area/security/brig) "bHD" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security{ @@ -49423,7 +49440,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bHE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49442,10 +49459,10 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bHF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49464,7 +49481,7 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bHG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -49484,7 +49501,7 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bHH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -49500,13 +49517,13 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bHI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/airlock/security/glass{ @@ -49525,7 +49542,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bHJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -49535,7 +49552,7 @@ /area/security/warden) "bHK" = ( /obj/structure/tank_dispenser/oxygen, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -49551,7 +49568,7 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bHL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -49659,7 +49676,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49756,10 +49773,10 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bId" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -49775,7 +49792,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bIe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49792,7 +49809,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bIf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -49808,7 +49825,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bIg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow, @@ -49820,7 +49837,7 @@ "bIh" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ @@ -49839,7 +49856,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bIi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -49847,7 +49864,7 @@ /area/engine/break_room) "bIk" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -49856,17 +49873,17 @@ "bIl" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ name = "Engineering Foyer"; req_one_access_txt = "32;19" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -49882,7 +49899,7 @@ /area/engine/break_room) "bIm" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -49894,13 +49911,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bIn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -49927,7 +49944,7 @@ /area/hallway/primary/port) "bIp" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/item/folder/yellow, @@ -49936,7 +49953,7 @@ dir = 8; name = "Technology Storage APC"; areastring = "/area/storage/tech"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/effect/turf_decal/tile/neutral{ @@ -49952,7 +49969,7 @@ /turf/open/floor/plasteel/dark, /area/storage/tech) "bIq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -49965,7 +49982,7 @@ /turf/open/floor/plasteel, /area/storage/tech) "bIr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -49984,10 +50001,10 @@ /turf/open/floor/plasteel, /area/storage/tech) "bIs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -50058,7 +50075,7 @@ /area/storage/tech) "bIw" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -50171,7 +50188,7 @@ /area/bridge/meeting_room/council) "bIJ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/command{ @@ -50263,7 +50280,7 @@ /turf/open/floor/carpet, /area/bridge) "bIQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -50336,7 +50353,7 @@ name = "Captain's Office"; req_access_txt = "20" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -50347,7 +50364,7 @@ /turf/closed/wall/r_wall, /area/crew_quarters/heads/captain) "bIZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -50362,7 +50379,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -50375,7 +50392,7 @@ /area/maintenance/starboard) "bJb" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -50388,23 +50405,23 @@ /area/maintenance/starboard) "bJc" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/starboard) "bJd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/starboard) "bJe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -50412,7 +50429,7 @@ "bJf" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -50445,10 +50462,10 @@ /area/security/detectives_office) "bJh" = ( /obj/structure/closet/secure_closet/detective, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/clothing/head/fedora/det_hat{ @@ -50474,7 +50491,7 @@ /area/security/detectives_office) "bJi" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/item/book/manual/wiki/security_space_law, @@ -50493,14 +50510,14 @@ /area/security/detectives_office) "bJj" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Detective's Office APC"; areastring = "/area/security/detectives_office"; - pixel_y = 24 + pixel_y = 23 }, /obj/item/taperecorder, /obj/item/restraints/handcuffs, @@ -50518,7 +50535,7 @@ /area/security/detectives_office) "bJk" = ( /obj/structure/filingcabinet/security, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -50534,10 +50551,10 @@ /turf/open/floor/plasteel/dark, /area/security/detectives_office) "bJl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/trunk, @@ -50645,13 +50662,13 @@ /area/hallway/primary/starboard) "bJs" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -50662,7 +50679,7 @@ /turf/open/floor/plating, /area/security/brig) "bJt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, @@ -50675,7 +50692,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bJu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -50685,13 +50702,13 @@ /turf/open/floor/plasteel, /area/security/brig) "bJv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/security/cell/westright{ @@ -50707,17 +50724,17 @@ /turf/open/floor/plasteel, /area/security/brig) "bJw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/security/brig) "bJx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -50759,7 +50776,7 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bJA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -50819,7 +50836,7 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "bJF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -50838,7 +50855,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bJG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -50881,7 +50898,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bJJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -50891,7 +50908,7 @@ dir = 1; name = "AI Chamber APC"; areastring = "/area/ai_monitored/turret_protected/ai"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -50920,7 +50937,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bJL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -50929,7 +50946,7 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bJM" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -50964,7 +50981,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bJO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/hatch{ @@ -51125,7 +51142,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/chief) "bJW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -51227,7 +51244,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bKd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -51328,7 +51345,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bKn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -51467,19 +51484,19 @@ /turf/open/floor/wood, /area/bridge/meeting_room/council) "bKC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc/highcap/ten_k{ dir = 1; name = "Council Chambers APC"; areastring = "/area/bridge/meeting_room/council"; - pixel_y = 26 + pixel_y = 23 }, /turf/open/floor/wood, /area/bridge/meeting_room/council) "bKD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -51488,7 +51505,7 @@ /turf/open/floor/wood, /area/bridge/meeting_room/council) "bKE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/light_switch{ @@ -51518,7 +51535,7 @@ /turf/closed/wall/r_wall, /area/tcommsat/computer) "bKJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -51559,7 +51576,7 @@ pixel_x = -26; pixel_y = 26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51654,7 +51671,7 @@ name = "Auxiliary Tool Storage Maintenance"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -51667,7 +51684,7 @@ /area/maintenance/starboard) "bKX" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -51677,7 +51694,7 @@ name = "Detective's Office Maintenance"; req_access_txt = "4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -51693,7 +51710,7 @@ pixel_x = -26; pixel_y = 32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -51709,10 +51726,10 @@ /turf/open/floor/plasteel/dark, /area/security/detectives_office) "bLa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -51731,7 +51748,7 @@ /turf/open/floor/plasteel/dark, /area/security/detectives_office) "bLb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51740,13 +51757,13 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "bLc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51755,7 +51772,7 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "bLd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -51764,7 +51781,7 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "bLe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/reagent_dispensers/peppertank{ @@ -51893,7 +51910,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bLo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -51924,7 +51941,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bLq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -51932,10 +51949,10 @@ /area/security/warden) "bLr" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/security/glass{ @@ -52052,20 +52069,20 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bLy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bLz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bLA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/ai_slipper{ @@ -52074,17 +52091,17 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bLB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai) "bLC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/circuit/green, @@ -52158,7 +52175,7 @@ dir = 1; name = "Transit Tube Access APC"; areastring = "/area/engine/transit_tube"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/effect/turf_decal/tile/neutral{ @@ -52174,7 +52191,7 @@ /turf/open/floor/plasteel/dark, /area/engine/transit_tube) "bLJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -52268,7 +52285,7 @@ }, /area/crew_quarters/heads/chief) "bLP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -52287,10 +52304,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/chief) "bLQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/firedoor, @@ -52298,7 +52315,7 @@ name = "Chief Engineer's Office"; req_access_txt = "56" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -52317,7 +52334,7 @@ id = "ceblast"; name = "Chief's Lockdown Shutters" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -52332,7 +52349,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bLS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -52342,7 +52359,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bLT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -52360,7 +52377,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bLU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -52382,7 +52399,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bLV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -52404,7 +52421,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bLW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -52426,10 +52443,10 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bLX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -52451,10 +52468,10 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bLY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -52486,7 +52503,7 @@ /turf/closed/wall, /area/security/checkpoint/engineering) "bMb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -52496,10 +52513,10 @@ /turf/open/floor/plating, /area/security/checkpoint/engineering) "bMc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/security/glass{ @@ -52523,7 +52540,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bMd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -52631,7 +52648,7 @@ /turf/open/floor/plasteel, /area/storage/primary) "bMm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -52669,7 +52686,7 @@ /turf/open/floor/carpet, /area/bridge/meeting_room/council) "bMr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/chair/comfy/brown, @@ -52679,7 +52696,7 @@ /turf/open/floor/carpet, /area/bridge/meeting_room/council) "bMs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/chair/comfy/black, @@ -52764,10 +52781,10 @@ dir = 1; name = "Telecomms Monitoring APC"; areastring = "/area/tcommsat/computer"; - pixel_y = 28 + pixel_y = 23 }, /obj/item/twohanded/required/kirbyplants/random, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -52788,7 +52805,7 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bMB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -52874,7 +52891,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bMJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -52914,7 +52931,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bMP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -52948,7 +52965,7 @@ /turf/open/floor/plasteel, /area/storage/tools) "bMS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/decal/cleanable/dirt, @@ -52958,7 +52975,7 @@ dir = 1; name = "Auxiliary Tool Storage APC"; areastring = "/area/storage/tools"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/turf_decal/tile/yellow{ dir = 1 @@ -52966,7 +52983,7 @@ /turf/open/floor/plasteel, /area/storage/tools) "bMT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -53044,10 +53061,10 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "bNa" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -53099,7 +53116,7 @@ /turf/closed/wall/r_wall, /area/security/detectives_office) "bNf" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -53202,7 +53219,7 @@ pixel_x = -32; pixel_y = 32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -53217,10 +53234,10 @@ /turf/open/floor/plasteel, /area/security/warden) "bNn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -53475,7 +53492,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bND" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53494,7 +53511,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bNE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/hatch{ @@ -53518,7 +53535,7 @@ /area/aisat) "bNF" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53528,7 +53545,7 @@ /area/space/nearstation) "bNG" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53538,7 +53555,7 @@ /area/space/nearstation) "bNH" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53547,7 +53564,7 @@ /turf/open/space, /area/space/nearstation) "bNI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53573,7 +53590,7 @@ /turf/open/floor/plasteel/dark, /area/engine/transit_tube) "bNJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53592,7 +53609,7 @@ /turf/open/floor/plasteel/dark, /area/engine/transit_tube) "bNK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53618,7 +53635,7 @@ /turf/open/floor/plasteel/dark, /area/engine/transit_tube) "bNL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -53635,7 +53652,7 @@ /turf/open/floor/plasteel/dark, /area/engine/transit_tube) "bNM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53745,7 +53762,7 @@ }, /area/crew_quarters/heads/chief) "bNT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -53843,7 +53860,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bOb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -53883,7 +53900,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bOf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -53935,7 +53952,7 @@ /turf/closed/wall/r_wall, /area/security/checkpoint/engineering) "bOk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -54012,7 +54029,7 @@ "bOo" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54079,10 +54096,10 @@ /area/storage/primary) "bOv" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -54093,7 +54110,7 @@ /turf/open/floor/plating, /area/bridge/meeting_room/council) "bOw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/photocopier, @@ -54101,7 +54118,7 @@ /area/bridge/meeting_room/council) "bOx" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, @@ -54110,14 +54127,14 @@ /obj/structure/chair/comfy/brown{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, /area/bridge/meeting_room/council) "bOz" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/folder/blue, @@ -54126,10 +54143,10 @@ /area/bridge/meeting_room/council) "bOA" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/item/folder/red, @@ -54138,10 +54155,10 @@ /area/bridge/meeting_room/council) "bOB" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/item/folder/yellow, @@ -54204,13 +54221,13 @@ /turf/open/floor/plasteel/dark, /area/tcommsat/computer) "bOH" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bOI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -54219,7 +54236,7 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bOJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -54228,11 +54245,11 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bOK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -54250,7 +54267,7 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bON" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/grimy, @@ -54294,10 +54311,10 @@ /area/crew_quarters/heads/captain) "bOR" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54305,14 +54322,14 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bOS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bOT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -54322,7 +54339,7 @@ /obj/structure/chair/comfy/brown{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, @@ -54336,7 +54353,7 @@ pixel_x = -3 }, /obj/item/clothing/mask/cigarette/cigar, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -54370,7 +54387,7 @@ /turf/open/floor/plasteel, /area/storage/tools) "bOY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -54389,7 +54406,7 @@ /turf/open/floor/plasteel, /area/storage/tools) "bOZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -54492,10 +54509,10 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "bPh" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -54508,7 +54525,7 @@ /turf/open/floor/carpet, /area/security/detectives_office) "bPj" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/detective, @@ -54607,7 +54624,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bPr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -54632,7 +54649,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bPt" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/warden, @@ -54645,10 +54662,10 @@ /turf/open/floor/plasteel, /area/security/warden) "bPu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -54668,7 +54685,7 @@ /obj/machinery/computer/secure_data{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -54681,7 +54698,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bPw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -54836,7 +54853,7 @@ /area/aisat) "bPK" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54971,7 +54988,7 @@ /area/crew_quarters/heads/chief) "bPT" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/item/folder/blue{ @@ -54996,7 +55013,7 @@ /obj/structure/chair/office/light{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -55011,10 +55028,10 @@ }, /area/crew_quarters/heads/chief) "bPV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/light{ @@ -55048,7 +55065,7 @@ /area/engine/break_room) "bPZ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -55076,7 +55093,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bQc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable/white, @@ -55131,7 +55148,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -55330,7 +55347,7 @@ /turf/open/floor/carpet, /area/bridge/meeting_room/council) "bQC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/chair/comfy/brown{ @@ -55391,7 +55408,7 @@ /turf/open/floor/plasteel/dark, /area/tcommsat/computer) "bQI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/grimy, @@ -55404,7 +55421,7 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bQL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -55414,7 +55431,7 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bQN" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bQO" = ( @@ -55472,7 +55489,7 @@ /area/crew_quarters/heads/captain) "bQS" = ( /obj/structure/chair/comfy/brown, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -55499,7 +55516,7 @@ dir = 2; name = "Captain's Office APC"; areastring = "/area/crew_quarters/heads/captain"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/white, /turf/open/floor/wood, @@ -55642,33 +55659,33 @@ /turf/open/floor/plasteel/dark, /area/security/detectives_office) "bRh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "bRi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "bRj" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/item/paper_bin, @@ -55703,7 +55720,7 @@ /turf/open/floor/carpet, /area/security/detectives_office) "bRm" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/neutral{ @@ -55736,7 +55753,7 @@ /turf/open/floor/plasteel/dark, /area/security/detectives_office) "bRo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -55748,13 +55765,13 @@ /turf/open/floor/plasteel, /area/security/brig) "bRp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/security/cell/westright{ @@ -55773,7 +55790,7 @@ /obj/structure/table/reinforced, /obj/item/paper_bin, /obj/item/pen, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -55785,13 +55802,13 @@ /turf/open/floor/plasteel, /area/security/warden) "bRr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -55811,7 +55828,7 @@ /obj/machinery/computer/security{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -55910,7 +55927,7 @@ /area/ai_monitored/turret_protected/aisat_interior) "bRz" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/portable_atmospherics/canister/air, @@ -55926,7 +55943,7 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/light{ @@ -56108,7 +56125,7 @@ /area/space/nearstation) "bRT" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56118,7 +56135,7 @@ /area/space/nearstation) "bRU" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -56192,7 +56209,7 @@ /area/crew_quarters/heads/chief) "bSa" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/clipboard, @@ -56225,7 +56242,7 @@ }, /area/crew_quarters/heads/chief) "bSc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -56308,7 +56325,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bSj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -56331,17 +56348,17 @@ /turf/closed/wall, /area/engine/engineering) "bSm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/engineering) "bSn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -56363,7 +56380,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bSo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -56391,7 +56408,7 @@ /area/storage/tech) "bSs" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -56502,7 +56519,7 @@ /turf/open/floor/wood, /area/bridge/meeting_room/council) "bSB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -56612,7 +56629,7 @@ /obj/item/folder/blue, /obj/item/pen/fourcolor, /obj/item/stamp/captain, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -56712,7 +56729,7 @@ name = "Detective's Office"; req_access_txt = "4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -56731,7 +56748,7 @@ name = "Detective Privacy Blast door" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -56743,7 +56760,7 @@ name = "Detective Privacy Blast door" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -56792,7 +56809,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bTe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -56831,10 +56848,10 @@ /turf/open/floor/plasteel, /area/security/warden) "bTg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -56854,14 +56871,14 @@ /obj/machinery/computer/prisoner{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "Warden's Office APC"; areastring = "/area/security/warden"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/camera{ c_tag = "Security - Warden's Office"; @@ -57031,7 +57048,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat_interior) "bTp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -57154,7 +57171,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat_interior"; enabled = 1; - icon_state = "control_standby"; name = "Antechamber Turret Control"; pixel_x = -32; req_access = null; @@ -57348,7 +57364,7 @@ /turf/open/floor/plasteel/dark, /area/engine/transit_tube) "bTM" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/flasher{ @@ -57446,7 +57462,7 @@ /area/crew_quarters/heads/chief) "bTR" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/cartridge/engineering{ @@ -57486,7 +57502,7 @@ }, /area/crew_quarters/heads/chief) "bTT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57505,13 +57521,13 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/chief) "bTU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -57531,7 +57547,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "bTV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57550,7 +57566,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/chief) "bTW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57559,10 +57575,10 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/chief) "bTX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/chief_engineer, @@ -57572,7 +57588,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/chief) "bTY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -57584,7 +57600,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "bTZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -57603,7 +57619,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bUb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/beacon, @@ -57631,7 +57647,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bUd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -57644,7 +57660,7 @@ /turf/open/floor/plating, /area/engine/engineering) "bUe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/twohanded/required/kirbyplants/random, @@ -57667,7 +57683,7 @@ dir = 1; name = "Security Post - Engineering APC"; areastring = "/area/security/checkpoint/engineering"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57680,7 +57696,7 @@ pixel_x = 7; pixel_y = 36 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/red{ @@ -57704,7 +57720,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bUh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -57743,10 +57759,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bUj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -57765,7 +57781,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -57778,7 +57794,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -57793,7 +57809,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -57805,7 +57821,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -57818,7 +57834,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -57827,11 +57843,11 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -57840,7 +57856,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57852,7 +57868,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57864,7 +57880,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -57876,10 +57892,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -57889,7 +57905,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57907,7 +57923,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57923,7 +57939,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -57933,7 +57949,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -57946,7 +57962,7 @@ /area/hallway/primary/port) "bUy" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57964,10 +57980,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bUz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57996,7 +58012,7 @@ /turf/closed/wall/r_wall, /area/crew_quarters/heads/hop) "bUC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -58045,7 +58061,7 @@ /turf/open/floor/plating, /area/tcommsat/server) "bUK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -58090,7 +58106,7 @@ color = "#c45c57"; dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/captain, @@ -58260,7 +58276,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bVb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -58413,7 +58429,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bVm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -58447,7 +58463,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bVo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -58469,12 +58485,12 @@ /area/ai_monitored/security/armory) "bVq" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/e_gun/advtaser, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, @@ -58584,7 +58600,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -58600,13 +58616,13 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -58622,7 +58638,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/holopad, @@ -58640,7 +58656,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -58659,7 +58675,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -58681,7 +58697,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -58711,7 +58727,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -58730,41 +58746,41 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "bVD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "bVE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /mob/living/simple_animal/bot/secbot/pingsky, /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "bVF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "bVG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -58773,7 +58789,7 @@ /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "bVH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -58789,7 +58805,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -58813,7 +58829,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/ai_slipper{ @@ -58832,7 +58848,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -58849,7 +58865,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -58868,7 +58884,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -58892,7 +58908,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bVN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -58908,7 +58924,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bVO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -58927,7 +58943,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bVP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -58946,7 +58962,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bVQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/beacon, @@ -58963,7 +58979,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bVR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/holopad, @@ -58980,7 +58996,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bVT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -59191,7 +59207,7 @@ }, /area/crew_quarters/heads/chief) "bWi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -59251,7 +59267,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/chief) "bWo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -59277,7 +59293,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bWr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -59305,24 +59321,24 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bWt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/engine/engineering) "bWu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -59335,11 +59351,11 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bWv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -59355,8 +59371,8 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bWw" = ( -/obj/structure/chair/office/dark, -/obj/structure/cable/white{ +/obj/structure/chair/office, +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -59372,10 +59388,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bWx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -59415,7 +59431,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/port) "bWA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/navbeacon{ @@ -59579,7 +59595,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bWM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/navbeacon{ @@ -59690,7 +59706,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "bWT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -59737,7 +59753,7 @@ /turf/open/floor/circuit/green/telecomms/mainframe, /area/tcommsat/server) "bWZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -59787,7 +59803,7 @@ pixel_x = 26; pixel_y = -26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -59851,10 +59867,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bXk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/navbeacon{ @@ -59874,7 +59890,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bXl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -59896,7 +59912,7 @@ /area/hallway/primary/central) "bXm" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/public/glass{ @@ -59911,7 +59927,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -59927,7 +59943,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, @@ -59945,7 +59961,7 @@ /area/hallway/primary/starboard) "bXp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -59962,7 +59978,7 @@ /area/hallway/primary/starboard) "bXq" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -59978,7 +59994,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -59991,10 +60007,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -60010,10 +60026,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -60029,7 +60045,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -60046,7 +60062,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -60065,10 +60081,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -60086,7 +60102,7 @@ /area/hallway/primary/starboard) "bXy" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -60099,7 +60115,7 @@ /area/hallway/primary/starboard) "bXz" = ( /obj/item/beacon, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/navbeacon{ @@ -60123,7 +60139,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60139,7 +60155,7 @@ /area/hallway/primary/starboard) "bXB" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -60164,10 +60180,10 @@ /turf/open/floor/plasteel, /area/security/brig) "bXC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60182,10 +60198,10 @@ /turf/open/floor/plasteel, /area/security/brig) "bXD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -60203,7 +60219,7 @@ /area/security/brig) "bXE" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -60228,7 +60244,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bXF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60241,10 +60257,10 @@ /turf/open/floor/plasteel, /area/security/brig) "bXG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60276,7 +60292,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bXI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -60302,10 +60318,10 @@ /turf/open/floor/plasteel, /area/security/warden) "bXK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -60322,7 +60338,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bXL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60336,13 +60352,13 @@ /area/security/warden) "bXM" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security{ @@ -60361,7 +60377,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "bXN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60373,7 +60389,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "bXO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60395,7 +60411,7 @@ pixel_x = 3; pixel_y = -3 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60409,7 +60425,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "bXQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -60490,7 +60506,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -60584,7 +60600,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "bYb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -60598,7 +60614,7 @@ /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "bYd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -60705,7 +60721,7 @@ dir = 2; name = "AI Satellite Exterior APC"; areastring = "/area/aisat"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -60880,7 +60896,7 @@ dir = 2; name = "Chief Engineer's APC"; areastring = "/area/crew_quarters/heads/chief"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -60927,7 +60943,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/chief) "bYx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -60939,10 +60955,10 @@ /area/crew_quarters/heads/chief) "bYy" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -60972,7 +60988,7 @@ /area/engine/engineering) "bYA" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -60994,7 +61010,7 @@ /turf/open/floor/plating, /area/engine/engineering) "bYD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -61044,7 +61060,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bYG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/computer/secure_data{ @@ -61091,7 +61107,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -61273,7 +61289,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hop) "bYZ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/head_of_personnel, @@ -61297,7 +61313,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hop) "bZc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -61344,7 +61360,7 @@ /turf/open/floor/plasteel/white/telecomms, /area/tcommsat/server) "bZi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -61400,7 +61416,7 @@ name = "Captain's Quarters"; req_access_txt = "20" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -61520,7 +61536,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bZy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -61529,7 +61545,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral, @@ -61546,9 +61562,9 @@ dir = 2; name = "Starboard Primary Hallway APC"; areastring = "/area/hallway/primary/starboard"; - pixel_y = -26 + pixel_y = -23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral, @@ -61577,7 +61593,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bZD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -61658,7 +61674,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bZK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -61669,7 +61685,7 @@ /turf/open/floor/plating, /area/security/brig) "bZL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -61679,7 +61695,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bZM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/poddoor/preopen{ @@ -61690,17 +61706,17 @@ /turf/open/floor/plasteel, /area/security/brig) "bZN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/brig) "bZO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/landmark/event_spawn, @@ -61717,7 +61733,7 @@ /turf/open/floor/plasteel, /area/security/brig) "bZP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -61726,13 +61742,13 @@ /area/security/brig) "bZQ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/security/glass{ @@ -61742,7 +61758,7 @@ /turf/open/floor/plasteel, /area/security/warden) "bZR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -61751,10 +61767,10 @@ /turf/open/floor/plasteel, /area/security/warden) "bZS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/button/door{ @@ -61804,7 +61820,7 @@ /area/security/warden) "bZU" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/security{ @@ -61828,7 +61844,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "bZX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -61867,7 +61883,7 @@ dir = 2; name = "MiniSat APC"; areastring = "/area/ai_monitored/turret_protected/aisat_interior"; - pixel_y = -27 + pixel_y = -23 }, /obj/structure/cable/white, /obj/effect/turf_decal/stripes/line{ @@ -61955,7 +61971,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "cag" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -62177,7 +62193,7 @@ /area/engine/engineering) "cax" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -62202,7 +62218,7 @@ /turf/closed/wall, /area/engine/engineering) "caz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -62237,7 +62253,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow, @@ -62330,7 +62346,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "caM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -62344,7 +62360,7 @@ /obj/machinery/computer/card{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -62360,23 +62376,23 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hop) "caO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/wood, /area/crew_quarters/heads/hop) "caP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hop) "caQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/grimy, @@ -62433,7 +62449,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "caX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -62499,7 +62515,7 @@ pixel_x = 26; pixel_y = 26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -62588,7 +62604,7 @@ name = "Courtroom"; req_access_txt = "42" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -62608,7 +62624,7 @@ /area/lawoffice) "cbr" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock{ @@ -62774,7 +62790,7 @@ /turf/open/floor/plasteel, /area/security/warden) "cbE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -62838,7 +62854,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "cbJ" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, @@ -62853,7 +62869,7 @@ dir = 2; name = "Armoury APC"; areastring = "/area/ai_monitored/security/armory"; - pixel_y = -26 + pixel_y = -23 }, /obj/machinery/camera{ c_tag = "Armory - Interior"; @@ -62862,6 +62878,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/structure/table/reinforced, +/obj/item/gun/energy/e_gun/dragnet, +/obj/item/gun/energy/e_gun/dragnet, /turf/open/floor/plasteel, /area/ai_monitored/security/armory) "cbL" = ( @@ -62894,7 +62913,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "cbM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -62924,7 +62943,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cbO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/grille, @@ -62932,7 +62951,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cbP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/grille, @@ -62940,7 +62959,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cbQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/grille, @@ -62950,7 +62969,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cbR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/grille, @@ -62958,10 +62977,10 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cbS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/grille, @@ -62969,7 +62988,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cbT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/grille, @@ -63066,13 +63085,13 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ccc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/sorting/mail{ @@ -63085,7 +63104,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ccd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -63098,7 +63117,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cce" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/firealarm{ @@ -63113,13 +63132,13 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ccf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -63131,20 +63150,20 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ccg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/engine/engineering) "cch" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/power/smes/engineering{ @@ -63153,7 +63172,7 @@ /turf/open/floor/circuit/green, /area/engine/engineering) "cci" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes/engineering{ @@ -63167,7 +63186,7 @@ req_access_txt = "12" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -63305,7 +63324,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "ccx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -63347,7 +63366,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hop) "ccB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -63365,7 +63384,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "ccD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/camera{ @@ -63387,7 +63406,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "ccE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -63403,7 +63422,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "ccF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -63425,7 +63444,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "ccH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -63443,17 +63462,17 @@ /area/tcommsat/server) "ccI" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/folder/yellow, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/circuit/green/telecomms/mainframe, /area/tcommsat/server) "ccJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/siphon/on{ @@ -63474,7 +63493,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "ccL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -63500,7 +63519,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/captain/private) "ccN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -63700,7 +63719,7 @@ pixel_x = 26; pixel_y = 26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -63748,7 +63767,7 @@ /turf/open/floor/wood, /area/lawoffice) "cdi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -63819,7 +63838,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cdo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -63856,10 +63875,10 @@ "cdq" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/window/brigdoor/northright{ @@ -63960,7 +63979,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "cdy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -64029,7 +64048,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cdE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/grille, @@ -64039,7 +64058,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cdF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/grille, @@ -64049,7 +64068,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cdG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -64064,7 +64083,7 @@ req_access_txt = "10; 13" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -64077,7 +64096,7 @@ /area/engine/engineering) "cdI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -64095,7 +64114,7 @@ req_access_txt = "10; 13" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -64110,7 +64129,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cdK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -64123,7 +64142,7 @@ /area/engine/engineering) "cdL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -64142,7 +64161,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cdM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -64161,7 +64180,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cdN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -64177,7 +64196,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cdO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -64193,7 +64212,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cdP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -64213,11 +64232,11 @@ /area/engine/engineering) "cdQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -64269,13 +64288,13 @@ /area/engine/engineering) "cdT" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -64285,10 +64304,10 @@ /area/engine/engineering) "cdU" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/engineering/glass{ @@ -64377,7 +64396,7 @@ "cdZ" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -64432,7 +64451,7 @@ /turf/open/floor/plasteel/dark, /area/library) "cef" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/librarian, @@ -64489,7 +64508,7 @@ /turf/open/floor/plasteel/dark, /area/library) "cek" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -64536,7 +64555,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cep" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/twohanded/required/kirbyplants/random, @@ -64553,13 +64572,13 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hop) "ceq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -64569,9 +64588,9 @@ dir = 4; name = "HoP Office APC"; areastring = "/area/crew_quarters/heads/hop"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -64591,7 +64610,7 @@ dir = 8; name = "Telecomms Server Room APC"; areastring = "/area/tcommsat/server"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable/white, /obj/effect/turf_decal/tile/neutral{ @@ -64607,7 +64626,7 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "ceu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -64624,7 +64643,7 @@ /area/tcommsat/server) "cev" = ( /obj/machinery/telecomms/broadcaster/preset_left, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ @@ -64633,7 +64652,7 @@ /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "cew" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ @@ -64652,8 +64671,8 @@ /turf/open/floor/plasteel/dark/telecomms, /area/tcommsat/server) "cex" = ( -/obj/machinery/telecomms/message_server, -/obj/structure/cable/white{ +/obj/machinery/telecomms/message_server/preset, +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/general/hidden{ @@ -64662,7 +64681,7 @@ /turf/open/floor/circuit/green/telecomms/mainframe, /area/tcommsat/server) "cey" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -64683,13 +64702,13 @@ /area/tcommsat/server) "cez" = ( /obj/machinery/telecomms/hub/preset, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ @@ -64699,7 +64718,7 @@ /area/tcommsat/server) "ceA" = ( /obj/machinery/blackbox_recorder, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/general/hidden{ @@ -64709,7 +64728,7 @@ /area/tcommsat/server) "ceB" = ( /obj/machinery/telecomms/broadcaster/preset_right, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ @@ -64718,13 +64737,13 @@ /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "ceC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/power/terminal{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -64770,7 +64789,7 @@ /obj/structure/chair/comfy/brown{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/landmark/start/captain, @@ -64780,7 +64799,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/captain/private) "ceG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -64791,10 +64810,10 @@ /area/crew_quarters/heads/captain/private) "ceH" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -64804,7 +64823,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain/private) "ceI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -64817,7 +64836,7 @@ name = "Captain's Bedroom"; req_access_txt = "20" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -64905,7 +64924,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "ceR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -64924,7 +64943,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "ceS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -64943,10 +64962,10 @@ /turf/open/floor/plasteel, /area/security/courtroom) "ceT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -64963,7 +64982,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "ceU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -64977,7 +64996,7 @@ /area/security/courtroom) "ceV" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -64991,10 +65010,10 @@ /turf/open/floor/plasteel, /area/lawoffice) "ceW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -65003,7 +65022,7 @@ /turf/open/floor/wood, /area/lawoffice) "ceX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -65014,10 +65033,10 @@ /area/lawoffice) "ceY" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -65027,7 +65046,7 @@ /turf/open/floor/plasteel/grimy, /area/lawoffice) "ceZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/start/lawyer, @@ -65048,7 +65067,7 @@ /obj/machinery/computer/security{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -65063,7 +65082,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cfc" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/security_officer, @@ -65080,7 +65099,7 @@ /obj/machinery/computer/secure_data{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/button/flasher{ @@ -65150,10 +65169,10 @@ /turf/open/floor/plasteel, /area/security/brig) "cfh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -65173,7 +65192,7 @@ /area/security/brig) "cfi" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security/glass{ @@ -65186,7 +65205,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cfj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -65204,7 +65223,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cfk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -65219,10 +65238,10 @@ /turf/open/floor/plasteel, /area/security/brig) "cfl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -65237,14 +65256,14 @@ /turf/open/floor/plasteel, /area/security/brig) "cfm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc/highcap/ten_k{ dir = 1; name = "Brig APC"; areastring = "/area/security/brig"; - pixel_y = 28 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -65377,7 +65396,7 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "cfw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -65519,7 +65538,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cfJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -65558,7 +65577,7 @@ /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -65568,7 +65587,7 @@ /area/engine/engineering) "cfN" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -65597,7 +65616,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cfP" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/station_engineer, /obj/structure/cable{ icon_state = "4-8" @@ -65634,7 +65653,7 @@ /area/maintenance/port) "cfS" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -65750,7 +65769,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hop) "cgf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -65809,7 +65828,7 @@ /area/tcommsat/server) "cgm" = ( /obj/machinery/ntnet_relay, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green/telecomms/mainframe, @@ -65867,7 +65886,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain/private) "cgu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -65903,7 +65922,7 @@ dir = 2; name = "Captain's Quarters APC"; areastring = "/area/crew_quarters/heads/captain/private"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/white, /turf/open/floor/plasteel/grimy, @@ -66016,7 +66035,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "cgF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -66088,7 +66107,7 @@ /obj/machinery/light{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/newscaster{ @@ -66113,7 +66132,7 @@ /turf/open/floor/plasteel/grimy, /area/lawoffice) "cgM" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -66125,7 +66144,7 @@ /turf/open/floor/plasteel/grimy, /area/lawoffice) "cgN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -66144,7 +66163,7 @@ /turf/open/floor/wood, /area/lawoffice) "cgP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/table/reinforced, @@ -66178,7 +66197,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cgR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/filingcabinet/chestdrawer, @@ -66201,20 +66220,20 @@ /turf/open/floor/plasteel, /area/security/brig) "cgT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/security/brig) "cgU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/security/holding/westright{ @@ -66226,7 +66245,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cgV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -66236,13 +66255,13 @@ /turf/open/floor/plasteel, /area/security/brig) "cgW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -66258,7 +66277,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cgX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -66269,7 +66288,7 @@ /turf/open/floor/plasteel, /area/security/brig) "cgY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -66315,10 +66334,10 @@ /turf/open/floor/plasteel, /area/security/brig) "chb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/landmark/start/security_officer, @@ -66338,7 +66357,7 @@ /turf/open/floor/plasteel, /area/security/brig) "chc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/security_officer, @@ -66356,14 +66375,14 @@ /area/security/brig) "chd" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/security/brig) "che" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/security_officer, @@ -66383,7 +66402,7 @@ /turf/open/floor/plasteel, /area/security/brig) "chf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -66407,7 +66426,7 @@ pixel_x = 32; pixel_y = 32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -66431,10 +66450,10 @@ /turf/open/space, /area/space/nearstation) "chi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -66445,7 +66464,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/ai_upload) "chj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -66477,7 +66496,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "chk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -66493,10 +66512,10 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "chl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -66505,7 +66524,7 @@ /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "chm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -66524,13 +66543,13 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "chn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -66550,7 +66569,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "cho" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -66569,14 +66588,14 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "chp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "chq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -66608,10 +66627,10 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "chr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -66710,7 +66729,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "chB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -66732,7 +66751,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "chD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -66740,7 +66759,7 @@ "chE" = ( /obj/structure/cable/white, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -66754,7 +66773,7 @@ /obj/machinery/status_display/evac{ pixel_y = -32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/camera{ @@ -66821,7 +66840,7 @@ /area/maintenance/port) "chJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -66856,7 +66875,7 @@ /turf/open/floor/wood, /area/library) "chN" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/library) "chO" = ( @@ -66939,7 +66958,7 @@ /obj/machinery/computer/security/mining{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -66955,8 +66974,8 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hop) "cia" = ( -/obj/structure/chair/office/dark, -/obj/structure/cable/white{ +/obj/structure/chair/office, +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/head_of_personnel, @@ -66972,7 +66991,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "cic" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green/telecomms/mainframe, @@ -67060,7 +67079,7 @@ name = "Emergency Escape"; req_access_txt = "20" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -67138,7 +67157,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "ciq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -67199,7 +67218,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "ciu" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/structure/cable/white, @@ -67207,7 +67226,7 @@ dir = 8; name = "Law Office APC"; areastring = "/area/lawoffice"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/effect/landmark/start/lawyer, @@ -67232,14 +67251,14 @@ /turf/open/floor/plasteel/grimy, /area/lawoffice) "ciw" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/grimy, /area/lawoffice) "cix" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -67258,7 +67277,7 @@ /turf/open/floor/wood, /area/lawoffice) "ciz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/table/reinforced, @@ -67280,7 +67299,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ciA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/nanotrasen{ @@ -67300,10 +67319,10 @@ /turf/open/floor/plasteel, /area/security/brig) "ciB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/extinguisher_cabinet{ @@ -67327,10 +67346,10 @@ name = "Security Desk"; req_access_txt = "63" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67345,7 +67364,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ciD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67355,7 +67374,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ciE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/chair{ @@ -67382,7 +67401,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ciG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -67446,7 +67465,7 @@ /area/security/brig) "ciK" = ( /obj/machinery/vending/wardrobe/sec_wardrobe, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/sign/poster/official/do_not_question{ @@ -67469,7 +67488,7 @@ /obj/machinery/status_display/evac{ pixel_y = -32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/bot, @@ -67486,10 +67505,10 @@ /obj/structure/table/reinforced, /obj/machinery/recharger, /obj/machinery/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -67503,7 +67522,7 @@ /obj/structure/sign/nanotrasen{ pixel_y = -32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -67515,7 +67534,7 @@ "ciO" = ( /obj/structure/table/reinforced, /obj/machinery/recharger, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/red, @@ -67565,7 +67584,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "ciS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -67923,7 +67942,7 @@ /area/crew_quarters/heads/hop) "cjC" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -67961,7 +67980,7 @@ /turf/open/floor/plasteel/telecomms, /area/tcommsat/server) "cjG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, @@ -68018,7 +68037,7 @@ /turf/closed/wall, /area/teleporter) "cjM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/camera/motion{ @@ -68045,7 +68064,7 @@ /turf/open/floor/plasteel, /area/teleporter) "cjN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -68058,7 +68077,7 @@ /turf/open/floor/plating, /area/teleporter) "cjO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -68155,7 +68174,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "cka" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -68245,7 +68264,7 @@ /turf/open/floor/wood, /area/lawoffice) "ckh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -68262,7 +68281,7 @@ /turf/open/floor/wood, /area/lawoffice) "ckj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -68272,13 +68291,13 @@ /turf/open/floor/plating, /area/security/brig) "ckk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -68298,7 +68317,7 @@ /turf/open/floor/plasteel, /area/security/brig) "ckl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -68364,14 +68383,14 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "ckp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/circuit/green, /area/ai_monitored/turret_protected/ai_upload) "ckq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/ai_slipper{ @@ -68527,11 +68546,11 @@ /area/engine/engineering) "ckF" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -68540,7 +68559,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ckG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -68552,7 +68571,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ckH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/station_engineer, @@ -68570,14 +68589,14 @@ /area/engine/engineering) "ckI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "Engine Room APC"; areastring = "/area/engine/engineering"; - pixel_x = 26 + pixel_x = 24 }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, @@ -68613,7 +68632,7 @@ "ckM" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -68633,7 +68652,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "ckO" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/assistant, @@ -68687,13 +68706,13 @@ /turf/closed/wall, /area/crew_quarters/heads/hop) "ckW" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/wood, /area/crew_quarters/heads/hop) "ckX" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/disposalpipe/segment, @@ -68730,7 +68749,7 @@ /turf/closed/wall, /area/teleporter) "cld" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -68898,7 +68917,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "clo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -68958,7 +68977,7 @@ /turf/closed/wall, /area/lawoffice) "clt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -69051,7 +69070,7 @@ /turf/open/floor/plasteel, /area/security/range) "clC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -69155,7 +69174,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "clN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/flasher{ @@ -69176,7 +69195,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "clO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green, @@ -69377,7 +69396,7 @@ "cmj" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -69386,7 +69405,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -69396,7 +69415,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -69407,20 +69426,20 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port) "cmn" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -69431,7 +69450,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69446,7 +69465,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cmp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69455,7 +69474,7 @@ /turf/open/floor/wood, /area/library) "cmq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69514,17 +69533,17 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "cmA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hop) "cmB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -69549,7 +69568,7 @@ /turf/open/floor/plating, /area/tcommsat/server) "cmF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -69601,9 +69620,9 @@ dir = 1; name = "Teleporter APC"; areastring = "/area/teleporter"; - pixel_y = 28 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/disposalpipe/segment{ @@ -69624,7 +69643,7 @@ /turf/open/floor/plasteel, /area/teleporter) "cmL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -69763,7 +69782,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "cmV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -69814,7 +69833,7 @@ /area/security/courtroom) "cmZ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/landmark/blobstart, @@ -69834,7 +69853,7 @@ /area/maintenance/starboard) "cna" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -69846,7 +69865,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard) "cnb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -69857,10 +69876,10 @@ /area/maintenance/starboard) "cnc" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69873,7 +69892,7 @@ /turf/open/floor/plating, /area/maintenance/starboard) "cnd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -69890,7 +69909,7 @@ }, /area/maintenance/starboard) "cne" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69902,7 +69921,7 @@ /turf/open/floor/plating, /area/maintenance/starboard) "cnf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -69916,7 +69935,7 @@ /area/maintenance/starboard) "cng" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69930,7 +69949,7 @@ /area/maintenance/starboard) "cnh" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69953,7 +69972,7 @@ /area/maintenance/starboard) "cni" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -69965,10 +69984,10 @@ /turf/open/floor/plating, /area/maintenance/starboard) "cnj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -69993,13 +70012,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/maintenance/starboard) "cnl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -70015,16 +70034,16 @@ /turf/open/floor/plasteel, /area/security/range) "cnm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -70045,7 +70064,7 @@ /turf/open/floor/plasteel, /area/security/range) "cnn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -70061,7 +70080,7 @@ /turf/open/floor/plasteel, /area/security/range) "cno" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/window/brigdoor/westright{ @@ -70071,13 +70090,13 @@ /turf/open/floor/plating, /area/security/range) "cnp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/security/range) "cnq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -70085,10 +70104,10 @@ /turf/open/floor/plating, /area/security/range) "cnr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/target/syndicate, @@ -70097,7 +70116,7 @@ /turf/open/floor/plasteel, /area/security/range) "cns" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -70138,7 +70157,7 @@ dir = 2; name = "AI Upload Access APC"; areastring = "/area/ai_monitored/turret_protected/ai_upload"; - pixel_y = -27 + pixel_y = -23 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -70170,7 +70189,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "cnw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/table/reinforced, @@ -70340,7 +70359,7 @@ "cnK" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -70363,7 +70382,7 @@ /turf/open/floor/wood, /area/library) "cnN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -70456,7 +70475,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "coa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -70466,14 +70485,14 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hop) "cob" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/hop) "coc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -70514,7 +70533,7 @@ /turf/open/floor/plasteel, /area/tcommsat/server) "coh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -70592,7 +70611,7 @@ /area/teleporter) "con" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -70605,7 +70624,7 @@ /turf/open/floor/plasteel, /area/teleporter) "coo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -70628,10 +70647,10 @@ /turf/open/floor/plasteel, /area/teleporter) "cop" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -70653,7 +70672,7 @@ /turf/open/floor/plasteel, /area/teleporter) "coq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -70757,7 +70776,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "cox" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -70816,7 +70835,7 @@ /area/security/courtroom) "coB" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -70911,7 +70930,7 @@ /area/maintenance/starboard) "coL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -70933,9 +70952,9 @@ dir = 8; name = "Shooting Range APC"; areastring = "/area/security/range"; - pixel_x = -26 + pixel_x = -25 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/decal/cleanable/dirt, @@ -70951,10 +70970,10 @@ /turf/open/floor/plasteel, /area/security/range) "coO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -71034,7 +71053,7 @@ /turf/open/floor/plating, /area/security/range) "coV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -71212,7 +71231,7 @@ /area/maintenance/port) "cpq" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -71227,22 +71246,22 @@ dir = 8; name = "Library APC"; areastring = "/area/library"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/library) "cps" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/wood, /area/library) "cpt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -71272,7 +71291,7 @@ /turf/open/floor/carpet, /area/library) "cpx" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/librarian, @@ -71316,7 +71335,7 @@ /area/crew_quarters/heads/hop) "cpE" = ( /obj/machinery/disposal/bin, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/trunk{ @@ -71337,7 +71356,7 @@ pixel_x = 26; pixel_y = -26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -71372,7 +71391,7 @@ /turf/open/floor/plasteel, /area/tcommsat/server) "cpK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -71463,7 +71482,7 @@ /turf/open/floor/plasteel, /area/teleporter) "cpT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -71539,7 +71558,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "cpZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral, @@ -71549,7 +71568,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "cqa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral, @@ -71563,9 +71582,9 @@ dir = 4; name = "Courtroom APC"; areastring = "/area/security/courtroom"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral, @@ -71579,7 +71598,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -71604,7 +71623,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -71633,7 +71652,7 @@ name = "Security Maintenance"; req_access_txt = "63" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -71787,7 +71806,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cqA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -71881,7 +71900,7 @@ /turf/closed/wall/r_wall, /area/maintenance/port) "cqL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -71951,7 +71970,7 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hop) "cqX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -71970,7 +71989,7 @@ /turf/closed/wall/r_wall, /area/hallway/secondary/command) "cqZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -71982,7 +72001,7 @@ /turf/closed/wall/r_wall, /area/hallway/secondary/command) "crb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -72199,7 +72218,7 @@ /turf/open/floor/plasteel/dark, /area/security/courtroom) "crq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -72287,7 +72306,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard) "crx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -72300,7 +72319,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard) "crz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -72313,7 +72332,7 @@ }, /area/maintenance/starboard) "crB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -72506,7 +72525,7 @@ /area/engine/engineering) "crS" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/cable{ @@ -72517,7 +72536,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "crT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -72665,7 +72684,7 @@ /area/maintenance/port) "csg" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -72721,7 +72740,7 @@ /turf/open/floor/plasteel/grimy, /area/library) "csm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -72781,7 +72800,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "csr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -72813,7 +72832,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "csu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -72832,9 +72851,9 @@ dir = 1; name = "Command Hall APC"; areastring = "/area/hallway/secondary/command"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -72855,7 +72874,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "csx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -72903,7 +72922,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "csB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -73136,7 +73155,7 @@ /turf/open/floor/plasteel/dark, /area/security/courtroom) "csS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/extinguisher_cabinet{ @@ -73237,7 +73256,7 @@ }, /area/maintenance/starboard) "ctb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -73260,7 +73279,7 @@ /turf/open/floor/plating, /area/maintenance/starboard) "cte" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -73268,13 +73287,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/maintenance/starboard) "ctf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -73294,10 +73313,10 @@ /turf/open/floor/plasteel, /area/maintenance/starboard) "ctg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -73460,7 +73479,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ctw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -73620,13 +73639,13 @@ /turf/open/floor/plasteel/grimy, /area/library) "ctP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73648,7 +73667,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "ctQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -73659,7 +73678,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "ctR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -73678,7 +73697,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73690,10 +73709,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -73705,7 +73724,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73721,7 +73740,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73737,7 +73756,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73754,10 +73773,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -73770,7 +73789,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -73780,7 +73799,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "ctZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73793,13 +73812,13 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cua" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73811,7 +73830,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cub" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73824,7 +73843,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cuc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/electricshock{ @@ -73834,7 +73853,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -73843,7 +73862,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cud" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73858,7 +73877,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cue" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair/comfy/black, @@ -73869,13 +73888,13 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cuf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/item/beacon, @@ -73888,7 +73907,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cug" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair/comfy/black, @@ -73902,7 +73921,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cuh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/table/wood, @@ -73916,7 +73935,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cui" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/electricshock{ @@ -73931,7 +73950,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cuj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73942,13 +73961,13 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cuk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73958,7 +73977,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cul" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73968,7 +73987,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cum" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -73981,7 +74000,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cun" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -73991,10 +74010,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cuo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -74005,7 +74024,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cup" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -74019,7 +74038,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cuq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -74031,7 +74050,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cur" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -74042,7 +74061,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cus" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -74054,10 +74073,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cut" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -74089,7 +74108,7 @@ /turf/open/floor/plating, /area/security/courtroom) "cuw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -74183,7 +74202,7 @@ /area/maintenance/starboard) "cuE" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -74207,7 +74226,7 @@ dir = 2; name = "Starboard Maintenance APC"; areastring = "/area/maintenance/starboard"; - pixel_y = -26 + pixel_y = -23 }, /obj/structure/cable/white, /turf/open/floor/plating, @@ -74371,7 +74390,7 @@ /area/engine/engineering) "cuX" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -74527,7 +74546,7 @@ /turf/closed/wall/r_wall, /area/ai_monitored/storage/eva) "cvp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -74605,7 +74624,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cvv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -74656,7 +74675,7 @@ /turf/closed/wall/r_wall, /area/gateway) "cvB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -74858,7 +74877,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/locker) "cvR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75021,7 +75040,7 @@ /area/crew_quarters/locker) "cwb" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -75039,7 +75058,6 @@ /turf/open/floor/plating, /area/maintenance/starboard) "cwd" = ( -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -75140,7 +75158,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cwn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/status_display/evac{ @@ -75157,7 +75175,7 @@ /area/engine/storage) "cwp" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -75305,7 +75323,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cwD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -75326,9 +75344,9 @@ dir = 1; name = "E.V.A. Storage APC"; areastring = "/area/ai_monitored/storage/eva"; - pixel_y = 26 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line{ @@ -75378,20 +75396,20 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/storage/eva) "cwJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/hallway/secondary/command) "cwK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -75401,7 +75419,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cwL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/table/wood, @@ -75410,7 +75428,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cwM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair/comfy/black{ @@ -75421,10 +75439,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cwN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/landmark/event_spawn, @@ -75432,7 +75450,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cwO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair/comfy/black{ @@ -75442,7 +75460,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cwP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/twohanded/required/kirbyplants{ @@ -75452,7 +75470,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cwQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -75460,10 +75478,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cwR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -75476,14 +75494,14 @@ /turf/open/floor/plasteel, /area/gateway) "cwT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc/highcap/ten_k{ dir = 1; name = "Gateway APC"; areastring = "/area/gateway"; - pixel_y = 28 + pixel_y = 23 }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -75491,7 +75509,7 @@ /turf/open/floor/plasteel, /area/gateway) "cwU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -75666,7 +75684,7 @@ /turf/open/floor/plating, /area/crew_quarters/locker) "cxj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -75799,7 +75817,7 @@ /area/crew_quarters/locker) "cxs" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75812,7 +75830,7 @@ /area/maintenance/starboard) "cxt" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75832,7 +75850,7 @@ }, /area/maintenance/starboard) "cxu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75850,7 +75868,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75868,7 +75886,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard) "cxw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -75883,7 +75901,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "cxx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -75980,7 +75998,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cxH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/airalarm{ @@ -76052,14 +76070,14 @@ /turf/open/floor/plasteel, /area/engine/storage) "cxN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/port) "cxO" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -76067,7 +76085,7 @@ "cxP" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -76076,14 +76094,14 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cxQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port) "cxR" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral, @@ -76093,20 +76111,20 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cxS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/port) "cxT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -76132,14 +76150,14 @@ /turf/open/floor/plasteel/grimy, /area/library) "cxW" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, /turf/open/floor/plasteel/grimy, /area/library) "cxX" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -76305,7 +76323,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cyk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -76316,7 +76334,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cyl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -76326,17 +76344,17 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cym" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cyn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76346,7 +76364,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cyo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -76357,7 +76375,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cyp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -76367,7 +76385,7 @@ /area/ai_monitored/storage/eva) "cyq" = ( /obj/machinery/cell_charger, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/table/reinforced, @@ -76385,14 +76403,14 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/storage/eva) "cyr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/ai_monitored/storage/eva) "cys" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -76424,7 +76442,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/command) "cyx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -76432,7 +76450,7 @@ /area/gateway) "cyy" = ( /obj/structure/closet/secure_closet/medical1, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -76440,10 +76458,10 @@ /turf/open/floor/plasteel, /area/gateway) "cyz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -76453,10 +76471,10 @@ /turf/open/floor/plasteel, /area/gateway) "cyA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -76484,7 +76502,7 @@ /turf/open/floor/plasteel, /area/gateway) "cyD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -76659,7 +76677,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/locker) "cyP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -76868,7 +76886,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "czh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -77032,7 +77050,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "czu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -77090,7 +77108,7 @@ /turf/open/floor/plasteel, /area/engine/storage) "czz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -77101,7 +77119,7 @@ /area/maintenance/port) "czB" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -77144,7 +77162,7 @@ /turf/open/floor/plasteel/dark, /area/library) "czD" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/structure/disposalpipe/segment{ @@ -77172,7 +77190,7 @@ /turf/open/floor/carpet, /area/library) "czG" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/structure/disposalpipe/segment{ @@ -77378,7 +77396,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/storage/eva) "czY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -77392,7 +77410,7 @@ /turf/closed/wall/r_wall, /area/bridge/showroom/corporate) "cAa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -77430,10 +77448,10 @@ /turf/open/floor/plasteel, /area/gateway) "cAe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -77453,7 +77471,7 @@ /turf/open/floor/plasteel, /area/gateway) "cAf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -77464,7 +77482,7 @@ /area/gateway) "cAg" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/clipboard, @@ -77477,7 +77495,7 @@ /area/gateway) "cAh" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -77503,7 +77521,7 @@ /area/gateway) "cAj" = ( /obj/machinery/gateway/centerstation, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/decal/cleanable/dirt, @@ -77564,7 +77582,7 @@ dir = 4; pixel_x = -24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -77641,7 +77659,7 @@ /area/crew_quarters/locker) "cAt" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -77658,7 +77676,7 @@ /area/crew_quarters/locker) "cAu" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -77674,14 +77692,14 @@ /turf/open/floor/plasteel, /area/crew_quarters/locker) "cAv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "Lockerroom APC"; areastring = "/area/crew_quarters/locker"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/tile/neutral, @@ -77716,7 +77734,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "cAz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -77877,7 +77895,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cAO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -77890,7 +77908,7 @@ /area/engine/engineering) "cAP" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -77969,7 +77987,7 @@ /area/engine/storage) "cAV" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -78025,7 +78043,7 @@ /turf/open/floor/plasteel/dark, /area/library) "cBb" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/grimy, @@ -78041,7 +78059,7 @@ /turf/open/floor/carpet, /area/library) "cBe" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/grimy, @@ -78145,7 +78163,7 @@ /turf/closed/wall, /area/ai_monitored/storage/eva) "cBo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/window/reinforced, @@ -78164,14 +78182,14 @@ /turf/open/floor/wood, /area/bridge/showroom/corporate) "cBq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/wood, /area/bridge/showroom/corporate) "cBr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -78232,7 +78250,7 @@ /turf/open/floor/wood, /area/bridge/showroom/corporate) "cBw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/window/reinforced, @@ -78276,7 +78294,7 @@ /turf/open/floor/plasteel, /area/gateway) "cBz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -78337,10 +78355,10 @@ /area/gateway) "cBE" = ( /obj/machinery/gateway, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -78465,14 +78483,14 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cBN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Primary Restroom APC"; areastring = "/area/crew_quarters/toilet/restrooms"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 @@ -78533,10 +78551,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cBS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -78550,7 +78568,7 @@ }, /area/crew_quarters/locker) "cBT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -78570,7 +78588,7 @@ /area/crew_quarters/locker) "cBU" = ( /obj/structure/chair/stool, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -78592,7 +78610,7 @@ /obj/structure/table, /obj/item/folder, /obj/item/pen, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -78613,7 +78631,7 @@ "cBW" = ( /obj/structure/table, /obj/item/paicard, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -78633,7 +78651,7 @@ /area/crew_quarters/locker) "cBX" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/toy/gun, @@ -78654,7 +78672,7 @@ /area/crew_quarters/locker) "cBY" = ( /obj/structure/chair/stool, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/start/assistant, @@ -78662,7 +78680,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -78818,7 +78836,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "cCl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -78927,10 +78945,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cCv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -78945,13 +78963,13 @@ name = "Engineering Storage"; req_access_txt = "32" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -78964,7 +78982,7 @@ /area/engine/storage) "cCx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/delivery, @@ -79021,7 +79039,7 @@ /area/engine/storage) "cCC" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, @@ -79052,7 +79070,7 @@ /area/maintenance/port) "cCG" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -79084,14 +79102,14 @@ /turf/open/floor/plasteel/dark, /area/library) "cCI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/grimy, /area/library) "cCJ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -79199,25 +79217,25 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "cCU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/power/apc{ dir = 8; name = "Corporate Lounge APC"; areastring = "/area/bridge/showroom/corporate"; - pixel_x = -26 + pixel_x = -25 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/wood, /area/bridge/showroom/corporate) "cCV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -79226,13 +79244,13 @@ /turf/open/floor/wood, /area/bridge/showroom/corporate) "cCW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -79241,10 +79259,10 @@ /turf/open/floor/wood, /area/bridge/showroom/corporate) "cCX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair/comfy/brown{ @@ -79254,10 +79272,10 @@ /area/bridge/showroom/corporate) "cCY" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/reagent_containers/food/drinks/bottle/whiskey, @@ -79265,10 +79283,10 @@ /area/bridge/showroom/corporate) "cCZ" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/storage/fancy/donut_box, @@ -79276,20 +79294,20 @@ /area/bridge/showroom/corporate) "cDa" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/paper_bin, /turf/open/floor/carpet, /area/bridge/showroom/corporate) "cDb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair/comfy/black{ @@ -79298,7 +79316,7 @@ /turf/open/floor/carpet, /area/bridge/showroom/corporate) "cDc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -79307,7 +79325,7 @@ /turf/open/floor/wood, /area/bridge/showroom/corporate) "cDd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -79316,10 +79334,10 @@ /turf/open/floor/wood, /area/bridge/showroom/corporate) "cDe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/airalarm{ @@ -79409,7 +79427,7 @@ /turf/open/floor/plasteel, /area/gateway) "cDg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -79446,7 +79464,7 @@ /turf/open/floor/plasteel, /area/gateway) "cDj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -79465,7 +79483,7 @@ /turf/open/floor/plasteel, /area/gateway) "cDl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -79546,7 +79564,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cDt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -79616,7 +79634,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cDy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -79627,7 +79645,7 @@ }, /area/crew_quarters/locker) "cDz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -79692,7 +79710,7 @@ /turf/open/floor/wood, /area/crew_quarters/dorms) "cDF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/wood, @@ -79893,7 +79911,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cEc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -79907,7 +79925,7 @@ /area/engine/engineering) "cEd" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -79918,7 +79936,7 @@ /area/engine/storage) "cEe" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -79928,7 +79946,7 @@ /turf/open/floor/plasteel, /area/engine/storage) "cEf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -79947,7 +79965,7 @@ /turf/open/floor/plasteel, /area/engine/storage) "cEg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -79966,7 +79984,7 @@ /turf/open/floor/plasteel, /area/engine/storage) "cEh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -79992,9 +80010,9 @@ dir = 4; name = "Engineering Storage APC"; areastring = "/area/engine/storage"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/delivery, @@ -80071,7 +80089,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cEo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -80329,7 +80347,7 @@ /area/ai_monitored/storage/eva) "cEK" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/clipboard, @@ -80347,7 +80365,7 @@ /area/bridge/showroom/corporate) "cEN" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/folder/blue, @@ -80356,7 +80374,7 @@ /area/bridge/showroom/corporate) "cEO" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/clothing/mask/cigarette/cigar/cohiba{ @@ -80370,7 +80388,7 @@ /area/bridge/showroom/corporate) "cEP" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/lighter, @@ -80384,7 +80402,7 @@ /area/bridge/showroom/corporate) "cER" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/secure/briefcase, @@ -80414,7 +80432,7 @@ /turf/open/floor/plasteel, /area/gateway) "cEU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80424,7 +80442,7 @@ /turf/open/floor/plasteel, /area/gateway) "cEV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80435,7 +80453,7 @@ /turf/open/floor/plasteel, /area/gateway) "cEW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80447,13 +80465,13 @@ /turf/open/floor/plasteel, /area/gateway) "cEX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/command/glass{ @@ -80473,7 +80491,7 @@ /turf/open/floor/plasteel, /area/gateway) "cEY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80486,7 +80504,7 @@ /area/gateway) "cEZ" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80562,7 +80580,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cFg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80578,10 +80596,10 @@ "cFh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80595,7 +80613,7 @@ }, /area/crew_quarters/toilet/restrooms) "cFi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80612,7 +80630,7 @@ /obj/machinery/status_display/evac{ pixel_y = -32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80626,7 +80644,7 @@ }, /area/crew_quarters/toilet/restrooms) "cFk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -80638,7 +80656,7 @@ /obj/machinery/status_display/evac{ pixel_y = -32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80648,7 +80666,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cFm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80659,7 +80677,7 @@ /area/crew_quarters/toilet/restrooms) "cFn" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -80677,7 +80695,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cFo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -80725,7 +80743,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/locker) "cFs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -80802,7 +80820,7 @@ /turf/open/floor/carpet, /area/crew_quarters/dorms) "cFB" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/carpet, @@ -80851,14 +80869,14 @@ }, /area/holodeck/rec_center) "cFH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating/airless, /area/engine/engineering) "cFI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/grille, @@ -80868,7 +80886,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cFJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/grille, @@ -80878,7 +80896,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cFK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/grille, @@ -80888,7 +80906,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cFL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating/airless, @@ -80901,7 +80919,7 @@ name = "External Containment Access"; req_access_txt = "10; 13" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -80913,7 +80931,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cFN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -80930,7 +80948,7 @@ name = "External Containment Access"; req_access_txt = "10; 13" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -80945,7 +80963,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cFP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -80965,7 +80983,7 @@ /area/engine/engineering) "cFQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -80985,7 +81003,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cFR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -81007,13 +81025,13 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cFS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -81034,7 +81052,7 @@ "cFT" = ( /obj/effect/decal/cleanable/dirt, /obj/item/twohanded/required/kirbyplants/random, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -81095,7 +81113,7 @@ /turf/open/floor/plasteel, /area/engine/storage) "cFZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -81243,7 +81261,7 @@ /area/ai_monitored/storage/eva) "cGo" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/folder/blue, @@ -81276,7 +81294,7 @@ /turf/open/floor/plasteel/grimy, /area/bridge/showroom/corporate) "cGr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/chair/comfy/brown{ @@ -81285,14 +81303,14 @@ /turf/open/floor/plasteel/grimy, /area/bridge/showroom/corporate) "cGs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, /turf/open/floor/plasteel/grimy, /area/bridge/showroom/corporate) "cGt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/chair/comfy/black{ @@ -81322,7 +81340,7 @@ /area/bridge/showroom/corporate) "cGw" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/folder/red, @@ -81425,7 +81443,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/toilet/restrooms) "cGI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -81529,7 +81547,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/locker) "cGQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -81667,7 +81685,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cHc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/grille, @@ -81677,7 +81695,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cHd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/grille, @@ -81687,7 +81705,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cHe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/grille, @@ -81697,10 +81715,10 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cHf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/grille, @@ -81710,7 +81728,7 @@ /turf/open/floor/plating/airless, /area/engine/engineering) "cHg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/grille, @@ -81772,7 +81790,7 @@ /area/engine/engineering) "cHn" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -81784,7 +81802,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cHo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -81893,7 +81911,7 @@ /area/maintenance/port) "cHz" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -81950,7 +81968,7 @@ /turf/open/floor/plasteel, /area/vacant_room/commissary) "cHG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -82060,7 +82078,7 @@ name = "Corporate Lounge"; req_access_txt = "19" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -82166,7 +82184,7 @@ /area/crew_quarters/toilet/restrooms) "cHZ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -82212,7 +82230,7 @@ /area/crew_quarters/toilet/restrooms) "cId" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock{ @@ -82347,7 +82365,7 @@ name = "Engineering Maintenance"; req_access_txt = "10" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -82469,7 +82487,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cIJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82624,7 +82642,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -82680,7 +82698,7 @@ }, /area/crew_quarters/dorms) "cJf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -82694,7 +82712,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82711,7 +82729,7 @@ }, /area/crew_quarters/dorms) "cJh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -82723,7 +82741,7 @@ /area/crew_quarters/dorms) "cJi" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -82741,7 +82759,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -82751,7 +82769,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82763,7 +82781,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82776,10 +82794,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82794,7 +82812,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82811,7 +82829,7 @@ }, /area/crew_quarters/dorms) "cJo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82824,7 +82842,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82841,7 +82859,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -82851,7 +82869,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82864,7 +82882,7 @@ /area/crew_quarters/dorms) "cJs" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -82882,7 +82900,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cJt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -82894,10 +82912,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "cJu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -83207,7 +83225,7 @@ /area/maintenance/port) "cJQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -83225,7 +83243,7 @@ /area/maintenance/port) "cJR" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -83235,7 +83253,7 @@ /area/maintenance/port) "cJS" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -83244,7 +83262,7 @@ /turf/open/floor/plating, /area/maintenance/port) "cJT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -83254,7 +83272,7 @@ /area/maintenance/port) "cJU" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -83271,7 +83289,7 @@ }, /area/maintenance/port) "cJV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -83289,10 +83307,10 @@ /area/maintenance/port) "cJW" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/delivery, @@ -83301,10 +83319,10 @@ /area/maintenance/port) "cJX" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -83322,16 +83340,16 @@ /area/maintenance/port) "cJY" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -83341,7 +83359,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cJZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83354,7 +83372,7 @@ /area/maintenance/port) "cKa" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83367,7 +83385,7 @@ /area/maintenance/port) "cKb" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83388,10 +83406,10 @@ /area/maintenance/port) "cKc" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83404,7 +83422,7 @@ /area/maintenance/port) "cKd" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83420,10 +83438,10 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cKe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83436,7 +83454,7 @@ /area/maintenance/port) "cKf" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83451,7 +83469,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cKg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83466,7 +83484,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cKh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83480,10 +83498,10 @@ /area/maintenance/port) "cKi" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -83494,7 +83512,7 @@ /area/maintenance/port) "cKj" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83507,7 +83525,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cKk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83517,7 +83535,7 @@ /area/maintenance/port) "cKl" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83526,7 +83544,7 @@ /turf/open/floor/plating, /area/maintenance/port) "cKm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -83545,7 +83563,7 @@ "cKn" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -83566,7 +83584,7 @@ }, /area/maintenance/port) "cKo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83581,7 +83599,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cKp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -83590,16 +83608,16 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/maintenance/port) "cKq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83611,7 +83629,7 @@ /turf/open/floor/plating, /area/maintenance/port) "cKr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83628,7 +83646,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -83643,7 +83661,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cKt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -83658,10 +83676,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -83684,7 +83702,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -83696,10 +83714,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -83709,7 +83727,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -83718,7 +83736,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -83727,7 +83745,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -83741,7 +83759,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -83755,7 +83773,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -83764,7 +83782,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/plaque{ @@ -83773,7 +83791,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -83792,16 +83810,16 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/navbeacon{ @@ -83821,7 +83839,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cKF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83842,7 +83860,7 @@ req_access_txt = "12" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83860,7 +83878,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cKH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83873,7 +83891,7 @@ /area/maintenance/starboard/aft) "cKI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83917,14 +83935,14 @@ /area/maintenance/starboard/aft) "cKM" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -83935,7 +83953,7 @@ /area/maintenance/starboard/aft) "cKN" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83948,7 +83966,7 @@ /area/maintenance/starboard/aft) "cKO" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83968,7 +83986,7 @@ req_access_txt = "12" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -83986,7 +84004,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cKQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -84121,7 +84139,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "cLb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -84248,7 +84266,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "cLk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -84401,7 +84419,7 @@ /area/maintenance/port) "cLz" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -84474,7 +84492,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cLE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -84516,7 +84534,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cLH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84560,7 +84578,7 @@ /area/maintenance/port) "cLN" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84769,7 +84787,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cMh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84779,7 +84797,7 @@ /area/maintenance/starboard/aft) "cMi" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance, @@ -84799,7 +84817,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cMj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -84809,14 +84827,14 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cMk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/aft) "cMl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84835,7 +84853,7 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -84975,7 +84993,7 @@ dir = 2; name = "Dormitories APC"; areastring = "/area/crew_quarters/dorms"; - pixel_y = -26 + pixel_y = -23 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -85090,7 +85108,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "cMG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden, @@ -85216,7 +85234,7 @@ name = "Engineering Auxiliary Power"; req_access_txt = "10" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -85250,7 +85268,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -85678,7 +85696,7 @@ /area/medical/storage) "cNQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -85994,7 +86012,7 @@ /area/maintenance/department/electrical) "cOx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -86119,7 +86137,7 @@ /area/maintenance/port) "cOH" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -86132,7 +86150,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cOI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -86152,7 +86170,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "cOJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -86164,7 +86182,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cOK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/blobstart, @@ -86224,7 +86242,7 @@ /turf/closed/wall/r_wall, /area/science/research) "cOT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -86292,7 +86310,6 @@ /turf/open/floor/plasteel/white, /area/science/research) "cPb" = ( -/obj/item/twohanded/required/kirbyplants/random, /obj/machinery/light{ dir = 1 }, @@ -86302,6 +86319,7 @@ /obj/effect/turf_decal/tile/purple{ dir = 4 }, +/obj/machinery/vending/modularpc, /turf/open/floor/plasteel/white, /area/science/research) "cPc" = ( @@ -86325,7 +86343,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "cPe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -86530,14 +86548,14 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cPD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Medbay Storage APC"; areastring = "/area/medical/storage"; - pixel_x = -26 + pixel_x = -25 }, /obj/machinery/camera{ c_tag = "Medbay - Storage"; @@ -86553,10 +86571,10 @@ /turf/open/floor/plasteel, /area/medical/storage) "cPE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -86571,7 +86589,7 @@ /turf/open/floor/plasteel/white, /area/medical/storage) "cPF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -86586,7 +86604,7 @@ /turf/open/floor/plasteel/white, /area/medical/storage) "cPG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -86606,7 +86624,7 @@ }, /area/medical/storage) "cPH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -86630,10 +86648,10 @@ /area/maintenance/starboard/aft) "cPI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -86648,7 +86666,7 @@ /area/maintenance/starboard/aft) "cPJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -86657,7 +86675,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cPK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -86666,7 +86684,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cPL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -86679,7 +86697,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cPM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -86698,7 +86716,7 @@ req_access_txt = "12" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -86716,7 +86734,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cPO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -86954,10 +86972,10 @@ /turf/open/floor/plasteel, /area/maintenance/department/electrical) "cQo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -86968,7 +86986,7 @@ /area/maintenance/department/electrical) "cQp" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -86979,7 +86997,7 @@ /area/maintenance/department/electrical) "cQq" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -86989,7 +87007,7 @@ /area/maintenance/department/electrical) "cQr" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -86999,20 +87017,20 @@ /obj/structure/table/reinforced, /obj/item/stock_parts/cell/high, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "Auxiliary Power APC"; areastring = "/area/maintenance/department/electrical"; - pixel_x = 26 + pixel_x = 24 }, /turf/open/floor/plating, /area/maintenance/department/electrical) "cQt" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -87026,7 +87044,7 @@ /area/maintenance/port) "cQu" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/research{ @@ -87127,7 +87145,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "cQB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -87496,7 +87514,7 @@ /turf/open/floor/plasteel, /area/medical/storage) "cRg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -87607,7 +87625,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cRq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -87641,7 +87659,7 @@ /turf/open/floor/carpet, /area/crew_quarters/dorms) "cRu" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/newscaster{ @@ -87772,7 +87790,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -87833,7 +87851,7 @@ /turf/open/floor/plating, /area/maintenance/department/electrical) "cRO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -87871,7 +87889,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "cRR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/stripes/line{ @@ -87881,20 +87899,20 @@ /turf/open/floor/plating, /area/science/xenobiology) "cRS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/science/xenobiology) "cRT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/status_display/evac{ pixel_y = 32 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/camera{ @@ -87911,7 +87929,7 @@ pixel_x = 26; pixel_y = 26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -87933,7 +87951,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cRW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -87944,10 +87962,10 @@ /turf/open/floor/plating, /area/science/xenobiology) "cRX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -87972,7 +87990,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "cRY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -87984,7 +88002,7 @@ /turf/open/floor/plating, /area/science/xenobiology) "cRZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -87995,10 +88013,10 @@ /turf/open/floor/plating, /area/science/xenobiology) "cSa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -88023,7 +88041,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "cSb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -88035,7 +88053,7 @@ /turf/open/floor/plating, /area/science/xenobiology) "cSc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -88046,10 +88064,10 @@ /turf/open/floor/plating, /area/science/xenobiology) "cSd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -88074,7 +88092,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "cSe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -88086,7 +88104,7 @@ /turf/open/floor/plating, /area/science/xenobiology) "cSf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -88094,10 +88112,10 @@ /turf/open/floor/plating, /area/science/xenobiology) "cSg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/research/glass{ @@ -88113,7 +88131,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cSh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -88127,7 +88145,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "cSj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -88150,7 +88168,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "cSl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -88681,7 +88699,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cSZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -88698,7 +88716,7 @@ /turf/open/floor/wood, /area/crew_quarters/dorms) "cTb" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/crew_quarters/dorms) "cTc" = ( @@ -88894,7 +88912,7 @@ /area/maintenance/department/electrical) "cTu" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -88933,7 +88951,7 @@ /turf/open/floor/plasteel, /area/maintenance/department/electrical) "cTy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -88950,7 +88968,7 @@ /turf/closed/wall/r_wall, /area/science/xenobiology) "cTB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -88970,7 +88988,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cTD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -89023,7 +89041,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cTI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window/brigdoor{ @@ -89122,7 +89140,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cTS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -89165,7 +89183,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "cTX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -89184,7 +89202,7 @@ /turf/open/floor/plasteel, /area/science/research) "cTY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -89198,13 +89216,13 @@ /area/science/research) "cTZ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/airlock/security{ @@ -89223,7 +89241,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "cUa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -89238,13 +89256,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "cUb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/neutral{ @@ -89260,7 +89278,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "cUc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/computer/security{ @@ -89280,10 +89298,10 @@ /area/security/checkpoint/science/research) "cUd" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -89644,7 +89662,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "cUG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -89690,7 +89708,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "cUK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -90230,7 +90248,7 @@ /area/maintenance/port) "cVC" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -90256,7 +90274,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cVE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -90310,7 +90328,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cVJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -90334,7 +90352,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cVL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -90377,7 +90395,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cVO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -90404,7 +90422,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cVQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -90508,7 +90526,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "cVY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -90683,11 +90701,11 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "cWo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -90697,7 +90715,7 @@ /obj/machinery/computer/security{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -90713,13 +90731,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "cWq" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -90735,7 +90753,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "cWr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -90746,10 +90764,10 @@ /area/security/checkpoint/medical) "cWs" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/security{ @@ -90790,7 +90808,7 @@ /turf/open/floor/plasteel, /area/medical/storage) "cWv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue, @@ -90866,7 +90884,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "cWA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -90886,7 +90904,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cWC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -90894,7 +90912,7 @@ dir = 8; name = "Recreation Area APC"; areastring = "/area/crew_quarters/fitness/recreation"; - pixel_x = -26 + pixel_x = -25 }, /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -90902,10 +90920,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "cWD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -91052,7 +91070,7 @@ /area/maintenance/department/electrical) "cWU" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, @@ -91088,10 +91106,10 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "cWW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/door/window/brigdoor{ @@ -91116,7 +91134,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "cWX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/window/brigdoor{ @@ -91128,13 +91146,13 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cWY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -91143,7 +91161,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cWZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -91161,7 +91179,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cXa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -91170,7 +91188,7 @@ /area/science/xenobiology) "cXb" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -91182,7 +91200,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cXc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/shower{ @@ -91196,7 +91214,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cXd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -91208,13 +91226,13 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cXe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -91226,7 +91244,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cXf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -91239,7 +91257,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cXg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/shower{ @@ -91255,13 +91273,13 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cXh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -91270,7 +91288,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cXi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple{ @@ -91282,10 +91300,10 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cXj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/start/scientist, @@ -91340,7 +91358,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "cXo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door_timer{ @@ -91353,7 +91371,7 @@ dir = 8; name = "Security Post - Science APC"; areastring = "/area/security/checkpoint/science/research"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -91377,10 +91395,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "cXp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/red, @@ -91656,7 +91674,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "cXT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -91721,7 +91739,7 @@ name = "Medbay Storage"; req_access_txt = "5" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -92156,7 +92174,7 @@ /area/science/xenobiology) "cYL" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -92225,7 +92243,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cYR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92279,7 +92297,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cYV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92295,7 +92313,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "cYW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92325,7 +92343,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "cYY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92399,20 +92417,20 @@ /turf/open/floor/plasteel, /area/science/research) "cZe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/science/research) "cZf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window/brigdoor{ @@ -92433,7 +92451,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "cZg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -92639,7 +92657,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "cZC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door_timer{ @@ -92652,7 +92670,7 @@ dir = 8; name = "Security Post - Medical APC"; areastring = "/area/security/checkpoint/medical"; - pixel_x = -26 + pixel_x = -25 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 @@ -92671,10 +92689,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "cZD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -92748,7 +92766,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "cZI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -92838,7 +92856,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "cZQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -92850,10 +92868,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cZR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92866,7 +92884,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cZS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -92884,7 +92902,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cZT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92901,7 +92919,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cZU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -92914,7 +92932,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cZV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -92931,7 +92949,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cZW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92947,7 +92965,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "cZX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -92959,7 +92977,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cZY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -92972,7 +92990,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "cZZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -92991,7 +93009,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -93009,7 +93027,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dab" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -93025,7 +93043,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "dac" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -93217,7 +93235,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "das" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -93264,7 +93282,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "daw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window/brigdoor{ @@ -93349,7 +93367,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "daD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/scientist, @@ -93377,17 +93395,17 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "daF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/science/research) "daG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair{ @@ -93405,13 +93423,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "daH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/red{ @@ -93423,7 +93441,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "daI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/closet/secure_closet/brig{ @@ -93440,7 +93458,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "daJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -93670,14 +93688,14 @@ /turf/open/floor/plasteel, /area/medical/chemistry) "dbg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Chemistry Lab APC"; areastring = "/area/medical/chemistry"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/turf_decal/tile/yellow{ dir = 4 @@ -93738,20 +93756,20 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dbn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/medical) "dbo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/window/brigdoor{ @@ -93772,7 +93790,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "dbp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -93799,7 +93817,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "dbs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -93922,7 +93940,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dbB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -94165,9 +94183,9 @@ dir = 1; name = "Port Maintenance APC"; areastring = "/area/maintenance/port"; - pixel_y = 28 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -94177,7 +94195,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -94194,7 +94212,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -94213,7 +94231,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -94224,7 +94242,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -94258,7 +94276,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "dcc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/stripes/line{ @@ -94268,7 +94286,7 @@ /turf/open/floor/plating, /area/science/xenobiology) "dcd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/airalarm{ @@ -94300,7 +94318,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "dcg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -94312,10 +94330,10 @@ /turf/open/floor/plating, /area/science/xenobiology) "dch" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/window/brigdoor{ @@ -94340,7 +94358,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "dci" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -94351,7 +94369,7 @@ /turf/open/floor/plating, /area/science/xenobiology) "dcj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -94363,10 +94381,10 @@ /turf/open/floor/plating, /area/science/xenobiology) "dck" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/window/brigdoor{ @@ -94391,7 +94409,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "dcl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -94402,7 +94420,7 @@ /turf/open/floor/plating, /area/science/xenobiology) "dcm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -94414,10 +94432,10 @@ /turf/open/floor/plating, /area/science/xenobiology) "dcn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/poddoor/preopen{ @@ -94442,7 +94460,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "dco" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -94471,10 +94489,10 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "dcr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -94488,7 +94506,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "dcs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -94501,7 +94519,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "dct" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -94513,7 +94531,7 @@ /obj/structure/table/reinforced, /obj/item/folder/white, /obj/item/pen, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/light{ @@ -94523,7 +94541,7 @@ dir = 4; name = "Xenobiology Lab APC"; areastring = "/area/science/xenobiology"; - pixel_x = 26 + pixel_x = 24 }, /obj/effect/turf_decal/stripes/line, /obj/item/storage/box/monkeycubes, @@ -94543,7 +94561,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/science/research) "dcw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red, @@ -94773,7 +94791,7 @@ /turf/open/floor/plasteel, /area/medical/chemistry) "dcS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -94877,17 +94895,17 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dda" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/medical) "ddb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/chair{ @@ -94905,10 +94923,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "ddc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/red{ @@ -94934,7 +94952,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "dde" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -95041,12 +95059,13 @@ dir = 4; pixel_x = -23 }, -/obj/machinery/sleeper{ - dir = 4 - }, /obj/effect/turf_decal/stripes/line{ dir = 6 }, +/obj/item/stack/rods/ten, +/obj/item/stock_parts/capacitor, +/obj/item/circuitboard/machine/stasis, +/obj/item/stock_parts/manipulator, /turf/open/floor/plasteel, /area/medical/abandoned) "ddn" = ( @@ -95269,13 +95288,13 @@ /area/maintenance/port) "ddL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/delivery, @@ -95283,7 +95302,7 @@ /area/maintenance/port) "ddM" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -95294,7 +95313,7 @@ /area/maintenance/port) "ddN" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -95307,10 +95326,10 @@ /turf/open/floor/plasteel, /area/maintenance/port) "ddO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -95396,10 +95415,10 @@ /area/science/research) "ddX" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -95695,10 +95714,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "dez" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/red, @@ -95708,7 +95727,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "deA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -95721,27 +95740,25 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "deB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/medical) "deC" = ( -/obj/machinery/sleeper{ - dir = 4 - }, /obj/effect/turf_decal/stripes/end{ dir = 4 }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/medbay/central) "deD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -95757,15 +95774,13 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "deF" = ( -/obj/machinery/sleeper{ - dir = 8 - }, /obj/effect/turf_decal/stripes/end{ dir = 8 }, /obj/machinery/light{ dir = 4 }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/medbay/central) "deG" = ( @@ -95821,7 +95836,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "deM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -95906,7 +95921,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/barricade/wooden, @@ -96002,7 +96017,7 @@ /turf/closed/wall/r_wall, /area/science/xenobiology) "dfd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -96028,17 +96043,17 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/science/xenobiology) "dff" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -96153,14 +96168,14 @@ /obj/item/stack/sheet/glass, /obj/item/stack/sheet/glass, /obj/item/stack/sheet/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Research and Development Lab APC"; areastring = "/area/science/lab"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/effect/turf_decal/stripes/line{ @@ -96169,7 +96184,7 @@ /turf/open/floor/plasteel, /area/science/lab) "dfr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -96186,7 +96201,7 @@ /turf/open/floor/plasteel, /area/science/lab) "dfs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple{ @@ -96201,7 +96216,7 @@ /obj/machinery/holopad{ pixel_x = -16 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/purple, @@ -96337,13 +96352,13 @@ /area/security/checkpoint/medical) "dfE" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/door/airlock/security/glass{ @@ -96387,7 +96402,7 @@ /area/medical/medbay/central) "dfI" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -96434,10 +96449,10 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dfN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -96457,7 +96472,7 @@ req_access_txt = "12" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -96477,7 +96492,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/blue{ @@ -96594,7 +96609,7 @@ /area/crew_quarters/abandoned_gambling_den) "dgd" = ( /obj/structure/table/wood, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/item/clothing/gloves/color/fyellow, @@ -96603,7 +96618,7 @@ dir = 1; name = "Abandoned Gambling Den APC"; areastring = "/area/crew_quarters/abandoned_gambling_den"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) @@ -96642,7 +96657,7 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dgi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -96669,7 +96684,7 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dgl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -96680,7 +96695,7 @@ "dgm" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -96693,7 +96708,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "dgn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -96707,7 +96722,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "dgo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -96720,7 +96735,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "dgp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -96731,7 +96746,7 @@ "dgq" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -97029,7 +97044,7 @@ /turf/open/floor/plasteel/white, /area/science/lab) "dgN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/table, @@ -97176,7 +97191,7 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "dgZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97308,7 +97323,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dhk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -97411,7 +97426,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dhu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -97426,7 +97441,7 @@ dir = 4; name = "emergency shower" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -97549,10 +97564,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/abandoned_gambling_den) "dhI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97561,7 +97576,7 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dhJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97580,7 +97595,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/abandoned_gambling_den) "dhK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -97600,7 +97615,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/abandoned_gambling_den) "dhL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -97621,10 +97636,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/abandoned_gambling_den) "dhM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -97695,7 +97710,7 @@ /area/science/research/abandoned) "dhT" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -97938,7 +97953,7 @@ /turf/open/floor/plasteel/white, /area/science/lab) "dik" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/scientist, @@ -98070,7 +98085,7 @@ /turf/closed/wall, /area/medical/chemistry) "div" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/yellow{ @@ -98082,7 +98097,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "diw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -98099,7 +98114,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "dix" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -98115,7 +98130,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -98131,7 +98146,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, @@ -98148,7 +98163,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -98164,7 +98179,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "diB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -98181,10 +98196,10 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "diC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/beacon, @@ -98202,7 +98217,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "diD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -98219,7 +98234,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "diE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -98232,10 +98247,10 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -98251,7 +98266,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -98270,7 +98285,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -98287,10 +98302,10 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -98306,7 +98321,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -98323,10 +98338,10 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/blue{ @@ -98342,7 +98357,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -98361,7 +98376,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -98378,7 +98393,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "diN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue, @@ -98388,7 +98403,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "diO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -98404,7 +98419,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "diP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -98413,10 +98428,10 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "diQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -98435,7 +98450,7 @@ /obj/structure/mirror{ pixel_x = -28 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -98543,7 +98558,7 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dje" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -98585,7 +98600,7 @@ /area/crew_quarters/abandoned_gambling_den) "djj" = ( /obj/structure/table/wood/poker, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/wallet/random, @@ -98665,7 +98680,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "djx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -99056,7 +99071,7 @@ /turf/open/floor/plasteel, /area/science/lab) "dkb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -99178,7 +99193,7 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "dkk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -99189,7 +99204,7 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "dkl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -99212,7 +99227,7 @@ name = "Chemistry Lab"; req_access_txt = "5; 33" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -99227,7 +99242,7 @@ /turf/open/floor/plasteel, /area/medical/chemistry) "dkn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -99281,7 +99296,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dks" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -99354,7 +99369,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dkz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -99444,7 +99459,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dkH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -99461,7 +99476,7 @@ name = "Abandoned Medical Lab APC"; areastring = "/area/medical/abandoned"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/plating, /area/medical/abandoned) @@ -99589,7 +99604,7 @@ /area/maintenance/starboard/aft) "dkS" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/wood, @@ -99611,22 +99626,22 @@ }, /area/crew_quarters/abandoned_gambling_den) "dkW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/hollow/reinforced/end{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dkX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/window/northright, @@ -99644,22 +99659,22 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/abandoned_gambling_den) "dkY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/hollow/reinforced/directional{ dir = 9 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dkZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/hollow/reinforced/directional{ @@ -99668,10 +99683,10 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dla" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable/white, @@ -99744,7 +99759,7 @@ /turf/closed/wall, /area/maintenance/port) "dlm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/landmark/event_spawn, @@ -99766,7 +99781,7 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/science) "dln" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -99838,7 +99853,7 @@ "dlt" = ( /obj/effect/turf_decal/bot, /obj/machinery/power/apc/auto_name/west, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -99854,7 +99869,7 @@ /turf/open/floor/plasteel/dark, /area/science/nanite) "dlu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -99933,7 +99948,7 @@ /turf/closed/wall/r_wall, /area/crew_quarters/heads/hor) "dlF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -99949,7 +99964,7 @@ /turf/closed/wall/r_wall, /area/crew_quarters/heads/hor) "dlH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -99960,10 +99975,10 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hor) "dlI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -99974,10 +99989,10 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hor) "dlJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -100018,7 +100033,7 @@ name = "Research and Development Lab"; req_one_access_txt = "7;29" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -100097,7 +100112,7 @@ /turf/closed/wall, /area/medical/genetics/cloning) "dlY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -100111,7 +100126,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "dlZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -100170,7 +100185,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dmg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -100203,7 +100218,7 @@ /area/crew_quarters/abandoned_gambling_den) "dmm" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/hollow/reinforced/directional{ @@ -100241,7 +100256,7 @@ /area/crew_quarters/abandoned_gambling_den) "dmp" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/hollow/reinforced/directional{ @@ -100272,7 +100287,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -100369,7 +100384,7 @@ /turf/open/floor/plasteel/dark, /area/science/nanite) "dmH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -100473,7 +100488,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hor) "dmT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -100506,7 +100521,7 @@ /area/crew_quarters/heads/hor) "dmX" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -100540,7 +100555,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dna" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line{ @@ -100549,7 +100564,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dnb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -100558,11 +100573,11 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dnc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/stripes/line{ @@ -100571,7 +100586,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dnd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -100581,14 +100596,14 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dne" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc/highcap/ten_k{ dir = 1; name = "Mech Bay APC"; areastring = "/area/science/robotics/mechbay"; - pixel_y = 28 + pixel_y = 23 }, /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -100719,14 +100734,14 @@ /area/medical/genetics/cloning) "dnr" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc/highcap/five_k{ dir = 1; name = "Cloning Lab APC"; areastring = "/area/medical/genetics/cloning"; - pixel_y = 24 + pixel_y = 23 }, /obj/item/folder/white, /obj/item/book/manual/wiki/medical_cloning, @@ -100743,7 +100758,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dnt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -100823,7 +100838,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dnA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -100957,7 +100972,7 @@ /turf/open/floor/plasteel/dark, /area/medical/surgery) "dnL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -100965,7 +100980,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dnM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -101216,10 +101231,10 @@ /turf/open/floor/plasteel, /area/maintenance/department/science) "dor" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -101253,7 +101268,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -101268,10 +101283,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -101294,7 +101309,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -101317,7 +101332,7 @@ dir = 4 }, /obj/structure/chair/office/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -101337,7 +101352,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -101367,7 +101382,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -101389,7 +101404,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -101414,7 +101429,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/stripes/corner{ @@ -101537,7 +101552,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hor) "doN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -101580,7 +101595,7 @@ /area/crew_quarters/heads/hor) "doR" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -101646,7 +101661,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "doX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -101866,7 +101881,7 @@ /turf/open/floor/plasteel, /area/medical/genetics/cloning) "dpr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -101887,7 +101902,7 @@ /obj/effect/mapping_helpers/airlock/unres{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -101902,7 +101917,7 @@ /turf/open/floor/plasteel, /area/medical/genetics/cloning) "dpt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -101915,10 +101930,10 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dpu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -101976,7 +101991,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "dpz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -102044,7 +102059,7 @@ /turf/open/floor/plasteel/dark, /area/medical/surgery) "dpE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -102214,14 +102229,14 @@ /turf/open/floor/plating, /area/science/research/abandoned) "dqa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel/white, /area/science/misc_lab/range) "dqb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -102233,7 +102248,7 @@ /turf/open/floor/plasteel/white, /area/science/misc_lab/range) "dqc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -102245,7 +102260,7 @@ /turf/open/floor/plasteel/white, /area/science/misc_lab/range) "dqd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -102274,13 +102289,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/science/misc_lab/range) "dqf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -102299,7 +102314,7 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/science) "dqg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -102314,10 +102329,10 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/science) "dqh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -102562,7 +102577,7 @@ /turf/open/floor/plasteel, /area/science/research) "dqC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/delivery, @@ -102572,10 +102587,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hor) "dqD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -102587,10 +102602,10 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dqE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -102608,7 +102623,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dqF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -102624,7 +102639,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dqG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -102638,10 +102653,10 @@ /area/crew_quarters/heads/hor) "dqH" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/airlock/command{ @@ -102670,7 +102685,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple{ @@ -102685,7 +102700,7 @@ /obj/structure/disposalpipe/junction/flip{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/purple{ @@ -102717,7 +102732,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dqM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -102972,7 +102987,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dri" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -103098,7 +103113,7 @@ /area/crew_quarters/abandoned_gambling_den) "drw" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/hollow/reinforced/directional{ @@ -103142,7 +103157,7 @@ dir = 2; name = "Testing Range APC"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/table/reinforced, /obj/machinery/recharger, @@ -103184,7 +103199,7 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/science) "drH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -103339,7 +103354,7 @@ dir = 8; name = "Research Director's Office APC"; areastring = "/area/crew_quarters/heads/hor"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable/white, /obj/structure/disposalpipe/segment, @@ -103356,7 +103371,7 @@ /area/crew_quarters/heads/hor) "drZ" = ( /obj/structure/chair/office/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -103406,7 +103421,7 @@ /area/science/research) "dsd" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -103442,7 +103457,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dsg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -103543,7 +103558,7 @@ /turf/open/floor/plating, /area/maintenance/department/medical/central) "dsq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -103552,7 +103567,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/tile/blue, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -103560,7 +103575,7 @@ "dss" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc/auto_name/south, @@ -103645,7 +103660,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dsB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -103869,7 +103884,7 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "dsS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -103906,7 +103921,7 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "dsY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/window/eastleft, @@ -104039,7 +104054,7 @@ /area/crew_quarters/heads/hor) "dts" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/button/door{ @@ -104099,7 +104114,7 @@ dir = 4 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -104150,7 +104165,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -104163,7 +104178,7 @@ /turf/closed/wall/r_wall, /area/medical/genetics) "dtD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -104175,10 +104190,10 @@ name = "Genetics Lab"; req_access_txt = "9" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -104191,7 +104206,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dtF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -104199,14 +104214,14 @@ /turf/open/floor/plating, /area/medical/genetics) "dtG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Medbay APC"; areastring = "/area/medical/medbay/central"; - pixel_x = -26 + pixel_x = -25 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/tile/blue{ @@ -104215,10 +104230,10 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dtH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -104383,10 +104398,10 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "dtV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -104401,7 +104416,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dtW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -104417,7 +104432,7 @@ req_access_txt = "12" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -104493,7 +104508,7 @@ /area/crew_quarters/abandoned_gambling_den) "dug" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/hollow/reinforced/directional{ @@ -104502,10 +104517,10 @@ /turf/open/floor/plating, /area/crew_quarters/abandoned_gambling_den) "duh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/hollow/reinforced/directional, @@ -104513,7 +104528,7 @@ /area/crew_quarters/abandoned_gambling_den) "dui" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/hollow/reinforced/end{ @@ -104615,7 +104630,7 @@ /area/maintenance/port) "duv" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -104747,10 +104762,10 @@ /obj/machinery/computer/aifixer{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -104762,7 +104777,7 @@ /obj/structure/chair/office/light{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/research_director, @@ -104774,14 +104789,14 @@ /obj/machinery/computer/mecha{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/crew_quarters/heads/hor) "duP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -104805,7 +104820,7 @@ dir = 4 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -104846,7 +104861,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "duV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -104931,7 +104946,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dvf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -105022,7 +105037,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dvn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -105062,7 +105077,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dvq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -105073,7 +105088,7 @@ /turf/open/floor/plating, /area/medical/genetics) "dvr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -105156,10 +105171,10 @@ }, /area/crew_quarters/heads/cmo) "dvx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105178,7 +105193,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "dvy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -105190,7 +105205,7 @@ /area/medical/medbay/central) "dvz" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/medical{ @@ -105211,7 +105226,7 @@ /turf/open/floor/plasteel, /area/medical/surgery) "dvA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105226,7 +105241,7 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "dvB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/medical_doctor, @@ -105246,7 +105261,7 @@ /turf/open/floor/plasteel, /area/medical/surgery) "dvC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105264,7 +105279,7 @@ name = "Surgery Theatre"; req_access_txt = "45" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105282,7 +105297,7 @@ /turf/open/floor/plasteel, /area/medical/surgery) "dvE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105297,7 +105312,7 @@ /obj/machinery/computer/operating{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -105318,10 +105333,10 @@ "dvG" = ( /obj/structure/table/optable, /obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105341,7 +105356,7 @@ /area/medical/surgery) "dvH" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105351,7 +105366,7 @@ /turf/open/floor/plasteel, /area/medical/surgery) "dvI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105365,7 +105380,7 @@ name = "Surgery Maintenance"; req_access_txt = "45" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -105380,10 +105395,10 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dvK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -105543,7 +105558,7 @@ /turf/open/floor/plasteel, /area/science/research/abandoned) "dwc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, @@ -105622,7 +105637,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dwq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -105660,7 +105675,7 @@ /area/crew_quarters/heads/hor) "dwt" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -105688,7 +105703,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "dww" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -105698,14 +105713,14 @@ /area/science/robotics/mechbay) "dwx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dwy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/camera{ @@ -105718,14 +105733,14 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dwz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/science/robotics/mechbay) "dwA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line, @@ -105812,7 +105827,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dwJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -105821,7 +105836,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -105837,7 +105852,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dwK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105858,7 +105873,7 @@ /area/medical/genetics) "dwL" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/item/clipboard, @@ -105867,7 +105882,7 @@ dir = 4; name = "Genetics Lab APC"; areastring = "/area/medical/genetics"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -105953,7 +105968,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dwR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -105998,7 +106013,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dwU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, @@ -106019,10 +106034,10 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dwW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -106042,7 +106057,7 @@ /turf/open/floor/plasteel, /area/medical/medbay/central) "dwX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -106057,13 +106072,13 @@ name = "Chief Medical Officer's Office"; req_access_txt = "40" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -106081,7 +106096,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dwZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -106094,10 +106109,10 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dxa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -106112,7 +106127,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "dxb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -106124,7 +106139,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "dxc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106139,7 +106154,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "dxd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106160,13 +106175,13 @@ name = "Chief Medical Officer's Office"; req_access_txt = "40" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106184,7 +106199,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dxf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -106196,10 +106211,10 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dxg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -106275,7 +106290,7 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "dxn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue, @@ -106299,7 +106314,7 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "dxq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -106525,7 +106540,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -106535,7 +106550,7 @@ /area/crew_quarters/heads/hor) "dxX" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -106543,13 +106558,13 @@ /area/crew_quarters/heads/hor) "dxY" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/door/airlock/command{ @@ -106566,7 +106581,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/hor) "dxZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -106575,7 +106590,7 @@ /area/crew_quarters/heads/hor) "dya" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -106620,7 +106635,7 @@ /area/science/robotics/lab) "dyf" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/research/glass{ @@ -106676,10 +106691,10 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dyj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -106699,7 +106714,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dyk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -106721,7 +106736,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dyl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106742,10 +106757,10 @@ name = "Genetics Lab"; req_access_txt = "9" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106763,7 +106778,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dyn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106785,7 +106800,7 @@ /turf/open/floor/plasteel/dark, /area/medical/genetics) "dyo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106803,7 +106818,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dyp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -106825,7 +106840,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dyq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -106847,7 +106862,7 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dyr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/holopad, @@ -106897,11 +106912,11 @@ /turf/open/floor/plasteel, /area/medical/genetics) "dyu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -106912,7 +106927,7 @@ /turf/open/floor/plating, /area/medical/genetics) "dyv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -106924,10 +106939,10 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dyw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -106964,7 +106979,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dyz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -107098,7 +107113,7 @@ dir = 2; name = "Surgery APC"; areastring = "/area/medical/surgery"; - pixel_y = -26 + pixel_y = -23 }, /obj/machinery/camera{ c_tag = "Medbay - Surgery"; @@ -107154,11 +107169,11 @@ /turf/open/floor/plasteel/dark, /area/medical/surgery) "dyL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -107171,14 +107186,14 @@ /area/maintenance/starboard/aft) "dyM" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ areastring = "/area/maintenance/starboard/aft"; dir = 4; name = "Starboard Quarter Maintenance APC"; - pixel_x = 26 + pixel_x = 24 }, /turf/open/floor/plating, /area/maintenance/starboard/aft) @@ -107202,9 +107217,9 @@ dir = 2; name = "Auxiliary Construction Zone APC"; areastring = "/area/hallway/secondary/construction"; - pixel_y = -26 + pixel_y = -23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/bot, @@ -107213,7 +107228,7 @@ "dyQ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/delivery, @@ -107343,7 +107358,7 @@ dir = 4 }, /obj/effect/landmark/xeno_spawn, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -107362,7 +107377,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -107384,7 +107399,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -107394,7 +107409,7 @@ dir = 4 }, /obj/effect/turf_decal/delivery, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -107410,7 +107425,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -107421,19 +107436,19 @@ /area/science/research/abandoned) "dzn" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port) "dzo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -107449,7 +107464,7 @@ /area/maintenance/port) "dzp" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -107464,7 +107479,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "dzq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -107480,7 +107495,7 @@ /turf/open/floor/plasteel, /area/maintenance/port) "dzr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -107526,7 +107541,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -107548,7 +107563,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dzC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -107632,7 +107647,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dzJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -107711,7 +107726,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dzP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -107870,7 +107885,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dAc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -107895,7 +107910,7 @@ /area/crew_quarters/heads/cmo) "dAe" = ( /obj/structure/chair/office/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -107909,7 +107924,7 @@ /area/crew_quarters/heads/cmo) "dAf" = ( /obj/item/twohanded/required/kirbyplants/random, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/light{ @@ -107919,7 +107934,7 @@ dir = 4; name = "Chief Medical Officer's Office APC"; areastring = "/area/crew_quarters/heads/cmo"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/camera{ c_tag = "Medbay - Chief Medical Officer's Office"; @@ -107946,7 +107961,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dAh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -107974,7 +107989,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -107994,7 +108009,7 @@ /turf/closed/wall/r_wall, /area/maintenance/solars/starboard/aft) "dAl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/item/radio/intercom{ @@ -108007,7 +108022,7 @@ /area/maintenance/solars/starboard/aft) "dAm" = ( /obj/machinery/power/smes, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/light/small{ @@ -108073,7 +108088,7 @@ /area/maintenance/port) "dAv" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -108092,21 +108107,21 @@ /turf/open/floor/plasteel, /area/maintenance/port) "dAw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Toxins Lab APC"; areastring = "/area/science/mixing"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/science/mixing) "dAx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/portables_connector/visible{ @@ -108118,7 +108133,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "dAy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -108133,7 +108148,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -108172,7 +108187,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dAG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/research_director, @@ -108231,7 +108246,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dAK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/stripes/line{ @@ -108241,7 +108256,7 @@ /area/science/robotics/lab) "dAL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -108250,7 +108265,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dAM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -108259,7 +108274,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dAN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/stripes/line{ @@ -108295,7 +108310,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dAQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -108307,7 +108322,7 @@ /area/medical/genetics) "dAR" = ( /obj/structure/filingcabinet/chestdrawer, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/button/door{ @@ -108327,10 +108342,10 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "dAS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -108472,7 +108487,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dBf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -108497,7 +108512,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dBh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -108515,7 +108530,7 @@ /area/crew_quarters/heads/cmo) "dBi" = ( /obj/machinery/disposal/bin, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -108528,13 +108543,13 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dBj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -108551,7 +108566,7 @@ /area/crew_quarters/heads/cmo) "dBk" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/paper_bin, @@ -108568,10 +108583,10 @@ /area/crew_quarters/heads/cmo) "dBl" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/item/folder/blue{ @@ -108594,7 +108609,7 @@ "dBm" = ( /obj/machinery/computer/med_data/laptop, /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -108608,7 +108623,7 @@ }, /area/crew_quarters/heads/cmo) "dBn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -108707,7 +108722,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dBu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -108725,7 +108740,7 @@ }, /area/maintenance/starboard/aft) "dBv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -108743,7 +108758,7 @@ }, /area/maintenance/starboard/aft) "dBw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -108753,17 +108768,17 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dBx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/starboard/aft) "dBy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -108773,7 +108788,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dBz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -108782,7 +108797,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dBA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -108801,7 +108816,7 @@ }, /area/maintenance/starboard/aft) "dBB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -108818,10 +108833,10 @@ }, /area/maintenance/starboard/aft) "dBC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -108832,10 +108847,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dBD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -108853,7 +108868,7 @@ }, /area/maintenance/starboard/aft) "dBE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -108863,7 +108878,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dBF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -108878,7 +108893,7 @@ name = "Starboard Quarter Solar Access"; req_access_txt = "10" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -108893,10 +108908,10 @@ /turf/open/floor/plasteel, /area/maintenance/solars/starboard/aft) "dBH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -109096,7 +109111,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "dCc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -109132,7 +109147,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dCk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/camera{ @@ -109148,7 +109163,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "dCl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/purple, @@ -109207,7 +109222,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dCq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -109227,7 +109242,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dCw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -109249,9 +109264,9 @@ dir = 4; name = "Aft Primary Hallway APC"; areastring = "/area/hallway/primary/aft"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral, @@ -109262,7 +109277,7 @@ /area/medical/morgue) "dCz" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/grunge{ @@ -109294,7 +109309,7 @@ /area/maintenance/department/medical/morgue) "dCE" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -109328,7 +109343,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dCH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -109474,7 +109489,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dCQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -109569,7 +109584,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dCZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -109596,7 +109611,7 @@ dir = 2; name = "Starboard Quarter Solar APC"; areastring = "/area/maintenance/solars/starboard/aft"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -109604,7 +109619,7 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard/aft) "dDd" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/stripes/line, @@ -109685,7 +109700,7 @@ /turf/open/floor/plating, /area/science/research/abandoned) "dDm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -109747,7 +109762,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "dDp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -109862,7 +109877,7 @@ /area/science/robotics/lab) "dDA" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -109908,7 +109923,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dDG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -109957,7 +109972,7 @@ /turf/open/floor/plasteel/dark, /area/medical/morgue) "dDK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -110074,7 +110089,7 @@ /turf/open/floor/plating, /area/maintenance/department/medical/morgue) "dDU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -110112,7 +110127,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/cmo) "dDX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/vending/wallmed{ @@ -110284,7 +110299,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -110371,7 +110386,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "dEs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/scientist, @@ -110517,7 +110532,7 @@ /area/science/server) "dEF" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -110549,7 +110564,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dEI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -110593,7 +110608,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -110633,7 +110648,7 @@ /area/medical/morgue) "dET" = ( /obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -110736,7 +110751,7 @@ /area/maintenance/department/medical/morgue) "dFc" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -110754,7 +110769,7 @@ /area/crew_quarters/heads/cmo) "dFf" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -110766,7 +110781,7 @@ name = "Chief Medical Officer's Quarters"; req_access_txt = "40" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -110778,7 +110793,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "dFh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -110825,14 +110840,14 @@ /turf/open/floor/plating, /area/crew_quarters/theatre/abandoned) "dFm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Abandoned Theatre APC"; areastring = "/area/crew_quarters/theatre/abandoned"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plating, /area/crew_quarters/theatre/abandoned) @@ -110916,7 +110931,7 @@ /turf/open/floor/plating, /area/security/detectives_office/private_investigators_office) "dFu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -110969,7 +110984,7 @@ /turf/open/floor/plasteel/airless/solarpanel, /area/solar/starboard/aft) "dFz" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/item/radio/intercom{ @@ -111035,7 +111050,7 @@ /turf/open/floor/plasteel, /area/science/misc_lab) "dFG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -111158,7 +111173,7 @@ /turf/open/floor/plasteel, /area/science/storage) "dFR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/computer/rdservercontrol{ @@ -111168,7 +111183,7 @@ dir = 8; name = "Research Division Server Room APC"; areastring = "/area/science/server"; - pixel_x = -26 + pixel_x = -25 }, /obj/machinery/light_switch{ pixel_x = -28; @@ -111190,10 +111205,10 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -111213,7 +111228,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -111236,7 +111251,7 @@ name = "Research Division Server Room"; req_access_txt = "30" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -111256,7 +111271,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple{ @@ -111268,11 +111283,11 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -111296,14 +111311,14 @@ /area/science/research) "dFY" = ( /obj/machinery/disposal/bin, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Robotics Lab APC"; areastring = "/area/science/robotics/lab"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/disposalpipe/trunk{ dir = 1 @@ -111312,10 +111327,10 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dFZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -111409,10 +111424,10 @@ }, /area/medical/morgue) "dGj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -111433,7 +111448,7 @@ /area/medical/morgue) "dGk" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -111453,7 +111468,7 @@ /turf/open/floor/plasteel, /area/medical/morgue) "dGl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -111473,7 +111488,7 @@ /area/medical/morgue) "dGm" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/medical_doctor, @@ -111495,7 +111510,7 @@ "dGn" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/old, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -111515,7 +111530,7 @@ /turf/open/floor/plasteel, /area/medical/morgue) "dGo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -111532,7 +111547,7 @@ /turf/open/floor/plasteel, /area/medical/morgue) "dGp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -111561,7 +111576,7 @@ /area/medical/morgue) "dGq" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/grunge{ @@ -111580,7 +111595,7 @@ /turf/open/floor/plasteel, /area/maintenance/department/medical/morgue) "dGr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -111599,7 +111614,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/department/medical/morgue) "dGs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -111610,7 +111625,7 @@ /area/maintenance/department/medical/morgue) "dGt" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -111620,13 +111635,13 @@ /turf/open/floor/plating, /area/maintenance/department/medical/morgue) "dGu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -111698,7 +111713,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "dGA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -111731,7 +111746,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dGC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -111747,7 +111762,7 @@ /turf/open/floor/wood, /area/crew_quarters/theatre/abandoned) "dGF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -111811,7 +111826,7 @@ /turf/open/floor/plating, /area/security/detectives_office/private_investigators_office) "dGM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -111973,7 +111988,7 @@ dir = 4 }, /obj/machinery/power/apc/auto_name/east, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -111989,7 +112004,7 @@ /turf/open/floor/plasteel, /area/science/misc_lab) "dHf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112033,7 +112048,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "dHj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112088,7 +112103,7 @@ /turf/open/floor/plasteel, /area/science/storage) "dHq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -112103,10 +112118,10 @@ name = "Server Access"; req_access_txt = "30" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -112122,7 +112137,7 @@ /turf/open/floor/plasteel/dark, /area/science/server) "dHs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -112135,7 +112150,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -112173,7 +112188,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dHv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112274,7 +112289,7 @@ "dHE" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -112428,7 +112443,7 @@ /area/maintenance/department/medical/morgue) "dHP" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -112566,7 +112581,7 @@ }, /area/crew_quarters/theatre/abandoned) "dHZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/wood, @@ -112605,20 +112620,20 @@ /turf/open/floor/plating, /area/crew_quarters/theatre/abandoned) "dId" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Private Investigator's Office APC"; areastring = "/area/security/detectives_office/private_investigators_office"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /turf/open/floor/plating, /area/security/detectives_office/private_investigators_office) "dIe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/landmark/xeno_spawn, @@ -112660,7 +112675,7 @@ id = "toxinsdriver"; pixel_x = -24 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/decal/cleanable/dirt, @@ -112714,7 +112729,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 2 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -112738,7 +112753,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -112757,29 +112772,29 @@ /obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/science/misc_lab) "dIr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, /obj/item/beacon, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /obj/effect/turf_decal/bot, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, /area/science/misc_lab) "dIs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -112802,7 +112817,7 @@ /area/science/misc_lab) "dIt" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -112829,7 +112844,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "dIu" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -112844,7 +112859,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "dIv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -112857,13 +112872,13 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "dIw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -112874,7 +112889,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "dIx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -112885,7 +112900,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "dIy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -112905,7 +112920,7 @@ id = "rdtoxins"; name = "Toxins Lab Shutters" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -112923,7 +112938,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -112932,7 +112947,7 @@ "dIB" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -112941,7 +112956,7 @@ "dIC" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -112951,14 +112966,14 @@ /area/science/storage) "dID" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/science/storage) "dIE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/delivery, @@ -113018,10 +113033,10 @@ /turf/open/floor/plasteel/white, /area/science/research) "dIJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -113041,14 +113056,14 @@ /turf/open/floor/plasteel, /area/science/research) "dIK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 4; name = "Research Division APC"; areastring = "/area/science/research"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 @@ -113068,7 +113083,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dIM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -113146,7 +113161,7 @@ /turf/open/floor/plasteel, /area/science/robotics/lab) "dIT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/event_spawn, @@ -113175,7 +113190,7 @@ dir = 2; name = "Morgue APC"; areastring = "/area/medical/morgue"; - pixel_y = -26 + pixel_y = -23 }, /turf/open/floor/plating, /area/medical/morgue) @@ -113270,11 +113285,11 @@ /turf/open/floor/plating, /area/maintenance/department/medical/morgue) "dJf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -113295,9 +113310,9 @@ dir = 2; name = "Morgue Maintenance APC"; areastring = "/area/maintenance/department/medical/morgue"; - pixel_y = -26 + pixel_y = -23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -113389,7 +113404,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "dJn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green, @@ -113413,10 +113428,10 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dJq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -113437,7 +113452,7 @@ req_access_txt = "12" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -113453,7 +113468,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre/abandoned) "dJs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -113462,7 +113477,7 @@ /turf/open/floor/wood, /area/crew_quarters/theatre/abandoned) "dJt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -113473,7 +113488,7 @@ /area/crew_quarters/theatre/abandoned) "dJu" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -113544,11 +113559,11 @@ }, /area/security/detectives_office/private_investigators_office) "dJC" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/security/detectives_office/private_investigators_office) "dJD" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood, /area/security/detectives_office/private_investigators_office) @@ -113686,7 +113701,7 @@ /turf/open/floor/plasteel, /area/science/misc_lab) "dJR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -113735,7 +113750,7 @@ /turf/open/floor/plasteel, /area/science/mixing) "dJV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -113827,7 +113842,7 @@ dir = 4; name = "Toxins Storage APC"; areastring = "/area/science/storage"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/white, /obj/effect/turf_decal/bot, @@ -113871,7 +113886,7 @@ /turf/open/floor/plasteel/white, /area/science/research) "dKi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -113888,7 +113903,7 @@ /turf/open/floor/plasteel, /area/science/research) "dKj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -113930,7 +113945,7 @@ /area/hallway/primary/aft) "dKm" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -113952,7 +113967,7 @@ /area/medical/medbay/central) "dKo" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/virology{ @@ -114101,7 +114116,7 @@ /turf/open/floor/plasteel, /area/science/misc_lab) "dKD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -114119,7 +114134,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dKE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -114159,7 +114174,7 @@ name = "Break Room"; req_access_txt = "47" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -114188,7 +114203,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dKK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -114276,13 +114291,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "dKS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -114298,7 +114313,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "dKT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -114313,7 +114328,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "dKU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -114330,7 +114345,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -114348,7 +114363,7 @@ /turf/open/floor/plasteel, /area/maintenance/aft) "dKW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -114362,7 +114377,7 @@ /turf/open/floor/plasteel, /area/maintenance/aft) "dKX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -114374,7 +114389,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "dKY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -114387,7 +114402,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "dKZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -114408,7 +114423,7 @@ }, /area/maintenance/aft) "dLa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -114428,16 +114443,16 @@ }, /area/maintenance/aft) "dLb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -114446,7 +114461,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "dLc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -114475,7 +114490,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "dLe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/rack, @@ -114497,7 +114512,7 @@ }, /area/maintenance/aft) "dLf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/blobstart, @@ -114516,10 +114531,10 @@ }, /area/maintenance/aft) "dLg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -114533,7 +114548,7 @@ /turf/open/floor/plasteel, /area/maintenance/aft) "dLh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -114571,7 +114586,7 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/medical) "dLk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -114723,7 +114738,7 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office/private_investigators_office) "dLx" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/grimy, @@ -114854,7 +114869,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dLQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -114904,7 +114919,7 @@ /area/maintenance/port/aft) "dLV" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -115008,7 +115023,7 @@ /turf/open/floor/plasteel, /area/science/research) "dMf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -115048,10 +115063,10 @@ }, /area/maintenance/port/aft) "dMi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -115060,7 +115075,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dMj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -115070,7 +115085,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dMk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115083,24 +115098,24 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dMl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/port/aft) "dMm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115114,7 +115129,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dMn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -115129,7 +115144,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115144,7 +115159,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dMp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115155,7 +115170,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "dMq" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115169,7 +115184,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "dMr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115284,7 +115299,7 @@ name = "Aft Maintenance APC"; areastring = "/area/maintenance/aft"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/plating, /area/maintenance/aft) @@ -115306,7 +115321,7 @@ /turf/open/floor/plasteel, /area/maintenance/aft) "dME" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -115320,7 +115335,7 @@ /turf/open/floor/plasteel, /area/maintenance/aft) "dMF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115329,7 +115344,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "dMG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115386,7 +115401,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "dMM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt, @@ -115399,7 +115414,7 @@ /turf/open/floor/plating, /area/maintenance/aft) "dMN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -115413,7 +115428,7 @@ /turf/open/floor/plasteel, /area/maintenance/aft) "dMO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -115438,7 +115453,7 @@ /turf/open/floor/plasteel, /area/maintenance/department/medical) "dMP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -115451,22 +115466,22 @@ /obj/effect/turf_decal/tile/green{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/white, /area/maintenance/department/medical) "dMQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115475,10 +115490,10 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/bot, @@ -115488,7 +115503,7 @@ /turf/open/floor/plasteel, /area/maintenance/department/medical) "dMR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115503,7 +115518,7 @@ /area/maintenance/department/medical) "dMS" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -115525,7 +115540,7 @@ /turf/open/floor/plasteel, /area/maintenance/department/medical) "dMT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115535,7 +115550,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dMU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115544,7 +115559,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dMV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -115558,7 +115573,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dMW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -115568,7 +115583,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/aft) "dMX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -115581,7 +115596,7 @@ /turf/open/floor/plasteel, /area/maintenance/starboard/aft) "dMY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -115734,11 +115749,11 @@ /area/maintenance/port/aft) "dNu" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -115755,7 +115770,7 @@ /area/maintenance/port/aft) "dNv" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -115764,7 +115779,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dNw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -115784,7 +115799,7 @@ /area/maintenance/port/aft) "dNx" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -115804,10 +115819,10 @@ /area/maintenance/port/aft) "dNy" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -115815,7 +115830,7 @@ /area/maintenance/port/aft) "dNz" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -115829,7 +115844,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dNA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -115889,7 +115904,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/red{ @@ -115905,7 +115920,7 @@ /turf/open/floor/plasteel, /area/science/research) "dNG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -115927,7 +115942,7 @@ /turf/open/floor/plasteel, /area/science/research) "dNH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -115966,7 +115981,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dNK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -115978,7 +115993,7 @@ /area/security/checkpoint/customs/auxiliary) "dNM" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/command/glass{ @@ -116066,7 +116081,7 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/medical) "dNV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -116166,7 +116181,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/delivery, @@ -116178,7 +116193,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -116189,7 +116204,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -116203,7 +116218,7 @@ /area/maintenance/port/aft) "dOi" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral, @@ -116248,7 +116263,7 @@ /area/maintenance/port/aft) "dOn" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -116325,7 +116340,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -116400,7 +116415,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dOy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -116438,7 +116453,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs/auxiliary) "dOA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light_switch{ @@ -116608,7 +116623,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/barricade/wooden, @@ -116670,7 +116685,7 @@ dir = 1 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -116742,7 +116757,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dPb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, @@ -116770,7 +116785,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs/auxiliary) "dPd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -116808,7 +116823,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs/auxiliary) "dPg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -116870,7 +116885,7 @@ /area/maintenance/department/medical) "dPo" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -116911,24 +116926,24 @@ /turf/closed/wall/r_wall, /area/medical/virology) "dPr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/medical/virology) "dPs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/medical/virology) "dPt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -116970,7 +116985,7 @@ /area/library/abandoned) "dPy" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -116999,12 +117014,12 @@ /turf/open/floor/plasteel/grimy, /area/library/abandoned) "dPC" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/grimy, /area/library/abandoned) "dPD" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/light/small{ dir = 1 }, @@ -117017,7 +117032,7 @@ /area/library/abandoned) "dPF" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -117032,17 +117047,17 @@ /area/maintenance/port/aft) "dPG" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/port/aft) "dPH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -117078,9 +117093,9 @@ dir = 1; name = "Port Quarter Maintenance APC"; areastring = "/area/maintenance/port/aft"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -117137,7 +117152,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -117191,7 +117206,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dPU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -117206,14 +117221,14 @@ /obj/machinery/computer/card{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ areastring = "/area/security/checkpoint/customs/auxiliary"; dir = 8; name = "Departures Customs APC"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/machinery/camera{ @@ -117234,13 +117249,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs/auxiliary) "dPW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -117259,7 +117274,7 @@ /obj/structure/chair/office/light{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -117277,7 +117292,7 @@ /area/security/checkpoint/customs/auxiliary) "dPY" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/folder/blue, @@ -117296,10 +117311,10 @@ /area/security/checkpoint/customs/auxiliary) "dPZ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/window/brigdoor/southright{ @@ -117363,7 +117378,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dQf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -117384,7 +117399,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dQh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -117399,7 +117414,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dQj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/twohanded/required/kirbyplants/random, @@ -117448,7 +117463,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dQo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/filingcabinet/chestdrawer, @@ -117480,7 +117495,7 @@ /turf/open/floor/plating, /area/library/abandoned) "dQr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -117501,7 +117516,7 @@ "dQt" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -117520,7 +117535,7 @@ /turf/open/floor/plasteel/dark, /area/library/abandoned) "dQv" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/decal/cleanable/dirt, @@ -117538,7 +117553,7 @@ /turf/open/floor/carpet, /area/library/abandoned) "dQy" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/grimy, @@ -117549,7 +117564,7 @@ /area/maintenance/port/aft) "dQA" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -117607,7 +117622,7 @@ /area/maintenance/port/aft) "dQE" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -117628,7 +117643,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dQH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -117636,7 +117651,7 @@ req_access_txt = "47" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -117652,7 +117667,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dQJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -117681,7 +117696,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs/auxiliary) "dQL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -117790,7 +117805,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dQV" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -117805,7 +117820,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dQW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -117821,7 +117836,7 @@ /area/medical/virology) "dQX" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -117863,7 +117878,7 @@ pixel_y = 24; req_access_txt = "39" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -117876,13 +117891,13 @@ /turf/open/floor/plasteel, /area/medical/virology) "dQZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/light/small{ @@ -117900,13 +117915,13 @@ /turf/open/floor/plasteel, /area/medical/virology) "dRa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/stripes/line{ @@ -117926,7 +117941,7 @@ name = "Virology Access"; req_access_txt = "39" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -117944,7 +117959,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dRc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -117963,10 +117978,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dRd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118033,7 +118048,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dRi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -118095,7 +118110,7 @@ /turf/open/floor/plasteel/dark, /area/medical/virology) "dRm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/bed, @@ -118167,7 +118182,7 @@ }, /area/library/abandoned) "dRt" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/grimy, @@ -118191,7 +118206,7 @@ /turf/open/floor/carpet, /area/library/abandoned) "dRw" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/decal/cleanable/dirt, @@ -118223,10 +118238,10 @@ /area/maintenance/port/aft) "dRz" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118235,7 +118250,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dRA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118245,7 +118260,7 @@ /area/maintenance/port/aft) "dRB" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118255,10 +118270,10 @@ /area/maintenance/port/aft) "dRC" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118268,22 +118283,22 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dRD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/maintenance/port/aft) "dRE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118296,7 +118311,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dRF" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -118315,7 +118330,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dRG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118325,10 +118340,10 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dRH" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -118338,14 +118353,14 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dRI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -118359,7 +118374,7 @@ }, /area/maintenance/port/aft) "dRJ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -118374,7 +118389,7 @@ }, /area/maintenance/port/aft) "dRK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -118384,7 +118399,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dRL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -118402,7 +118417,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dRM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -118413,7 +118428,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dRN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -118430,10 +118445,10 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dRO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -118461,7 +118476,7 @@ /area/security/checkpoint/customs/auxiliary) "dRQ" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/box/ids, @@ -118586,10 +118601,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dSe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/green{ @@ -118605,7 +118620,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dSf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/green{ @@ -118619,7 +118634,7 @@ name = "Virology Break Room"; req_access_txt = "39" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -118631,7 +118646,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dSh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/green{ @@ -118640,7 +118655,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dSi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -118657,13 +118672,13 @@ /turf/open/floor/plasteel, /area/medical/virology) "dSj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -118682,7 +118697,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dSk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/green, @@ -118693,7 +118708,7 @@ name = "Virology Cabin"; req_access_txt = "39" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -118705,7 +118720,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dSm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light_switch{ @@ -118718,10 +118733,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dSn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/landmark/start/virologist, @@ -118779,7 +118794,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/blood/old, @@ -118794,7 +118809,7 @@ /turf/open/floor/plating, /area/library/abandoned) "dSw" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/grimy, @@ -118816,7 +118831,7 @@ /area/maintenance/port/aft) "dSy" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -118836,7 +118851,7 @@ req_access_txt = "27" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -118891,7 +118906,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dSG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -118934,7 +118949,7 @@ /turf/closed/wall, /area/hallway/secondary/exit/departure_lounge) "dSL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -118954,14 +118969,14 @@ /area/maintenance/port/aft) "dSM" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/customs/auxiliary) "dSN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -119040,7 +119055,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dSZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -119091,7 +119106,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dTe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -119123,7 +119138,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dTi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -119155,14 +119170,14 @@ /area/solar/starboard/aft) "dTl" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Abandoned Library APC"; areastring = "/area/library/abandoned"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /turf/open/floor/wood{ @@ -119171,7 +119186,7 @@ /area/library/abandoned) "dTm" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/wood{ @@ -119179,20 +119194,20 @@ }, /area/library/abandoned) "dTn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/wood, /area/library/abandoned) "dTo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/grimy, /area/library/abandoned) "dTp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/grimy, @@ -119231,7 +119246,7 @@ /turf/open/floor/plating, /area/library/abandoned) "dTv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -119255,7 +119270,7 @@ /area/chapel/office) "dTy" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -119306,7 +119321,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -119331,14 +119346,14 @@ dir = 1; name = "Departure Lounge APC"; areastring = "/area/hallway/secondary/exit/departure_lounge"; - pixel_y = 28 + pixel_y = 23 }, /obj/machinery/camera{ c_tag = "Departures - Fore"; dir = 2; name = "departures camera" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line{ @@ -119378,7 +119393,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dTS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -119449,7 +119464,7 @@ "dTW" = ( /obj/item/clothing/neck/stethoscope, /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/box/donkpockets, @@ -119508,7 +119523,7 @@ /turf/open/floor/plasteel/dark, /area/medical/virology) "dUa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -119565,7 +119580,7 @@ /area/maintenance/port/aft) "dUh" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -119597,7 +119612,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "dUj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -119695,7 +119710,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main) "dUp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -119777,7 +119792,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -119796,7 +119811,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dUy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -119839,37 +119854,37 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dUK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/medical/virology) "dUL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/medical/virology) "dUM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/medical/virology) "dUN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -119887,10 +119902,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dUP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -119913,10 +119928,10 @@ dir = 4; name = "Virology Satellite APC"; areastring = "/area/medical/virology"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/green{ @@ -119975,7 +119990,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "dUY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -119985,7 +120000,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "dUZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -120041,7 +120056,7 @@ /turf/open/floor/plasteel/grimy, /area/chapel/main) "dVd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -120085,7 +120100,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dVj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -120114,7 +120129,7 @@ /area/hallway/secondary/exit/departure_lounge) "dVt" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/clothing/gloves/color/latex, @@ -120140,7 +120155,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dVv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/computer/pandemic, @@ -120166,7 +120181,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dVy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -120293,7 +120308,7 @@ /turf/open/floor/plasteel/dark, /area/library/abandoned) "dVL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -120309,7 +120324,7 @@ /area/maintenance/port/aft) "dVM" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -120335,7 +120350,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "dVO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/chaplain, @@ -120379,7 +120394,7 @@ /turf/open/floor/plasteel/grimy, /area/chapel/main) "dVS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -120418,7 +120433,7 @@ /turf/open/floor/plasteel, /area/chapel/main) "dVX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -120428,7 +120443,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dVY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -120448,10 +120463,10 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dVZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -120470,7 +120485,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dWa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -120489,7 +120504,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dWb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -120584,7 +120599,7 @@ pixel_x = -32 }, /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/reagentgrinder{ @@ -120606,7 +120621,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dWo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -120630,7 +120645,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dWr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -120650,7 +120665,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dWt" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -120670,10 +120685,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dWv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -120689,7 +120704,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dWw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -120772,7 +120787,7 @@ /area/library/abandoned) "dWI" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -120937,13 +120952,13 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dXa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/smartfridge/chemistry/virology/preloaded, @@ -120953,7 +120968,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dXb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/green{ @@ -120965,13 +120980,13 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dXc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -120990,7 +121005,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dXd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/holopad, @@ -121001,7 +121016,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dXe" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -121020,13 +121035,13 @@ /turf/open/floor/plasteel, /area/medical/virology) "dXf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -121042,7 +121057,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dXg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -121060,13 +121075,13 @@ name = "Virology Lab"; req_access_txt = "39" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -121084,7 +121099,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dXi" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -121100,10 +121115,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dXj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -121136,7 +121151,7 @@ /turf/closed/wall, /area/medical/virology) "dXm" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -121149,10 +121164,10 @@ name = "Virology Containment Cell"; req_access_txt = "39" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -121164,7 +121179,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dXo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -121178,12 +121193,12 @@ /turf/open/floor/wood, /area/library/abandoned) "dXq" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/library/abandoned) "dXr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/wood{ @@ -121272,7 +121287,7 @@ /turf/open/floor/plasteel/dark, /area/library/abandoned) "dXA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -121298,7 +121313,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "dXC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, @@ -121393,7 +121408,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dXK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -121444,7 +121459,7 @@ dir = 4; pixel_x = -23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/book/manual/wiki/infections, @@ -121473,7 +121488,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dXW" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -121494,7 +121509,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dXZ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -121516,7 +121531,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dYc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -121561,7 +121576,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dYg" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -121692,7 +121707,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "dYw" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -121713,7 +121728,7 @@ pixel_x = -26; pixel_y = -26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -121770,7 +121785,7 @@ }, /area/chapel/main) "dYD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -121835,7 +121850,7 @@ /area/hallway/secondary/exit/departure_lounge) "dYP" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/storage/box/beakers{ @@ -121860,7 +121875,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dYR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/disposal/bin, @@ -121887,7 +121902,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dYU" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -121923,10 +121938,10 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dYX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -121943,7 +121958,7 @@ /turf/open/floor/plasteel, /area/medical/virology) "dYY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -121958,13 +121973,13 @@ name = "Virology Access"; req_access_txt = "39" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -121979,10 +121994,10 @@ /turf/open/floor/plasteel, /area/medical/virology) "dZa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -121997,11 +122012,11 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dZb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/green{ @@ -122017,10 +122032,10 @@ /turf/open/floor/plasteel, /area/medical/virology) "dZc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/holopad, @@ -122032,13 +122047,13 @@ /turf/open/floor/plasteel, /area/medical/virology) "dZd" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/green{ @@ -122055,10 +122070,10 @@ /area/medical/virology) "dZe" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/folder/white, @@ -122071,7 +122086,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "dZf" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -122100,7 +122115,7 @@ name = "Crematorium"; req_access_txt = "27" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -122191,14 +122206,14 @@ /area/hallway/secondary/exit/departure_lounge) "dZw" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/medical/virology) "dZx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable/white, @@ -122206,7 +122221,7 @@ /turf/open/floor/plating, /area/medical/virology) "dZy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/cable/white, @@ -122214,7 +122229,7 @@ /turf/open/floor/plating, /area/medical/virology) "dZz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -122249,7 +122264,7 @@ /turf/open/floor/plating, /area/medical/virology) "dZC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/sink{ @@ -122269,7 +122284,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -122297,7 +122312,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green, @@ -122305,7 +122320,7 @@ /area/medical/virology) "dZG" = ( /obj/structure/table/glass, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/newscaster{ @@ -122386,7 +122401,7 @@ /area/maintenance/port/aft) "dZM" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -122420,7 +122435,7 @@ pixel_x = -26; pixel_y = 26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -122441,10 +122456,10 @@ dir = 8; name = "Chapel APC"; areastring = "/area/chapel/main"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel{ @@ -122453,7 +122468,7 @@ }, /area/chapel/main) "dZR" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -122462,7 +122477,7 @@ }, /area/chapel/main) "dZS" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel{ @@ -122471,7 +122486,7 @@ }, /area/chapel/main) "dZT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -122519,7 +122534,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "dZY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -122595,7 +122610,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "eag" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/table, @@ -122641,7 +122656,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -122655,7 +122670,7 @@ /area/maintenance/solars/port/aft) "eam" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -122668,14 +122683,14 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "ean" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/port/aft) "eao" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral, @@ -122686,10 +122701,10 @@ /area/maintenance/port/aft) "eap" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/blue, @@ -122700,7 +122715,7 @@ /area/maintenance/port/aft) "eaq" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue, @@ -122711,17 +122726,17 @@ /area/maintenance/port/aft) "ear" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/port/aft) "eas" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue, @@ -122732,7 +122747,7 @@ /area/maintenance/port/aft) "eat" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral, @@ -122766,7 +122781,7 @@ /obj/item/radio/intercom{ pixel_x = 26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -122881,7 +122896,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -122901,7 +122916,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -122939,7 +122954,7 @@ /area/maintenance/solars/port/aft) "eaS" = ( /obj/machinery/power/smes, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/light/small{ @@ -122951,7 +122966,7 @@ /turf/open/floor/plating, /area/maintenance/solars/port/aft) "eaT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/camera{ @@ -122973,7 +122988,7 @@ /area/maintenance/solars/port/aft) "eaV" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -123037,7 +123052,7 @@ name = "Auxiliary E.V.A. Storage"; req_access_txt = "18" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/barricade/wooden, @@ -123090,7 +123105,7 @@ /obj/machinery/light{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -123209,7 +123224,7 @@ }, /obj/structure/chair/office/light, /obj/effect/decal/cleanable/greenglow, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green, @@ -123230,7 +123245,7 @@ dir = 8 }, /obj/structure/chair/office/light, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green{ @@ -123344,10 +123359,10 @@ /turf/open/floor/plating, /area/maintenance/solars/port/aft) "ebI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -123364,7 +123379,7 @@ name = "Port Quarter Solar Access"; req_access_txt = "10" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -123379,7 +123394,7 @@ /turf/open/floor/plasteel, /area/maintenance/solars/port/aft) "ebK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -123415,7 +123430,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "ebP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -123463,7 +123478,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "ebT" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -123579,7 +123594,7 @@ /obj/item/folder/white, /obj/item/pen/red, /obj/effect/turf_decal/delivery, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -123598,7 +123613,7 @@ /turf/open/floor/plating, /area/maintenance/solars/port/aft) "ecl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/airalarm{ @@ -123614,7 +123629,7 @@ dir = 2; name = "Port Quarter Solar APC"; areastring = "/area/maintenance/solars/port/aft"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -123658,7 +123673,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "ecr" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -123669,7 +123684,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "ecs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -123739,7 +123754,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "ecx" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -123886,7 +123901,7 @@ /area/maintenance/port/aft) "ecN" = ( /obj/structure/rack, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -123929,7 +123944,7 @@ name = "Relic Closet"; req_access_txt = "27" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -124021,7 +124036,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "ecY" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -124190,7 +124205,7 @@ /area/maintenance/port/aft) "edi" = ( /obj/structure/rack, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -124298,7 +124313,7 @@ /turf/open/floor/plasteel/grimy, /area/chapel/office) "edn" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/grimy, @@ -124468,7 +124483,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "edz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -124539,7 +124554,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "edK" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -124549,10 +124564,10 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "edL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -124562,7 +124577,7 @@ /area/maintenance/port/aft) "edM" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -124572,17 +124587,17 @@ /area/maintenance/port/aft) "edN" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/maintenance/port/aft) "edO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ @@ -124591,10 +124606,10 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "edP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -124604,7 +124619,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "edQ" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -124630,11 +124645,11 @@ /turf/open/floor/plasteel/grimy, /area/chapel/office) "edU" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel/grimy, /area/chapel/office) "edV" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/grimy, @@ -124668,7 +124683,7 @@ /area/security/checkpoint/escape) "eea" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/security/glass{ @@ -124685,7 +124700,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "eeb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -124693,10 +124708,10 @@ /area/security/checkpoint/escape) "eec" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/line{ @@ -124708,7 +124723,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "eed" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -124720,10 +124735,10 @@ /turf/closed/wall, /area/security/checkpoint/escape) "eef" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -124732,10 +124747,10 @@ /area/security/checkpoint/escape) "eeg" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/door/airlock/security/glass{ @@ -124751,10 +124766,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "eeh" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -124762,17 +124777,17 @@ /turf/open/floor/plating, /area/security/checkpoint/escape) "eei" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/escape) "eej" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -124801,7 +124816,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/port/aft) "eeo" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/twohanded/required/kirbyplants/random, @@ -124811,7 +124826,7 @@ /turf/open/floor/plasteel, /area/maintenance/port/aft) "eep" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -124838,7 +124853,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "ees" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -124846,7 +124861,7 @@ /turf/open/floor/plating, /area/maintenance/port/aft) "eet" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -124889,7 +124904,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "eew" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/grimy, @@ -124902,9 +124917,9 @@ dir = 1; name = "Chapel Quarters APC"; areastring = "/area/chapel/office"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/table/wood, @@ -125051,7 +125066,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "eeI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -125078,7 +125093,7 @@ /area/security/checkpoint/escape) "eeK" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/folder/red, @@ -125152,7 +125167,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "eeP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red{ @@ -125361,7 +125376,7 @@ /turf/open/floor/carpet, /area/chapel/office) "efr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/chaplain, @@ -125402,7 +125417,7 @@ /area/hallway/secondary/exit/departure_lounge) "efu" = ( /obj/structure/table/reinforced, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/light{ @@ -125412,7 +125427,7 @@ areastring = "/area/security/checkpoint/escape"; dir = 8; name = "Departures Checkpoint APC"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/item/crowbar, @@ -125427,10 +125442,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efv" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -125450,23 +125465,23 @@ /area/security/checkpoint/escape) "efw" = ( /obj/machinery/holopad, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efx" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -125482,7 +125497,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efy" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -125501,7 +125516,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efz" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -125512,7 +125527,7 @@ /area/security/checkpoint/escape) "efA" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security/glass{ @@ -125528,7 +125543,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efB" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -125543,7 +125558,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efC" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -125562,13 +125577,13 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efD" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -125610,7 +125625,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "efG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -125836,7 +125851,7 @@ /obj/machinery/computer/prisoner{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red, @@ -125926,10 +125941,10 @@ /area/security/checkpoint/escape) "egp" = ( /obj/structure/table, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/item/restraints/handcuffs, @@ -125945,7 +125960,7 @@ /obj/structure/chair{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -125958,7 +125973,7 @@ /obj/structure/chair{ dir = 1 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/firealarm{ @@ -125980,11 +125995,11 @@ /turf/open/floor/plasteel, /area/security/checkpoint/escape) "egs" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -126023,17 +126038,17 @@ /area/security/checkpoint/escape) "egF" = ( /obj/structure/cable/white, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/checkpoint/escape) "egG" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -126055,7 +126070,7 @@ /turf/open/space, /area/solar/port/aft) "ehb" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, @@ -126151,7 +126166,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "ehL" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/loading_area{ @@ -126188,7 +126203,7 @@ req_one_access_txt = "12;47" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -126198,7 +126213,7 @@ /turf/open/floor/engine/vacuum, /area/science/mixing/chamber) "eCM" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple, @@ -126213,7 +126228,7 @@ /area/science/mixing/chamber) "eMD" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -126236,7 +126251,7 @@ /area/science/mixing) "eMS" = ( /obj/effect/turf_decal/delivery, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -126258,7 +126273,7 @@ /turf/open/floor/plasteel/dark, /area/science/mixing) "faI" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/twohanded/required/kirbyplants/random, @@ -126278,7 +126293,7 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/science) "fbA" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -126290,7 +126305,7 @@ /turf/open/floor/plating, /area/maintenance/port) "ffO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -126343,7 +126358,7 @@ /obj/machinery/airalarm/mixingchamber{ pixel_y = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -126377,7 +126392,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -126536,10 +126551,10 @@ /turf/open/floor/plasteel/dark, /area/engine/atmospherics_engine) "hcP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -126556,7 +126571,7 @@ /turf/open/floor/plating, /area/quartermaster/storage) "hrP" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -126591,10 +126606,10 @@ /turf/open/floor/plasteel/dark, /area/security/nuke_storage) "huX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable/white, @@ -126626,10 +126641,10 @@ /area/science/explab) "hGT" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/security/glass{ @@ -126654,7 +126669,7 @@ /obj/item/radio/intercom{ pixel_y = 26 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line{ @@ -126797,7 +126812,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -126864,9 +126879,9 @@ areastring = "/area/science/mixing/chamber"; dir = 4; name = "Toxins Chamber APC"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -126877,20 +126892,6 @@ }, /turf/open/floor/engine, /area/science/explab) -"jBE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/medical/morgue) "jEz" = ( /obj/machinery/camera{ c_tag = "Science - Lab Access"; @@ -126909,7 +126910,7 @@ /turf/open/floor/plasteel/white, /area/science/misc_lab/range) "jIk" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -126978,7 +126979,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -127065,7 +127066,7 @@ /area/engine/gravity_generator) "leh" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/highsecurity{ @@ -127153,14 +127154,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/science/research/abandoned) "lEm" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -127211,7 +127212,7 @@ /turf/open/floor/plating, /area/maintenance/port) "lXl" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable/white, @@ -127255,14 +127256,14 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, /area/science/mixing) "mvm" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -127359,7 +127360,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -127433,7 +127434,7 @@ /obj/effect/turf_decal/tile/purple{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, @@ -127447,7 +127448,7 @@ /turf/closed/wall/r_wall, /area/maintenance/disposal/incinerator) "nSN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -127473,7 +127474,7 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "oxa" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -127715,7 +127716,7 @@ }, /area/vacant_room/commissary) "pCE" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -127725,7 +127726,7 @@ /area/engine/storage_shared) "pQm" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/neutral{ @@ -127790,7 +127791,7 @@ name = "Maintenance Hatch"; req_access_txt = "12" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/barricade/wooden, @@ -127834,7 +127835,7 @@ /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -128007,7 +128008,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -128017,7 +128018,7 @@ /turf/open/floor/engine/vacuum, /area/science/mixing/chamber) "sfN" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -128088,13 +128089,13 @@ /obj/effect/turf_decal/tile/purple{ dir = 4 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, /area/science/mixing) "tkj" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -128115,7 +128116,6 @@ /turf/open/floor/plasteel, /area/vacant_room/commissary) "twt" = ( -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, @@ -128187,10 +128187,10 @@ areastring = "/area/vacant_room/commissary"; dir = 8; name = "Vacant Commissary APC"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/brown{ @@ -128255,7 +128255,7 @@ /turf/open/floor/plasteel/white, /area/maintenance/department/science) "uCc" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -128303,7 +128303,7 @@ /turf/open/floor/plasteel/dark, /area/science/mixing) "uPp" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -128340,7 +128340,7 @@ /area/hallway/primary/central) "vqo" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -128410,7 +128410,7 @@ dir = 1; name = "Gravity Generator APC"; areastring = "/area/engine/gravity_generator"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-2" @@ -128424,7 +128424,7 @@ /turf/open/floor/plasteel, /area/engine/gravity_generator) "vGX" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -128484,7 +128484,7 @@ /turf/closed/wall/r_wall, /area/science/misc_lab/range) "wBO" = ( -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -128657,9 +128657,9 @@ areastring = "/area/science/research/abandoned"; dir = 1; name = "Abandoned Research Lab APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable/white{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -169452,7 +169452,7 @@ dzR dAU dCA dDM -jBE +aaH dGl dHH iQh diff --git a/_maps/map_files/Donutstation/Donutstation.dmm b/_maps/map_files/Donutstation/Donutstation.dmm index 84382356397..9eba5f6a3f9 100644 --- a/_maps/map_files/Donutstation/Donutstation.dmm +++ b/_maps/map_files/Donutstation/Donutstation.dmm @@ -5,10 +5,6 @@ "aab" = ( /turf/closed/wall, /area/space/nearstation) -"aac" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/security/processing) "aad" = ( /turf/closed/wall/r_wall, /area/engine/engineering) @@ -23,44 +19,31 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hallway/primary/central) "aaf" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"aag" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 4; + name = "Gas to Cooling Loop" }, /obj/structure/cable/yellow{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"aag" = ( +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/fore) "aah" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/turf_decal/bot, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/machinery/light, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "aai" = ( /obj/effect/turf_decal/tile/red{ dir = 8 @@ -81,34 +64,16 @@ }, /area/hallway/secondary/exit/departure_lounge) "aaj" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/effect/turf_decal/bot, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/structure/sign/poster/contraband/power{ - pixel_y = 32 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/effect/mapping_helpers/dead_body_placer, +/turf/open/floor/plasteel/dark, +/area/medical/morgue) "aak" = ( /turf/closed/wall, /area/medical/morgue) "aal" = ( /obj/structure/lattice, /turf/open/space/basic, -/area/space) +/area/space/nearstation) "aam" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -128,20 +93,6 @@ dir = 4 }, /area/hallway/secondary/exit/departure_lounge) -"aan" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"aao" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aap" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -178,57 +129,60 @@ /turf/open/space/basic, /area/space/nearstation) "aat" = ( -/obj/structure/grille, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"aau" = ( -/obj/structure/lattice, -/turf/open/space/basic, -/area/space/nearstation) -"aav" = ( -/turf/open/floor/plating/airless, -/area/engine/engineering) -"aaw" = ( -/obj/structure/cable{ - icon_state = "2-8" +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 9 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"aav" = ( /obj/structure/cable{ icon_state = "4-8" }, -/obj/structure/cable{ - icon_state = "2-4" +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Engine Containment North"; - network = list("ss13","Engine","Engineering") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/plasteel, +/area/engine/engine_room) "aax" = ( -/obj/structure/grille, /obj/structure/cable{ - icon_state = "1-4" + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"aaz" = ( +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 1 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"aay" = ( /obj/structure/cable/yellow{ icon_state = "2-4" }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"aaz" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/turf/open/floor/plasteel, +/area/engine/engine_room) "aaA" = ( /obj/structure/falsewall{ name = "suspicious wall" @@ -261,17 +215,6 @@ }, /turf/open/space/basic, /area/space/nearstation) -"aaE" = ( -/obj/machinery/door/airlock/maintenance{ - req_one_access_txt = "12" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fore) "aaF" = ( /obj/structure/chair, /obj/effect/turf_decal/stripes/line{ @@ -280,16 +223,19 @@ /turf/open/floor/plating/airless, /area/space/nearstation) "aaG" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 6 }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/turf/open/floor/plasteel, +/area/engine/engine_room) "aaH" = ( -/turf/open/space/basic, -/area/engine/engineering) +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_room) "aaI" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -627,15 +573,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) -"abt" = ( -/obj/machinery/light/small, -/obj/machinery/camera/motion{ - c_tag = "Secure - AI Upload Front Access"; - dir = 1; - network = list("ss13","Secure") - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "abu" = ( /obj/machinery/light/small{ dir = 1 @@ -743,7 +680,6 @@ /area/quartermaster/miningdock) "abJ" = ( /obj/machinery/computer/med_data{ - icon_state = "computer"; dir = 8 }, /turf/open/floor/carpet, @@ -863,11 +799,14 @@ /turf/open/floor/plating, /area/maintenance/starboard) "abY" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "abZ" = ( /obj/machinery/computer/secure_data{ dir = 8 @@ -932,22 +871,10 @@ "ack" = ( /turf/open/floor/plasteel/freezer, /area/crew_quarters/fitness/recreation) -"acl" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "acm" = ( /obj/machinery/door/poddoor/incinerator_toxmix, /turf/open/floor/engine/vacuum, /area/science/mixing) -"acn" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aco" = ( /turf/closed/wall/r_wall, /area/science/mixing) @@ -1003,8 +930,8 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 +/obj/structure/cable/yellow{ + icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/fore) @@ -1035,20 +962,6 @@ }, /turf/open/floor/engine/vacuum, /area/science/mixing) -"acD" = ( -/obj/machinery/computer/teleporter, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/teleporter) "acE" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/atmos/toxins_mixing_input, /obj/machinery/sparker/toxmix{ @@ -1103,10 +1016,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/maintenance/port/aft) -"acM" = ( -/turf/open/space, -/area/engine/engineering) +/area/maintenance/fore) "acN" = ( /obj/structure/table, /obj/item/hand_labeler, @@ -1152,19 +1062,6 @@ "acQ" = ( /turf/closed/wall/r_wall, /area/crew_quarters/heads/hos) -"acR" = ( -/obj/structure/table/glass, -/obj/item/reagent_containers/glass/beaker/large{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/reagent_containers/glass/beaker{ - pixel_x = 8; - pixel_y = 2 - }, -/obj/item/reagent_containers/dropper, -/turf/open/floor/plasteel/white, -/area/science/lab) "acS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1266,8 +1163,7 @@ /area/science/storage) "adj" = ( /obj/machinery/atmospherics/pipe/layer_manifold{ - dir = 4; - icon_state = "manifoldlayer" + dir = 4 }, /turf/closed/wall/r_wall, /area/science/storage) @@ -1350,26 +1246,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"ads" = ( -/obj/machinery/power/apc{ - areastring = "/area/science/lab"; - dir = 1; - name = "Research Lab APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel/white, -/area/science/lab) -"adt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3, -/turf/open/floor/plasteel, -/area/science/storage) "adu" = ( /obj/structure/table/wood, /turf/open/floor/plasteel/chapel{ @@ -1517,18 +1393,6 @@ }, /turf/open/floor/plasteel, /area/science/mixing) -"adM" = ( -/obj/machinery/power/apc{ - areastring = "/area/science/mixing"; - dir = 1; - name = "Toxins Mixing APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plasteel/white, -/area/science/mixing) "adN" = ( /turf/open/floor/plasteel/white, /area/science/mixing) @@ -1536,7 +1400,6 @@ /turf/closed/wall, /area/crew_quarters/fitness) "adP" = ( -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -1655,7 +1518,6 @@ /area/chapel/office) "aec" = ( /obj/machinery/atmospherics/components/trinary/filter{ - icon_state = "filter_off"; dir = 1 }, /turf/open/floor/plasteel, @@ -1814,15 +1676,6 @@ "aew" = ( /turf/closed/wall/r_wall, /area/science/server) -"aex" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera{ - c_tag = "Research - Toxins Storage"; - dir = 2; - network = list("ss13","Research") - }, -/turf/open/floor/plasteel, -/area/science/storage) "aey" = ( /obj/structure/chair/stool, /obj/structure/disposalpipe/segment{ @@ -2002,9 +1855,6 @@ /obj/effect/spawner/lootdrop/techstorage/engineering, /turf/open/floor/plating, /area/storage/tech) -"aeZ" = ( -/turf/open/floor/plating, -/area/storage/tech) "afa" = ( /turf/closed/wall, /area/hydroponics) @@ -2231,18 +2081,6 @@ /obj/structure/closet/crate/hydroponics, /turf/open/floor/plasteel, /area/quartermaster/storage) -"afx" = ( -/obj/structure/cable/yellow{ - 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/fore) "afy" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, @@ -2254,7 +2092,6 @@ "afz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -2269,7 +2106,7 @@ network = list("AISat") }, /turf/open/space/basic, -/area/space) +/area/space/nearstation) "afB" = ( /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -2296,8 +2133,8 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, /turf/open/floor/plasteel, /area/hallway/primary/central) @@ -2565,7 +2402,6 @@ /area/medical/medbay/central) "agj" = ( /obj/machinery/atmospherics/components/unary/thermomachine/heater{ - icon_state = "heater"; dir = 4 }, /obj/effect/turf_decal/stripes/line{ @@ -2700,7 +2536,6 @@ "agx" = ( /obj/machinery/mass_driver{ name = "Holy Driver"; - icon_state = "mass_driver"; dir = 1; id = "chapelgun" }, @@ -2778,6 +2613,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 5 }, +/obj/structure/noticeboard{ + pixel_y = 32 + }, /turf/open/floor/plasteel/white, /area/crew_quarters/heads/hor) "agG" = ( @@ -2965,19 +2803,6 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) -"ahb" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/spawner/lootdrop/grille_or_trash, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "ahc" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -3058,12 +2883,6 @@ }, /turf/open/floor/plasteel/dark, /area/science/server) -"ahm" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/science/server) "ahn" = ( /obj/machinery/light/small{ dir = 4 @@ -3091,7 +2910,6 @@ /area/chapel/office) "ahr" = ( /obj/machinery/computer/robotics{ - icon_state = "computer"; dir = 4 }, /obj/structure/window/reinforced{ @@ -3132,9 +2950,6 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, /turf/open/floor/plating, /area/maintenance/fore) "ahv" = ( @@ -3199,18 +3014,6 @@ }, /turf/open/floor/plasteel/dark, /area/bridge) -"ahD" = ( -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/heads/captain/private"; - dir = 1; - name = "Captain's Private Quarters APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads/captain/private) "ahE" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel, @@ -3274,7 +3077,6 @@ /area/crew_quarters/heads/hor) "ahL" = ( /obj/machinery/computer/mecha{ - icon_state = "computer"; dir = 4 }, /obj/structure/window/reinforced{ @@ -3359,6 +3161,9 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "ahW" = ( @@ -3393,15 +3198,6 @@ }, /turf/open/floor/plasteel, /area/storage/tools) -"ahZ" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads/captain/private) "aia" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -3455,7 +3251,6 @@ /area/science/mixing) "aig" = ( /obj/machinery/computer/rdservercontrol{ - icon_state = "computer"; dir = 4 }, /turf/open/floor/plasteel/dark, @@ -3811,7 +3606,6 @@ /area/science/research) "ajd" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ - icon_state = "freezer_1"; dir = 8 }, /turf/open/floor/plasteel/dark, @@ -3930,18 +3724,6 @@ }, /turf/open/floor/plasteel/white, /area/science/mixing) -"ajn" = ( -/obj/machinery/power/apc{ - areastring = "/area/science/explab"; - dir = 1; - name = "Experimentation APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel/white, -/area/science/explab) "ajo" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -4014,21 +3796,6 @@ /obj/machinery/light/small, /turf/open/floor/plasteel/white, /area/science/research) -"ajw" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - North Containment Arm"; - dir = 2; - network = list("ss13","Engine","Engineering") - }, -/turf/open/floor/circuit, -/area/engine/engineering) "ajx" = ( /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, @@ -4046,10 +3813,6 @@ }, /turf/open/floor/plating, /area/crew_quarters/heads/hop) -"ajz" = ( -/obj/machinery/computer/cargo, -/turf/open/floor/wood, -/area/crew_quarters/heads/hop) "ajA" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -4152,7 +3915,6 @@ /area/bridge) "ajL" = ( /obj/machinery/computer/monitor{ - icon_state = "computer"; dir = 8 }, /obj/effect/turf_decal/tile/yellow{ @@ -4237,18 +3999,6 @@ "ajT" = ( /turf/closed/wall, /area/crew_quarters/heads/hos) -"ajU" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/security/prison"; - dir = 8; - name = "Prison APC"; - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/security/prison) "ajV" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -4338,10 +4088,6 @@ }, /turf/open/floor/plasteel, /area/security/prison) -"akf" = ( -/obj/machinery/suit_storage_unit/hos, -/turf/open/floor/carpet, -/area/crew_quarters/heads/hos) "akg" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -4402,8 +4148,8 @@ dir = 4 }, /obj/machinery/door/poddoor/preopen{ - id = "brigexternalblast"; - name = "External Security Blast Door" + id = "brigexternalblastentry"; + name = "External Security Entry Blast Door" }, /turf/open/floor/plasteel, /area/security/brig) @@ -4431,23 +4177,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"akn" = ( -/obj/item/reagent_containers/spray/plantbgone{ - pixel_y = 3 - }, -/obj/item/reagent_containers/spray/plantbgone{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/reagent_containers/spray/plantbgone{ - pixel_x = 13; - pixel_y = 5 - }, -/obj/item/watertank, -/obj/item/grenade/chem_grenade/antiweed, -/obj/structure/table/glass, -/turf/open/floor/plasteel, -/area/hydroponics) "ako" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -4458,12 +4187,6 @@ "akp" = ( /turf/open/floor/plasteel, /area/hydroponics) -"akq" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "akr" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -4506,18 +4229,6 @@ /obj/structure/cable, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/aft) -"akz" = ( -/obj/machinery/power/apc{ - areastring = "/area/hydroponics"; - dir = 1; - name = "Hydroponics APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel, -/area/hydroponics) "akA" = ( /obj/machinery/door/firedoor, /obj/structure/cable/yellow{ @@ -4538,18 +4249,6 @@ }, /turf/open/floor/plasteel, /area/science/research) -"akB" = ( -/obj/machinery/power/apc{ - areastring = "/area/science/research"; - dir = 2; - name = "Science Main APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/maintenance/port/fore) "akC" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -4572,10 +4271,12 @@ }, /obj/structure/disposalpipe/sorting/mail{ dir = 4; - icon_state = "pipe-j1s"; name = "sorting disposal pipe (Bar)"; sortType = 19 }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "akE" = ( @@ -4751,7 +4452,6 @@ /area/hydroponics) "akV" = ( /obj/machinery/computer/rdconsole/core{ - icon_state = "computer"; dir = 8 }, /obj/effect/turf_decal/stripes/line{ @@ -4769,7 +4469,6 @@ /area/crew_quarters/bar) "akX" = ( /obj/machinery/computer/prisoner{ - icon_state = "computer"; dir = 8 }, /obj/machinery/light{ @@ -4815,32 +4514,13 @@ /turf/open/floor/plasteel, /area/crew_quarters/bar) "alc" = ( -/obj/structure/lattice, -/turf/open/space, -/area/engine/engineering) -"ald" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/closed/wall, -/area/maintenance/fore) +/obj/structure/sign/warning/fire, +/turf/closed/wall/r_wall, +/area/engine/supermatter) "ale" = ( /obj/machinery/seed_extractor, /turf/open/floor/plasteel, /area/hydroponics) -"alf" = ( -/obj/machinery/power/emitter{ - icon_state = "emitter"; - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) "alg" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -4850,31 +4530,21 @@ }, /turf/open/floor/plasteel, /area/security/prison) -"alh" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/effect/turf_decal/bot, -/obj/structure/cable, -/turf/open/floor/plating/airless, -/area/engine/engineering) "alj" = ( /obj/effect/turf_decal/stripes/line{ - dir = 9 + dir = 4 }, -/obj/item/disk/holodisk/donutstation/enginewars, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm" + }, +/turf/open/floor/plating, +/area/engine/supermatter) "alk" = ( /turf/closed/wall, /area/storage/tools) @@ -4886,14 +4556,6 @@ /obj/structure/chair, /turf/open/floor/plasteel, /area/crew_quarters/bar) -"alm" = ( -/obj/machinery/chem_master/condimaster{ - desc = "Looks like a knock-off chem-master. Perhaps useful for separating liquids when mixing drinks precisely. Also dispenses condiments."; - name = "HoochMaster Deluxe"; - pixel_x = -4 - }, -/turf/open/floor/wood, -/area/crew_quarters/bar) "aln" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -4926,18 +4588,12 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/bar) -"alr" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "als" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/engine, +/area/engine/supermatter) "alu" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -4948,23 +4604,14 @@ /area/crew_quarters/bar) "alv" = ( /obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-2" + icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/effect/turf_decal/bot, -/obj/structure/cable, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/plasteel, +/area/engine/engine_room) "alw" = ( -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -4979,17 +4626,6 @@ /obj/structure/closet/secure_closet/warden, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) -"aly" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"alz" = ( -/obj/effect/turf_decal/delivery, -/obj/machinery/the_singularitygen, -/turf/open/floor/plating/airless, -/area/engine/engineering) "alA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -5003,12 +4639,6 @@ }, /turf/open/floor/plasteel/white, /area/science/lab) -"alB" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "alC" = ( /obj/machinery/teleport/station, /obj/effect/turf_decal/tile/neutral, @@ -5032,11 +4662,16 @@ /area/teleporter) "alD" = ( /obj/effect/turf_decal/stripes/line{ - dir = 10 + dir = 4 }, -/obj/item/screwdriver, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm" + }, +/turf/open/floor/plating, +/area/engine/supermatter) "alE" = ( /obj/machinery/conveyor_switch/oneway{ id = "robo1" @@ -5093,58 +4728,26 @@ /obj/item/toy/figure/detective, /turf/open/floor/carpet, /area/security/detectives_office) -"alK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/medical/morgue) -"alL" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/item/wrench, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"alM" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "alN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ +/obj/structure/lattice, +/obj/machinery/camera/autoname{ dir = 1 }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) +/turf/open/space/basic, +/area/space/nearstation) "alO" = ( /obj/effect/turf_decal/delivery, /obj/machinery/computer/cargo, /obj/machinery/button/door{ dir = 2; - id = "cargounload"; + id = "cargoload"; layer = 4; name = "Loading Doors"; pixel_x = 8; pixel_y = 24 }, /obj/machinery/button/door{ - id = "cargoload"; + id = "cargounload"; layer = 4; name = "Loading Doors"; pixel_x = -8; @@ -5158,63 +4761,6 @@ "alP" = ( /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) -"alQ" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/cable/yellow, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"alR" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"alS" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/space/basic, -/area/space/nearstation) -"alT" = ( -/obj/machinery/door/airlock/external{ - name = "External Engine Access Airlock"; - req_access_txt = "32" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"alU" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "alV" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -5238,10 +4784,12 @@ }, /obj/structure/disposalpipe/sorting/mail{ dir = 4; - icon_state = "pipe-j1s"; name = "sorting disposal pipe (Kitchen)"; sortType = 20 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "alX" = ( @@ -5349,25 +4897,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/primary/central) -"amj" = ( -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/heads/captain"; - dir = 1; - name = "Captain's Office APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/newscaster/security_unit{ - pixel_x = -32 - }, -/obj/machinery/door/window/southleft{ - name = "Suit Access"; - req_access_txt = "20" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads/captain) "amk" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -5452,24 +4981,13 @@ /obj/item/lighter, /turf/open/floor/plasteel, /area/crew_quarters/bar) -"amt" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) "amu" = ( -/obj/structure/grille, -/obj/structure/cable{ +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/plasteel, +/area/engine/engine_room) "amv" = ( /obj/machinery/vending/hydronutrients, /obj/effect/turf_decal/tile/green{ @@ -5480,34 +4998,9 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"amw" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) "amx" = ( /turf/open/floor/plating, /area/engine/engineering) -"amy" = ( -/obj/effect/turf_decal/delivery, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"amz" = ( -/obj/structure/particle_accelerator/particle_emitter/right{ - icon_state = "emitter_right"; - dir = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) "amA" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -5518,21 +5011,9 @@ /turf/open/floor/plasteel, /area/hydroponics) "amB" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"amC" = ( -/obj/structure/particle_accelerator/particle_emitter/left{ - icon_state = "emitter_left"; - dir = 1 - }, -/turf/open/floor/plating, -/area/engine/engineering) +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_room) "amD" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -5565,28 +5046,8 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "amH" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/space/basic, -/area/space/nearstation) -"amI" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/space/basic, -/area/space/nearstation) -"amJ" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "amK" = ( /obj/machinery/door/airlock{ name = "Mass Driver"; @@ -5598,27 +5059,21 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "amL" = ( -/obj/effect/turf_decal/delivery, -/obj/structure/cable/yellow{ - icon_state = "0-8" +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/structure/cable{ + icon_state = "1-2" }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "amM" = ( /obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, /turf/open/floor/plating, /area/maintenance/fore) -"amN" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) "amO" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -5629,40 +5084,13 @@ "amP" = ( /turf/closed/wall/r_wall, /area/crew_quarters/kitchen) -"amQ" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/teleporter"; - dir = 1; - name = "Teleporter APC"; - pixel_y = 24 - }, -/turf/open/floor/plasteel/dark, -/area/teleporter) -"amR" = ( -/obj/machinery/power/emitter{ - icon_state = "emitter"; - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) "amS" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/engine/engine_room) "amT" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -5842,7 +5270,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "anl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/head_of_personnel, @@ -5928,36 +5356,13 @@ dir = 5 }, /area/crew_quarters/kitchen) -"anw" = ( -/obj/machinery/door/airlock/external{ - name = "External Engine Access Airlock"; - req_access_txt = "32" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "anx" = ( /obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/sign/warning/electricshock{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/fore) -"any" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/turf/open/space/basic, -/area/space/nearstation) "anz" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -5965,13 +5370,6 @@ }, /turf/open/space/basic, /area/space/nearstation) -"anA" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/space/basic, -/area/space/nearstation) "anB" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -5998,30 +5396,16 @@ }, /turf/open/space/basic, /area/space/nearstation) -"anE" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "1-8" +"anG" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Engineering Maintenance Access"; + req_access_txt = "10" }, -/turf/open/space/basic, -/area/space/nearstation) -"anF" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/space/basic, -/area/space/nearstation) -"anG" = ( -/obj/machinery/suit_storage_unit/engine, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) +/turf/open/floor/plating, +/area/maintenance/department/engine) "anH" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -6031,13 +5415,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"anI" = ( -/obj/structure/tank_dispenser, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "anJ" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -6073,31 +5450,6 @@ initial_gas_mix = "n2o=1000;TEMP=293.15" }, /area/engine/atmos) -"anN" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"anO" = ( -/obj/structure/grille, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"anP" = ( -/turf/open/floor/circuit, -/area/engine/engineering) "anQ" = ( /obj/structure/sign/warning/docking{ pixel_x = 32 @@ -6139,14 +5491,6 @@ }, /turf/open/floor/plasteel, /area/quartermaster/warehouse) -"anW" = ( -/obj/machinery/camera{ - c_tag = "Secure - EVA"; - dir = 8; - network = list("ss13","Secure") - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) "anX" = ( /turf/closed/wall/r_wall, /area/ai_monitored/nuke_storage) @@ -6177,18 +5521,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) -"aoc" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "aod" = ( /obj/structure/table, /turf/open/floor/plating, @@ -6260,8 +5592,8 @@ dir = 4 }, /obj/machinery/door/poddoor/preopen{ - id = "brigexternalblast"; - name = "External Security Blast Door" + id = "brigexternalblastentry"; + name = "External Security Entry Blast Door" }, /turf/open/floor/plasteel, /area/security/brig) @@ -6329,19 +5661,22 @@ /area/maintenance/starboard) "aoq" = ( /obj/effect/turf_decal/stripes/line{ - dir = 8 + dir = 1 }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/engineering) "aor" = ( /turf/open/floor/plasteel, /area/engine/engineering) -"aos" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aot" = ( /obj/effect/turf_decal/tile/green, /obj/effect/turf_decal/tile/green{ @@ -6352,20 +5687,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"aou" = ( -/obj/machinery/vending/engivend, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aov" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -6389,19 +5710,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"aoy" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aoz" = ( /obj/effect/turf_decal/tile/green{ dir = 1 @@ -6482,18 +5790,6 @@ }, /turf/open/floor/plating, /area/hydroponics) -"aoG" = ( -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/maintenance/fore"; - dir = 1; - name = "Fore Maintenance APC"; - pixel_y = 24 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "aoH" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -6504,20 +5800,7 @@ }, /obj/structure/window/reinforced, /turf/open/floor/plating, -/area/maintenance/port/aft) -"aoI" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) +/area/maintenance/fore) "aoJ" = ( /obj/effect/turf_decal/tile/green, /obj/effect/turf_decal/tile/green{ @@ -6544,13 +5827,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"aoL" = ( -/obj/machinery/particle_accelerator/control_box, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aoM" = ( /obj/machinery/camera{ c_tag = "Research - Main 4"; @@ -6603,24 +5879,6 @@ }, /turf/open/floor/plating, /area/security/checkpoint/science) -"aoQ" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aoR" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -6635,28 +5893,6 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/heads/cmo) -"aoS" = ( -/obj/item/stack/sheet/plasteel{ - amount = 10; - pixel_x = -2; - pixel_y = 2 - }, -/obj/structure/table, -/obj/item/stack/sheet/rglass{ - amount = 30; - pixel_x = 2; - pixel_y = -2 - }, -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plasteel{ - dir = 1 - }, -/area/engine/engineering) "aoT" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -6677,19 +5913,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/dorms) "aoU" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/machinery/vending/tool, -/turf/open/floor/plasteel, -/area/engine/engineering) +/obj/machinery/suit_storage_unit/ce, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel/white, +/area/crew_quarters/heads/chief) "aoV" = ( /obj/structure/dresser, /turf/open/floor/wood, @@ -6717,12 +5944,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"apa" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "apb" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -6769,34 +5990,38 @@ /turf/open/floor/plasteel/white, /area/science/research) "apf" = ( -/obj/machinery/modular_computer/console/preset/engineering, -/obj/machinery/requests_console{ - announcementConsole = 0; - department = "Engineering"; - departmentType = 4; - name = "Engineering RC"; - pixel_y = 30 +/obj/effect/turf_decal/tile/yellow{ + dir = 1 }, -/obj/structure/cable{ - icon_state = "0-4" +/obj/effect/turf_decal/tile/yellow{ + dir = 4 }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating, +/turf/open/floor/plasteel, /area/engine/engineering) "apg" = ( -/obj/structure/cable{ - icon_state = "4-8" +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "aph" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/cable/yellow{ icon_state = "1-2" }, -/turf/open/floor/plating, -/area/engine/engineering) +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) "api" = ( /obj/structure/window/reinforced{ dir = 1; @@ -6854,55 +6079,17 @@ }, /turf/open/floor/plasteel, /area/quartermaster/warehouse) -"apm" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "apn" = ( -/obj/effect/turf_decal/bot{ - dir = 1 +/obj/effect/turf_decal/delivery, +/obj/machinery/door/poddoor{ + id = "Secure Storage"; + name = "Engineering Secure Storage" }, -/obj/machinery/power/port_gen/pacman, -/obj/effect/turf_decal/stripes/line, -/obj/item/stack/sheet/mineral/plasma{ - amount = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"apo" = ( -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/obj/structure/closet/crate/solarpanel_small, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, +/turf/open/floor/plating, /area/engine/engineering) "app" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty, -/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/item/stack/sheet/glass/fifty, -/obj/item/crowbar, -/obj/item/grenade/chem_grenade/smart_metal_foam, -/obj/item/grenade/chem_grenade/smart_metal_foam, -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plasteel{ - dir = 1 - }, +/obj/structure/closet/crate/solarpanel_small, +/turf/open/floor/plating, /area/engine/engineering) "apq" = ( /obj/effect/landmark/start/station_engineer, @@ -6925,23 +6112,6 @@ }, /turf/open/floor/plasteel, /area/security/prison) -"aps" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Engine Containment West"; - dir = 4; - network = list("ss13","Engine","Engineering") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "apt" = ( /obj/structure/table, /obj/item/kitchen/rollingpin, @@ -6950,23 +6120,7 @@ }, /area/crew_quarters/kitchen) "apu" = ( -/obj/structure/table, -/obj/effect/turf_decal/delivery, -/obj/machinery/cell_charger, -/obj/item/stock_parts/cell/high{ - charge = 100; - maxcharge = 15000 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"apv" = ( -/obj/structure/table, -/obj/effect/turf_decal/delivery, -/obj/item/storage/box/lights/mixed, -/obj/item/storage/box/lights/mixed{ - pixel_x = 3; - pixel_y = 3 - }, +/obj/structure/closet/secure_closet/engineering_electrical, /turf/open/floor/plasteel, /area/engine/engineering) "apw" = ( @@ -6976,54 +6130,54 @@ }, /area/crew_quarters/kitchen) "apx" = ( -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/tank/internals/emergency_oxygen/engi, -/obj/item/tank/internals/emergency_oxygen/engi, -/obj/effect/turf_decal/delivery, -/obj/structure/table, -/turf/open/floor/plasteel, -/area/engine/engineering) -"apy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/airlock/engineering/glass{ + name = "Supermatter Engine Room"; + req_access_txt = "10" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, /obj/structure/cable/yellow{ - icon_state = "4-8" + icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/circuit, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/turf/open/floor/plasteel/dark, /area/engine/engineering) "apz" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"apA" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ +/obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"apB" = ( -/obj/effect/turf_decal/stripes/corner{ +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ +/obj/effect/turf_decal/tile/neutral, +/obj/structure/closet/secure_closet/engineering_chief, +/obj/machinery/light_switch{ + pixel_x = 28; + pixel_y = -8 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"apC" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"apC" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/effect/turf_decal/stripes/line{ - dir = 9 +/obj/effect/turf_decal/tile/yellow, +/obj/machinery/camera{ + c_tag = "Engineering - Job Equipment"; + dir = 2; + network = list("ss13","Engineering","Engine") + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -7047,55 +6201,24 @@ /area/engine/engineering) "apG" = ( /obj/machinery/light/small{ - brightness = 3; + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ dir = 8 }, -/turf/open/floor/plating, -/area/engine/engineering) -"apH" = ( -/obj/structure/table, -/obj/item/airlock_painter{ - pixel_x = 2; - pixel_y = 2 +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 }, -/obj/effect/turf_decal/delivery, -/obj/structure/disposalpipe/segment, -/obj/item/airlock_painter, -/turf/open/floor/plasteel, -/area/engine/engineering) -"apI" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/obj/machinery/suit_storage_unit/engine, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) "apJ" = ( /obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/security/prison) -"apK" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/sign/warning/electricshock{ - pixel_y = 32 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "apL" = ( /obj/structure/cable/yellow{ icon_state = "1-4" @@ -7106,8 +6229,17 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "apM" = ( -/obj/effect/turf_decal/delivery, -/obj/structure/closet/radiation, +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/engineering) "apN" = ( @@ -7120,18 +6252,9 @@ "apO" = ( /turf/closed/wall/r_wall, /area/crew_quarters/heads/chief) -"apP" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "apQ" = ( -/obj/structure/closet/firecloset, -/obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, +/obj/structure/table, +/obj/item/stack/rods/fifty, /turf/open/floor/plasteel, /area/engine/engineering) "apR" = ( @@ -7187,10 +6310,19 @@ /turf/open/floor/plasteel/white, /area/science/research) "apY" = ( -/obj/structure/closet/firecloset, -/obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/stripes/line{ - dir = 10 +/obj/structure/table, +/obj/item/clothing/gloves/color/yellow, +/obj/item/stock_parts/cell/high/plus, +/obj/item/stock_parts/cell/high/plus{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -7240,10 +6372,12 @@ }, /obj/structure/disposalpipe/sorting/mail{ dir = 4; - icon_state = "pipe-j1s"; name = "sorting disposal pipe (Theatre)"; sortType = 18 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aqf" = ( @@ -7332,7 +6466,6 @@ dir = 1 }, /obj/machinery/power/terminal{ - icon_state = "term"; dir = 8 }, /obj/structure/cable{ @@ -7390,21 +6523,17 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/dorms) "aqs" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aqt" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 }, +/obj/item/stack/cable_coil, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/machinery/light, /turf/open/floor/plasteel, /area/engine/engineering) -"aqu" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aqv" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -7552,27 +6681,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) -"aqN" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/power/apc{ - areastring = "/area/hallway/secondary/exit/departure_lounge"; - dir = 1; - name = "Departures APC"; - pixel_y = 24 - }, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "aqO" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light{ @@ -7620,7 +6728,6 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aqT" = ( -/obj/machinery/food_cart, /obj/machinery/firealarm{ dir = 4; pixel_x = -24 @@ -7688,23 +6795,6 @@ /obj/machinery/status_display, /turf/closed/wall/r_wall, /area/teleporter) -"ara" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Engine Containment East"; - dir = 8; - network = list("ss13","Engine","Engineering") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "arb" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -7971,17 +7061,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "arB" = ( -/obj/machinery/field/generator, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 1 }, -/turf/open/floor/plating, -/area/engine/engineering) -"arC" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, +/turf/open/floor/plasteel, /area/engine/engineering) "arD" = ( /obj/effect/turf_decal/tile/neutral{ @@ -7999,24 +7082,14 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "arE" = ( -/obj/structure/closet/crate, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/rods/fifty, -/obj/item/stack/sheet/glass/fifty, -/obj/item/electronics/airlock, -/obj/item/electronics/airlock, -/obj/item/stock_parts/cell/high{ - charge = 100; - maxcharge = 15000 +/obj/effect/turf_decal/bot{ + dir = 1 }, -/obj/item/stack/sheet/mineral/plasma{ - amount = 30 - }, -/obj/item/gps, -/obj/effect/turf_decal/stripes/line{ +/obj/structure/window/reinforced{ dir = 8 }, -/turf/open/floor/plating, +/obj/structure/closet/secure_closet/engineering_personal, +/turf/open/floor/plasteel, /area/engine/engineering) "arF" = ( /obj/effect/turf_decal/tile/yellow, @@ -8039,36 +7112,6 @@ /obj/structure/window/reinforced, /turf/open/floor/plating, /area/storage/tools) -"arH" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/structure/disposalpipe/sorting/mail{ - dir = 4; - icon_state = "pipe-j1s"; - name = "sorting disposal pipe (Atmospherics)"; - sortType = 6 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"arI" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/effect/landmark/start/station_engineer, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plasteel, -/area/engine/engineering) "arJ" = ( /obj/effect/turf_decal/tile/yellow{ dir = 1 @@ -8092,6 +7135,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "arL" = ( @@ -8105,22 +7151,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/storage/tools) -"arN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "arO" = ( /obj/machinery/porta_turret/ai{ dir = 4 @@ -8187,7 +7217,6 @@ /area/medical/virology) "arW" = ( /obj/machinery/computer/rdconsole/production{ - icon_state = "computer"; dir = 8 }, /obj/effect/turf_decal/tile/yellow, @@ -8281,7 +7310,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) "asf" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/structure/cable/yellow{ @@ -8289,7 +7318,7 @@ }, /obj/machinery/button/door{ id = "brigexternalblast"; - name = "External Blast Door Toggle"; + name = "Brig Cell Blast Door Toggle"; pixel_x = -6; pixel_y = 30 }, @@ -8300,6 +7329,11 @@ pixel_y = 30 }, /obj/effect/landmark/start/warden, +/obj/machinery/button/door{ + id = "brigexternalblastentry"; + name = "External Blast Door Toggle"; + pixel_y = 38 + }, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "asg" = ( @@ -8388,10 +7422,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) -"aso" = ( -/obj/machinery/computer/monitor, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/service) "asp" = ( /obj/item/grenade/barrier{ pixel_x = 4 @@ -8582,24 +7612,6 @@ /obj/machinery/vending/cigarette, /turf/open/floor/plasteel, /area/engine/atmos) -"asI" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/disposalpipe/sorting/mail{ - dir = 4; - icon_state = "pipe-j1s"; - name = "sorting disposal pipe (Custodial)"; - sortType = 22 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "asJ" = ( /obj/machinery/vending/coffee, /turf/open/floor/plasteel, @@ -9037,7 +8049,7 @@ /turf/open/floor/plating, /area/storage/tech) "atI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/lawyer, @@ -9081,10 +8093,6 @@ }, /turf/open/floor/plating, /area/lawoffice) -"atN" = ( -/obj/machinery/photocopier, -/turf/open/floor/wood, -/area/lawoffice) "atO" = ( /obj/machinery/door/airlock/hatch{ name = "TeleSat Space Access Airlock"; @@ -9185,6 +8193,9 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engine/atmos) "aua" = ( @@ -9214,11 +8225,9 @@ /obj/machinery/atmospherics/components/binary/pump/on{ name = "Waste to Filter" }, -/turf/open/floor/plasteel, -/area/engine/atmos) -"auc" = ( -/obj/machinery/atmospherics/pipe/simple/purple/visible{ - dir = 5 +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Mix to Engine" }, /turf/open/floor/plasteel, /area/engine/atmos) @@ -9243,10 +8252,6 @@ /obj/structure/lattice/catwalk, /turf/open/space/basic, /area/space/nearstation) -"auh" = ( -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space) "aui" = ( /obj/machinery/atmospherics/components/binary/pump{ name = "Air to Mix" @@ -9301,7 +8306,6 @@ /area/crew_quarters/dorms) "aun" = ( /obj/machinery/computer/holodeck{ - icon_state = "computer"; dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -9421,30 +8425,6 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/fitness/recreation) -"auA" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/security/checkpoint"; - dir = 8; - name = "Docks Checkpoint APC"; - pixel_x = -24 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint) "auB" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -10000,28 +8980,6 @@ /obj/structure/grille, /turf/open/space/basic, /area/space/nearstation) -"avQ" = ( -/obj/machinery/light, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Hallway - Escape Left Wing 1"; - dir = 1; - network = list("ss13") - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit/departure_lounge) "avR" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -10096,7 +9054,18 @@ /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 8 }, -/turf/closed/wall/r_wall, +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating, /area/engine/atmos) "avY" = ( /obj/effect/turf_decal/tile/red{ @@ -10112,19 +9081,6 @@ "avZ" = ( /turf/open/floor/plating, /area/construction/mining/aux_base) -"awa" = ( -/obj/machinery/power/apc/highcap/ten_k{ - areastring = "/area/janitor"; - dir = 8; - name = "Custodial Closet APC"; - pixel_x = -26 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/effect/turf_decal/delivery, -/turf/open/floor/plating, -/area/maintenance/aft) "awb" = ( /obj/effect/turf_decal/tile/yellow{ dir = 8 @@ -10371,7 +9327,6 @@ }, /obj/structure/sign/directions/command{ dir = 4; - icon_state = "direction_bridge"; pixel_x = 30; pixel_y = 24 }, @@ -10381,7 +9336,6 @@ }, /obj/structure/sign/directions/security{ dir = 4; - icon_state = "direction_sec"; pixel_x = 30; pixel_y = 32 }, @@ -10441,6 +9395,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/hallway/primary/central) "awL" = ( @@ -10952,6 +9907,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/item/pipe_dispenser, /turf/open/floor/plasteel, /area/engine/atmos) "axU" = ( @@ -10973,10 +9929,6 @@ /obj/machinery/meter, /turf/open/floor/plasteel, /area/engine/atmos) -"axW" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall/r_wall, -/area/engine/atmos) "axX" = ( /obj/machinery/atmospherics/components/trinary/mixer{ dir = 1; @@ -11193,13 +10145,18 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + name = "Atmospherics Lockdown" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/atmos) "ayu" = ( -/obj/machinery/pipedispenser, /obj/effect/turf_decal/stripes/line{ dir = 10 }, +/obj/structure/closet/radiation, /turf/open/floor/plasteel, /area/engine/atmos) "ayv" = ( @@ -11224,10 +10181,10 @@ /obj/item/radio/intercom{ pixel_y = 28 }, -/obj/machinery/pipedispenser/disposal/transit_tube, /obj/effect/turf_decal/stripes/line{ dir = 6 }, +/obj/structure/closet/radiation, /turf/open/floor/plasteel, /area/engine/atmos) "ayy" = ( @@ -11278,12 +10235,6 @@ initial_gas_mix = "co2=1000;TEMP=293.15" }, /area/engine/atmos) -"ayE" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/security/brig) "ayF" = ( /obj/machinery/air_sensor/atmos/carbon_tank, /turf/open/floor/engine/co2{ @@ -11335,8 +10286,7 @@ /area/engine/atmos) "ayL" = ( /obj/machinery/atmospherics/pipe/layer_manifold{ - dir = 4; - icon_state = "manifoldlayer" + dir = 4 }, /turf/closed/wall/r_wall, /area/engine/atmos) @@ -11608,8 +10558,7 @@ /area/teleporter) "azq" = ( /obj/machinery/atmospherics/pipe/layer_manifold{ - dir = 4; - icon_state = "manifoldlayer" + dir = 4 }, /turf/open/floor/plating, /area/engine/atmos) @@ -11885,56 +10834,12 @@ }, /turf/open/floor/plasteel/dark, /area/bridge) -"azT" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "azU" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible{ dir = 4 }, /turf/open/floor/plasteel, /area/medical/cryo) -"azV" = ( -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) -"azW" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"azX" = ( -/obj/machinery/computer/security/telescreen{ - name = "Engine Monitor"; - network = list("Engine"); - pixel_y = 32 - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Right SMES Bank"; - network = list("ss13","Engineering") - }, -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"azY" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3, -/turf/open/floor/plasteel, -/area/engine/engineering) "azZ" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -11956,13 +10861,6 @@ dir = 9 }, /area/science/research) -"aAb" = ( -/obj/machinery/field/generator, -/obj/machinery/light/small{ - dir = 4 - }, -/turf/open/floor/plating, -/area/engine/engineering) "aAc" = ( /turf/closed/wall, /area/maintenance/aft) @@ -12040,17 +10938,23 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "aAm" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ +/obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 +/obj/effect/turf_decal/tile/neutral{ + dir = 1 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" +/obj/effect/turf_decal/tile/neutral{ + dir = 8 }, -/turf/open/floor/plasteel, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/computer/station_alert{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, /area/engine/engineering) "aAn" = ( /turf/closed/wall, @@ -12162,7 +11066,6 @@ dir = 4 }, /obj/structure/disposalpipe/junction/flip{ - icon_state = "pipe-j2"; dir = 4 }, /turf/open/floor/plasteel, @@ -12172,10 +11075,12 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/sorting/mail{ dir = 1; - icon_state = "pipe-j1s"; name = "sorting disposal pipe (Head of Personnel)"; sortType = 15 }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aAB" = ( @@ -12227,7 +11132,6 @@ /area/crew_quarters/heads/hop) "aAE" = ( /obj/machinery/modular_computer/console/preset/command{ - icon_state = "console"; dir = 8 }, /obj/effect/turf_decal/tile/green, @@ -12408,7 +11312,6 @@ dir = 4 }, /obj/machinery/computer/med_data{ - icon_state = "computer"; dir = 8 }, /turf/open/floor/plasteel/dark, @@ -12711,19 +11614,7 @@ "aBH" = ( /obj/machinery/rnd/production/techfab/department/service, /turf/open/floor/plating, -/area/maintenance/port/aft) -"aBI" = ( -/obj/machinery/power/terminal{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/circuit, -/area/engine/engineering) +/area/maintenance/fore) "aBJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, @@ -12733,22 +11624,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/science/xenobiology) -"aBK" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aBL" = ( /obj/machinery/door/airlock/highsecurity{ name = "AI Upload Access"; @@ -13396,21 +12271,6 @@ }, /turf/open/floor/plating, /area/solar/starboard) -"aDf" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/item/storage/toolbox/emergency, -/obj/item/storage/toolbox/emergency{ - pixel_x = 2; - pixel_y = 2 - }, -/turf/open/floor/plasteel, -/area/bridge) "aDg" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -13432,15 +12292,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"aDi" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "aDj" = ( /obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/tile/neutral{ @@ -13522,10 +12373,6 @@ }, /turf/open/floor/plasteel/cafeteria, /area/hallway/primary/central) -"aDr" = ( -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/engine/engineering) "aDs" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -13548,29 +12395,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) -"aDt" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/item/folder/red, -/turf/open/floor/plasteel, -/area/security/checkpoint/medical) -"aDu" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/electricshock{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "aDv" = ( /obj/structure/closet/crate, /obj/item/kitchen/fork, @@ -13694,6 +12518,9 @@ dir = 4 }, /obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aDM" = ( @@ -13705,19 +12532,6 @@ }, /turf/open/floor/engine/airless, /area/engine/atmos) -"aDN" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - West Containment Arm"; - dir = 4; - network = list("ss13","Engine","Engineering") - }, -/turf/open/floor/circuit, -/area/engine/engineering) "aDO" = ( /obj/machinery/door/airlock/research{ name = "Research Division Access"; @@ -13845,7 +12659,6 @@ /area/security/processing) "aEc" = ( /obj/machinery/computer/security/labor{ - icon_state = "computer"; dir = 4 }, /turf/open/floor/plasteel, @@ -14036,7 +12849,6 @@ /area/security/brig) "aEs" = ( /obj/machinery/computer/gulag_teleporter_computer{ - icon_state = "computer"; dir = 4 }, /obj/machinery/gulag_item_reclaimer{ @@ -14050,16 +12862,6 @@ }, /turf/open/floor/plasteel, /area/security/processing) -"aEu" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/turf/open/floor/plasteel/dark, -/area/bridge) "aEv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -14148,6 +12950,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aEG" = ( @@ -14235,12 +13040,12 @@ /area/ai_monitored/security/armory) "aEM" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/e_gun/advtaser, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, @@ -14575,10 +13380,6 @@ }, /turf/open/floor/plasteel/white, /area/security/brig) -"aFt" = ( -/obj/structure/closet/secure_closet/freezer/cream_pie, -/turf/open/floor/wood, -/area/crew_quarters/theatre) "aFu" = ( /obj/structure/chair/comfy/brown{ dir = 4 @@ -14755,18 +13556,6 @@ }, /turf/open/floor/plating, /area/science/research) -"aFJ" = ( -/obj/structure/table/glass, -/obj/item/storage/box/rxglasses, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/storage/box/disks{ - pixel_x = 3; - pixel_y = 3 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) "aFK" = ( /obj/machinery/vending/wardrobe/gene_wardrobe, /turf/open/floor/plasteel/white, @@ -14942,7 +13731,6 @@ /area/security/prison) "aGd" = ( /obj/structure/bodycontainer/morgue{ - icon_state = "morgue1"; dir = 1 }, /turf/open/floor/plasteel/dark, @@ -15119,10 +13907,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"aGy" = ( -/obj/structure/chair, -/turf/open/floor/plasteel/white, -/area/medical/medbay/lobby) "aGz" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -15193,17 +13977,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/storage) -"aGG" = ( -/obj/structure/closet/secure_closet/hop, -/obj/machinery/light/small{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Bridge - Head of Personnel's Private Quarters"; - dir = 4 - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads/hop) "aGH" = ( /obj/structure/cable/yellow{ icon_state = "2-8" @@ -15220,13 +13993,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/genetics/cloning) -"aGJ" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/circuit, -/area/engine/engineering) "aGK" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -15332,9 +14098,9 @@ /turf/open/floor/plating, /area/medical/chemistry) "aGV" = ( -/obj/effect/turf_decal/delivery, -/obj/structure/closet/radiation, -/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, /turf/open/floor/plasteel, /area/engine/engineering) "aGW" = ( @@ -15348,9 +14114,11 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/sorting/mail{ name = "sorting disposal pipe (Research)"; - sortType = 0; sortTypes = list(12,24,25) }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aGY" = ( @@ -15495,18 +14263,6 @@ /obj/structure/window/reinforced, /turf/open/floor/plating, /area/medical/sleeper) -"aHl" = ( -/obj/structure/table/glass, -/obj/item/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = 7; - pixel_y = 1 - }, -/obj/item/reagent_containers/glass/beaker/cryoxadone{ - pixel_x = 7; - pixel_y = 1 - }, -/turf/open/floor/plasteel, -/area/medical/cryo) "aHm" = ( /obj/machinery/atmospherics/components/unary/cryo_cell, /turf/open/floor/plasteel, @@ -15565,15 +14321,6 @@ }, /turf/open/floor/plasteel/white, /area/science/research) -"aHr" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aHs" = ( /obj/structure/grille, /obj/structure/window/reinforced, @@ -15633,6 +14380,12 @@ name = "sorting disposal pipe (Research Director)"; sortType = 13 }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aHx" = ( @@ -15673,17 +14426,16 @@ /turf/open/floor/plasteel/white, /area/medical/storage) "aHD" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 10 }, -/obj/structure/cable/yellow{ - icon_state = "2-8" +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Gas to Mix" }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/turf/open/floor/plasteel, +/area/engine/engine_room) "aHE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/white, @@ -15797,42 +14549,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/white, /area/medical/storage) -"aHR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"aHS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aHT" = ( /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ @@ -15840,27 +14556,6 @@ }, /turf/open/floor/plasteel, /area/security/checkpoint/medical) -"aHU" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/engine/engineering) "aHV" = ( /obj/machinery/vending/medical{ pixel_x = -2 @@ -15916,12 +14611,6 @@ /obj/machinery/vending/wardrobe/viro_wardrobe, /turf/open/floor/plasteel/white, /area/medical/virology) -"aIf" = ( -/obj/machinery/sleeper{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/medical/sleeper) "aIg" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ @@ -15967,23 +14656,6 @@ }, /turf/open/floor/plasteel, /area/medical/cryo) -"aIm" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/engine/engineering) "aIn" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -16002,15 +14674,6 @@ "aIp" = ( /turf/open/floor/plasteel/white, /area/medical/chemistry) -"aIq" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aIr" = ( /obj/structure/chair/office/light{ dir = 4 @@ -16018,19 +14681,6 @@ /obj/effect/landmark/start/depsec/science, /turf/open/floor/plasteel, /area/security/checkpoint/science) -"aIs" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - East Containment Arm"; - dir = 8; - network = list("ss13","Engine","Engineering") - }, -/turf/open/floor/circuit, -/area/engine/engineering) "aIt" = ( /obj/machinery/chem_master, /obj/effect/turf_decal/tile/yellow{ @@ -16158,29 +14808,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/virology) -"aIG" = ( -/obj/machinery/dna_scannernew, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics) -"aIH" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aII" = ( /obj/machinery/smartfridge/chemistry, /turf/closed/wall, @@ -16224,33 +14851,6 @@ /obj/effect/landmark/start/roboticist, /turf/open/floor/plasteel, /area/science/robotics/lab) -"aIO" = ( -/obj/machinery/computer/med_data, -/obj/machinery/power/apc{ - areastring = "/area/medical/sleeper"; - dir = 1; - name = "Sleepers APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel/white, -/area/medical/sleeper) -"aIP" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/machinery/power/apc{ - areastring = "/area/medical/cryo"; - dir = 1; - name = "Cryogenics APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel, -/area/medical/cryo) "aIQ" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16262,22 +14862,19 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "aIS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ +/obj/effect/turf_decal/delivery, +/obj/machinery/door/poddoor{ + id = "Secure Storage"; + name = "Engineering Secure Storage" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/cable/yellow{ - icon_state = "0-2" +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 }, /turf/open/floor/plating, -/area/crew_quarters/heads/chief) +/area/engine/engineering) "aIT" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, @@ -16441,6 +15038,9 @@ name = "sorting disposal pipe (Xenobiology)"; sortType = 28 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aJl" = ( @@ -16450,6 +15050,9 @@ name = "sorting disposal pipe (Medical)"; sortType = 9 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aJm" = ( @@ -16472,6 +15075,9 @@ name = "sorting disposal pipe (Genetics)"; sortType = 23 }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aJn" = ( @@ -16573,7 +15179,6 @@ req_access_txt = "5" }, /obj/effect/mapping_helpers/airlock/unres{ - icon_state = "airlock_unres_helper"; dir = 8 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ @@ -16631,7 +15236,6 @@ dir = 8 }, /obj/machinery/computer/card/minor/cmo{ - icon_state = "computer"; dir = 8 }, /turf/open/floor/plasteel/cafeteria, @@ -17180,10 +15784,16 @@ /area/crew_quarters/dorms) "aKQ" = ( /obj/structure/cable/yellow{ - icon_state = "1-8" + icon_state = "4-8" }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "aKR" = ( /obj/structure/cable/yellow{ icon_state = "1-4" @@ -17250,34 +15860,6 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) -"aKZ" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/dorms"; - dir = 2; - name = "Sleeping Quarters APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"aLa" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/storage) "aLb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -17521,18 +16103,12 @@ /turf/open/floor/engine/cult, /area/library) "aLM" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/librarian, /turf/open/floor/carpet, /area/library) -"aLN" = ( -/obj/structure/closet/secure_closet/detective, -/obj/item/camera_film, -/obj/item/camera_film, -/turf/open/floor/carpet, -/area/security/detectives_office) "aLO" = ( /obj/machinery/libraryscanner, /turf/open/floor/carpet, @@ -17554,21 +16130,6 @@ /obj/machinery/bookbinder, /turf/open/floor/wood, /area/library) -"aLT" = ( -/obj/machinery/computer/aifixer{ - icon_state = "computer"; - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/machinery/camera{ - c_tag = "Research - Research Director's Office"; - dir = 2; - network = list("ss13","Research") - }, -/turf/open/floor/plasteel/cafeteria, -/area/crew_quarters/heads/hor) "aLU" = ( /obj/structure/table/wood, /obj/item/camera, @@ -17772,16 +16333,6 @@ /obj/structure/window/reinforced, /turf/open/floor/plating, /area/hydroponics/garden) -"aMs" = ( -/obj/structure/rack, -/obj/item/storage/bag/plants/portaseeder, -/obj/item/plant_analyzer, -/obj/item/plant_analyzer{ - pixel_x = 2; - pixel_y = 2 - }, -/turf/open/floor/grass, -/area/hydroponics/garden) "aMt" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -17919,23 +16470,6 @@ }, /turf/open/floor/plating, /area/hydroponics/garden) -"aMK" = ( -/obj/structure/rack, -/obj/item/gun/energy/ionrifle, -/obj/item/gun/energy/temperature/security, -/obj/item/clothing/suit/armor/laserproof, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/security/armory) "aML" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/brigdoor/eastright{ @@ -17999,24 +16533,6 @@ "aMQ" = ( /turf/closed/wall, /area/janitor) -"aMR" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aMS" = ( /obj/effect/landmark/start/librarian, /turf/open/floor/engine/cult, @@ -18040,10 +16556,6 @@ "aMU" = ( /turf/open/floor/plasteel, /area/janitor) -"aMV" = ( -/obj/machinery/vending/wardrobe/jani_wardrobe, -/turf/open/floor/plasteel, -/area/janitor) "aMW" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -18056,12 +16568,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/port/fore) -"aMY" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/bridge) "aMZ" = ( /obj/structure/reagent_dispensers/watertank, /obj/effect/turf_decal/bot, @@ -18077,21 +16583,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"aNb" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Particle Accelerator"; - dir = 8; - network = list("ss13","Engine","Engineering") - }, -/turf/open/floor/plating, -/area/engine/engineering) -"aNc" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 2 - }, -/obj/item/toy/figure/engineer, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aNd" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -18181,18 +16672,6 @@ "aNl" = ( /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/foyer) -"aNm" = ( -/obj/machinery/power/apc{ - areastring = "/area/ai_monitored/turret_protected/aisat/service"; - dir = 8; - name = "MiniSat Service APC"; - pixel_x = -27 - }, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/service) "aNn" = ( /obj/structure/grille, /obj/structure/window/reinforced, @@ -18236,16 +16715,6 @@ "aNq" = ( /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/foyer) -"aNr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/mob/living/simple_animal/bot/cleanbot, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/service) "aNs" = ( /obj/machinery/computer/teleporter{ dir = 1 @@ -18253,30 +16722,17 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/foyer) "aNt" = ( -/obj/machinery/computer/apc_control{ - icon_state = "computer"; - dir = 4 +/obj/machinery/power/emitter, +/obj/machinery/camera{ + c_tag = "Engineering - Secure Storage"; + dir = 4; + network = list("ss13","Engineering","Engine") }, -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/light/small{ dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/item/radio/intercom{ - pixel_x = -28 - }, -/obj/machinery/computer/security/telescreen{ - name = "Telecomms/Engineering Monitor"; - network = list("Telecom","Engine","Engineering"); - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads/chief) +/turf/open/floor/plating, +/area/engine/engineering) "aNu" = ( /obj/machinery/teleport/hub, /turf/open/floor/plasteel/dark, @@ -18295,24 +16751,6 @@ "aNw" = ( /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai) -"aNx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "aishutters"; - name = "AI privacy shutters" - }, -/turf/open/floor/plating, -/area/ai_monitored/turret_protected/ai) "aNy" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -18416,16 +16854,7 @@ icon_state = "2-4" }, /turf/open/space/basic, -/area/ai_monitored/turret_protected/ai) -"aNK" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) +/area/space/nearstation) "aNL" = ( /obj/structure/closet/secure_closet/security, /obj/effect/turf_decal/tile/red{ @@ -18467,27 +16896,6 @@ }, /turf/open/floor/plating, /area/medical/chemistry) -"aNP" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aNQ" = ( /obj/structure/chair/office/light{ dir = 1 @@ -18504,23 +16912,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/genetics) -"aNR" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Particle Accelerator Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aNS" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible, /obj/structure/cable/yellow{ @@ -18529,27 +16920,24 @@ /turf/open/floor/plasteel, /area/medical/cryo) "aNT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/airlock/engineering/glass{ + name = "Supermatter Engine Room"; + req_access_txt = "10" }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/structure/cable/yellow{ - icon_state = "4-8" + icon_state = "1-2" }, -/obj/structure/cable/yellow{ - icon_state = "0-4" +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/machinery/door/poddoor/preopen{ + id = "supermatter_external"; + name = "Supermatter External Blast Door" }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/engine/engineering) +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) "aNU" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -18763,10 +17151,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/security/courtroom) -"aOs" = ( -/obj/machinery/photocopier, -/turf/open/floor/wood, -/area/library) "aOt" = ( /turf/open/floor/plasteel/dark, /area/security/courtroom) @@ -19035,23 +17419,10 @@ /area/security/courtroom) "aOZ" = ( /obj/machinery/computer/card/minor/hos{ - icon_state = "computer"; dir = 1 }, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) -"aPa" = ( -/obj/machinery/power/apc{ - areastring = "/area/chapel/main"; - dir = 8; - name = "Chapel Main APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "aPb" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -19162,6 +17533,10 @@ }, /obj/structure/window/reinforced, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + name = "Atmospherics Lockdown" + }, /turf/open/floor/plasteel, /area/engine/atmos) "aPr" = ( @@ -19173,6 +17548,11 @@ name = "Atmospherics Desk"; req_access_txt = "24" }, +/obj/structure/disposalpipe/segment, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + name = "Atmospherics Lockdown" + }, /turf/open/floor/plasteel, /area/engine/atmos) "aPs" = ( @@ -19206,8 +17586,11 @@ }, /obj/structure/window/reinforced, /obj/machinery/atmospherics/pipe/layer_manifold{ - dir = 4; - icon_state = "manifoldlayer" + dir = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "atmos"; + name = "Atmospherics Lockdown" }, /turf/open/floor/plasteel, /area/engine/atmos) @@ -19565,24 +17948,13 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /turf/open/floor/plasteel, /area/quartermaster/warehouse) -"aQg" = ( -/obj/structure/table, -/obj/effect/turf_decal/delivery, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aQh" = ( -/obj/machinery/sleeper{ - dir = 1 - }, /obj/machinery/camera{ c_tag = "Medical - Sleeper Bay"; dir = 1; network = list("ss13","Medical") }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/sleeper) "aQi" = ( @@ -19632,14 +18004,12 @@ /turf/closed/wall, /area/quartermaster/warehouse) "aQn" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/rack, -/obj/item/storage/belt/utility, -/obj/item/storage/belt/utility{ - pixel_x = 2; - pixel_y = 2 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 }, -/obj/item/clothing/head/welding, /turf/open/floor/plasteel, /area/engine/engineering) "aQo" = ( @@ -19762,7 +18132,8 @@ "aQA" = ( /obj/machinery/door/airlock/medical/glass{ name = "Hydroponics"; - req_access_txt = "35" + req_access_txt = "0"; + req_one_access_txt = "35;28" }, /turf/open/floor/plasteel, /area/hydroponics) @@ -19830,6 +18201,7 @@ dir = 1 }, /obj/effect/landmark/start/atmospheric_technician, +/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/atmos) "aQH" = ( @@ -19907,7 +18279,6 @@ /area/space/nearstation) "aQR" = ( /obj/machinery/computer/station_alert{ - icon_state = "computer"; dir = 4 }, /obj/effect/turf_decal/tile/yellow{ @@ -19918,7 +18289,7 @@ }, /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = -30 }, @@ -19951,16 +18322,6 @@ /obj/structure/lattice/catwalk, /turf/open/space/basic, /area/solar/aft) -"aQW" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 24 - }, -/turf/open/floor/plating, -/area/engine/engineering) "aQX" = ( /obj/structure/girder, /obj/structure/grille, @@ -20039,18 +18400,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"aRf" = ( -/obj/machinery/power/apc/highcap/ten_k{ - areastring = "/area/engine/atmos"; - dir = 8; - name = "Atmospherics APC"; - pixel_x = -26 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel, -/area/engine/atmos) "aRg" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -20109,16 +18458,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"aRm" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aRn" = ( /obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/tile/neutral{ @@ -20152,6 +18491,9 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aRq" = ( @@ -20183,15 +18525,27 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aRs" = ( -/obj/structure/rack, -/obj/item/clothing/glasses/meson{ - pixel_x = -2; - pixel_y = -2 +/obj/effect/landmark/start/station_engineer, +/obj/structure/disposalpipe/segment{ + dir = 6 }, -/obj/item/clothing/glasses/meson, -/obj/item/clothing/glasses/meson{ - pixel_x = 2; - pixel_y = 2 +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -20234,24 +18588,9 @@ /turf/open/floor/plating, /area/maintenance/fore) "aRx" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"aRy" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/circuit, -/area/engine/engineering) +/obj/structure/reflector/box/anchored, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "aRz" = ( /obj/structure/bed, /obj/effect/landmark/start/virologist, @@ -20263,67 +18602,12 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"aRB" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"aRC" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/turf/open/floor/plating, -/area/hallway/primary/central) "aRD" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 +/obj/machinery/door/airlock/maintenance{ + req_one_access_txt = "12" }, /turf/open/floor/plating, -/area/hallway/primary/central) -"aRE" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"aRF" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plating, -/area/hallway/primary/central) -"aRG" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/turf/open/floor/plating, -/area/hallway/primary/central) +/area/maintenance/department/engine) "aRH" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -20339,7 +18623,6 @@ /area/maintenance/port/fore) "aRI" = ( /obj/machinery/computer/atmos_alert{ - icon_state = "computer"; dir = 4 }, /obj/effect/turf_decal/tile/yellow{ @@ -20384,12 +18667,6 @@ }, /turf/open/floor/plasteel, /area/engine/atmos) -"aRN" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/circuit, -/area/engine/engineering) "aRO" = ( /obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/tile/neutral{ @@ -20417,11 +18694,12 @@ /turf/open/floor/plating, /area/maintenance/starboard) "aRS" = ( -/obj/structure/sign/warning/radiation/rad_area{ +/obj/machinery/suit_storage_unit/open, +/obj/structure/sign/warning/nosmoking{ pixel_y = 32 }, -/turf/open/floor/plating, -/area/engine/engineering) +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) "aRT" = ( /obj/docking_port/stationary{ dir = 4; @@ -20491,15 +18769,12 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "aSc" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Containment Access"; - req_access_txt = "10" - }, /obj/structure/cable/yellow{ - icon_state = "1-2" + icon_state = "1-4" }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "aSd" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -20624,12 +18899,6 @@ }, /turf/open/floor/plasteel, /area/engine/atmos) -"aSp" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/circuit, -/area/engine/engineering) "aSq" = ( /obj/machinery/atmospherics/pipe/manifold/cyan/visible{ dir = 1 @@ -20823,8 +19092,7 @@ "aSN" = ( /obj/machinery/atmospherics/components/trinary/filter/flipped, /obj/effect/decal/cleanable/dirt, -/obj/machinery/button/ignition{ - id = "Incinerator"; +/obj/machinery/button/ignition/incinerator/atmos{ pixel_x = -6; pixel_y = -24 }, @@ -20946,9 +19214,7 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/machinery/igniter{ - id = "Incinerator" - }, +/obj/machinery/igniter/incinerator_atmos, /obj/machinery/air_sensor{ pixel_x = -32; pixel_y = -32 @@ -21016,18 +19282,6 @@ }, /turf/open/floor/plasteel/dark, /area/medical/morgue) -"aTm" = ( -/obj/machinery/power/apc{ - areastring = "/area/ai_monitored/storage/eva"; - dir = 1; - name = "EVA APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/maintenance/fore) "aTn" = ( /obj/machinery/atmospherics/pipe/layer_manifold, /obj/structure/plasticflaps/opaque, @@ -21036,13 +19290,10 @@ "aTo" = ( /obj/machinery/door/airlock/medical/glass{ name = "Service Door"; - req_one_access_txt = "35;28" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" + req_one_access_txt = "22;25;26;28;35;37;38;46" }, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "aTp" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/on{ dir = 8; @@ -21083,18 +19334,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"aTt" = ( -/obj/machinery/power/apc{ - areastring = "/area/storage/tools"; - dir = 1; - name = "Aux Tool Storage APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "aTu" = ( /obj/structure/cable/yellow{ icon_state = "1-4" @@ -21137,33 +19376,6 @@ }, /turf/open/floor/plasteel, /area/storage/tools) -"aTw" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"aTx" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/library/lounge"; - dir = 2; - name = "Lounge APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/fore) "aTy" = ( /obj/effect/turf_decal/bot_white/left, /obj/structure/closet/crate/silvercrate, @@ -21179,16 +19391,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) -"aTz" = ( -/obj/machinery/power/apc{ - areastring = "/area/lawoffice"; - dir = 2; - name = "Lawyer's Office APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "aTA" = ( /obj/structure/closet/crate, /obj/effect/spawner/lootdrop/maintenance{ @@ -21213,7 +19415,7 @@ /turf/open/floor/plating, /area/maintenance/starboard) "aTD" = ( -/obj/machinery/sleeper, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/sleeper) "aTE" = ( @@ -21246,61 +19448,42 @@ }, /turf/open/floor/plating, /area/maintenance/department/security) -"aTH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "enginepashutter"; - name = "particle accelerator shutters" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/engine/engineering) "aTI" = ( -/obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral{ - dir = 8 + dir = 4 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, /obj/effect/turf_decal/tile/neutral, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"aTJ" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/item/flashlight/lamp, -/obj/machinery/button/door{ - id = "enginesecurestorage"; - name = "Secure Storage Control"; - pixel_x = -8; - pixel_y = 24; - req_access_txt = "56" +/obj/effect/turf_decal/tile/neutral{ + dir = 8 }, -/obj/machinery/button/door{ - id = "enginepashutter"; - name = "Particle Accelerator Shutter Control"; - pixel_x = 2; - pixel_y = 24; - req_access_txt = "56" +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/door/window/northright{ + name = "Engineering Delivery Access"; + req_access_txt = "10" }, /turf/open/floor/plasteel, -/area/crew_quarters/heads/chief) -"aTJ" = ( -/obj/effect/turf_decal/delivery, -/obj/machinery/door/poddoor{ - id = "enginesecurestorage"; - name = "Secure Storage" - }, -/turf/open/floor/plating, /area/engine/engineering) "aTK" = ( /obj/effect/turf_decal/tile/neutral{ @@ -21322,123 +19505,42 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aTL" = ( -/obj/machinery/power/apc/highcap/ten_k{ - dir = 8; - name = "Engine Room APC"; - areastring = "/area/engine/engineering"; - pixel_x = -26 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aTM" = ( -/obj/machinery/computer/card/minor/ce{ - icon_state = "computer"; - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/requests_console{ - announcementConsole = 1; - department = "Chief Engineer's Desk"; - departmentType = 3; - name = "Chief Engineer RC"; - pixel_x = -32 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads/chief) -"aTN" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aTO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aTP" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aTQ" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 + dir = 6 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aTR" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Engineering Storage"; - req_access_txt = "32" - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aTS" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"aTO" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"aTS" = ( +/obj/machinery/vending/wardrobe/engi_wardrobe, +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engine/engineering) "aTT" = ( @@ -21458,8 +19560,11 @@ /turf/open/floor/plasteel/white, /area/science/research) "aTU" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/door/window/northleft{ + name = "Engineering Storage"; + req_access_txt = "10" }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -21471,10 +19576,8 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/lobby) "aTW" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 9 - }, -/turf/open/floor/plasteel, +/obj/machinery/power/port_gen/pacman, +/turf/open/floor/plating, /area/engine/engineering) "aTX" = ( /obj/structure/table/glass, @@ -21582,12 +19685,6 @@ }, /turf/open/floor/plating, /area/maintenance/port/fore) -"aUf" = ( -/obj/structure/table/glass, -/obj/item/reagent_containers/glass/beaker/cryoxadone, -/obj/item/reagent_containers/glass/beaker/cryoxadone, -/turf/open/floor/plasteel, -/area/medical/cryo) "aUg" = ( /obj/structure/table, /obj/item/book/manual/hydroponics_pod_people, @@ -21672,20 +19769,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"aUq" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Engine Containment South"; - dir = 1; - network = list("ss13","Engine","Engineering") - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "aUr" = ( /obj/machinery/biogenerator, /obj/effect/decal/cleanable/dirt, @@ -21713,25 +19796,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/lobby) -"aUu" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/item/radio/intercom{ - broadcasting = 1; - frequency = 1485; - listening = 0; - name = "Station Intercom (Medbay)"; - pixel_x = -30 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/lobby) "aUv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -21740,9 +19804,11 @@ dir = 5 }, /obj/structure/disposalpipe/junction/yjunction{ - icon_state = "pipe-y"; dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aUw" = ( @@ -21958,28 +20024,12 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"aUN" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ +"aUO" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"aUO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/machinery/vending/engivend, /turf/open/floor/plasteel, /area/engine/engineering) "aUP" = ( @@ -22003,91 +20053,34 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"aUS" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "aUT" = ( -/obj/effect/turf_decal/tile/yellow{ +/obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4 }, /turf/open/floor/plasteel, /area/engine/engineering) "aUU" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/light, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 +/obj/effect/turf_decal/tile/yellow{ + dir = 1 }, /turf/open/floor/plasteel, /area/engine/engineering) "aUV" = ( -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/computer/card/minor/ce{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/requests_console{ + announcementConsole = 1; + department = "Chief Engineer's Desk"; + departmentType = 4; + name = "Chief Engineer RC"; + pixel_y = -32 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/rack, -/obj/item/twohanded/rcl/pre_loaded, -/obj/item/clothing/glasses/meson{ - pixel_x = -2; - pixel_y = -2 - }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/crew_quarters/heads/chief) -"aUW" = ( -/obj/structure/closet/secure_closet/engineering_welding, -/obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aUX" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"aUY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/engine/engineering) "aUZ" = ( /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -22264,19 +20257,6 @@ }, /turf/open/floor/plasteel, /area/construction/mining/aux_base) -"aVq" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plasteel, -/area/engine/engineering) "aVr" = ( /obj/structure/rack, /obj/item/electronics/airlock, @@ -22317,18 +20297,6 @@ }, /turf/open/floor/plasteel, /area/construction/mining/aux_base) -"aVu" = ( -/obj/structure/table, -/obj/item/stack/sheet/plasteel{ - amount = 10 - }, -/obj/item/stack/rods/fifty, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/construction/mining/aux_base) "aVv" = ( /obj/effect/turf_decal/tile/yellow{ dir = 1 @@ -22389,59 +20357,7 @@ }, /turf/open/floor/plasteel/white, /area/science/lab) -"aVB" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/item/paper/monitorkey, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3, -/turf/open/floor/plasteel, -/area/crew_quarters/heads/chief) -"aVC" = ( -/obj/machinery/computer/station_alert{ - icon_state = "computer"; - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/heads/chief) "aVD" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/machinery/keycard_auth{ - pixel_x = -24; - pixel_y = -24 - }, /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "aVE" = ( @@ -22577,6 +20493,9 @@ dir = 9 }, /obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aVP" = ( @@ -22598,18 +20517,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"aVR" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "aVS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22665,7 +20572,6 @@ req_access_txt = "5" }, /obj/effect/mapping_helpers/airlock/unres{ - icon_state = "airlock_unres_helper"; dir = 8 }, /turf/open/floor/plasteel/white, @@ -22823,11 +20729,12 @@ }, /obj/structure/disposalpipe/sorting/mail{ dir = 4; - icon_state = "pipe-j1s"; name = "sorting disposal pipe (Security)"; - sortType = 0; sortTypes = list(7,8) }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aWi" = ( @@ -22838,6 +20745,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aWj" = ( @@ -22881,6 +20791,9 @@ /obj/structure/cable/yellow{ icon_state = "1-2" }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aWn" = ( @@ -22898,18 +20811,6 @@ /obj/structure/cable/yellow, /turf/open/floor/plating, /area/security/main) -"aWo" = ( -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/security/warden"; - dir = 1; - name = "Warden's Office APC"; - pixel_y = 24 - }, -/turf/open/floor/plasteel/showroomfloor, -/area/security/warden) "aWp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -22938,21 +20839,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/main) -"aWr" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - areastring = "/area/security/processing"; - dir = 1; - name = "Labor Processing APC"; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/security/processing) "aWs" = ( /obj/machinery/door/airlock/security/glass{ name = "Equipment Room"; @@ -23129,24 +21015,6 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/security/main) -"aWG" = ( -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/security/main"; - dir = 1; - name = "Security Office APC"; - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/security/main) "aWH" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel/showroomfloor, @@ -23322,12 +21190,6 @@ }, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) -"aWZ" = ( -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/carpet, -/area/crew_quarters/heads/hos) "aXa" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/blue{ @@ -23675,16 +21537,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"aXB" = ( -/obj/machinery/power/apc{ - areastring = "/area/medical/chemistry"; - dir = 8; - name = "Chemistry APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plasteel/white, -/area/medical/chemistry) "aXC" = ( /obj/machinery/door/firedoor, /obj/structure/disposalpipe/segment{ @@ -23760,18 +21612,6 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"aXK" = ( -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/heads/cmo"; - dir = 8; - name = "CMO's Office APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "aXL" = ( /obj/machinery/holopad, /turf/open/floor/plasteel, @@ -23799,18 +21639,6 @@ }, /turf/open/floor/plating, /area/medical/medbay/lobby) -"aXO" = ( -/obj/machinery/power/apc{ - areastring = "/area/medical/medbay/central"; - dir = 1; - name = "Medical Main APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/maintenance/port) "aXP" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 @@ -23820,18 +21648,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"aXQ" = ( -/obj/machinery/power/apc{ - areastring = "/area/medical/surgery"; - dir = 1; - name = "Surgery APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/maintenance/port) "aXR" = ( /obj/effect/turf_decal/tile/blue{ dir = 1 @@ -24055,10 +21871,10 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "aYo" = ( -/obj/machinery/sleeper, /obj/machinery/firealarm{ pixel_y = 24 }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/sleeper) "aYp" = ( @@ -24240,7 +22056,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/atmos) "aYC" = ( @@ -24283,20 +22098,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"aYH" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/security/courtroom"; - dir = 8; - name = "Courtroom APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/department/security) "aYI" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -24470,19 +22271,10 @@ /turf/open/floor/plating, /area/maintenance/department/security) "aZd" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow{ +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ dir = 4 }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/engine/engineering) "aZe" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -24565,9 +22357,11 @@ dir = 4 }, /obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aZn" = ( @@ -24580,6 +22374,9 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 6 + }, /turf/open/floor/plasteel, /area/engine/atmos) "aZo" = ( @@ -25235,14 +23032,17 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "baq" = ( -/obj/structure/sign/warning/nosmoking/circle{ - pixel_y = -32 - }, /obj/machinery/camera{ c_tag = "Atmospherics - Front Desk"; dir = 1; network = list("ss13","Atmospherics") }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = -25 + }, /turf/open/floor/plasteel, /area/engine/atmos) "bar" = ( @@ -25683,33 +23483,6 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"bbq" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/department/security) -"bbr" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/department/security) "bbs" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ @@ -25770,33 +23543,6 @@ }, /turf/open/floor/plasteel/dark, /area/engine/gravity_generator) -"bbC" = ( -/obj/machinery/computer/bank_machine, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/bot_white, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/ai_monitored/nuke_storage"; - dir = 1; - name = "Vault APC"; - pixel_y = 24 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/nuke_storage) "bbD" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -25833,20 +23579,6 @@ "bbH" = ( /turf/open/floor/plating, /area/construction) -"bbI" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/glass/fifty, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/turf/open/floor/plasteel, -/area/construction/mining/aux_base) "bbJ" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -26068,37 +23800,6 @@ /obj/effect/decal/cleanable/cobweb, /turf/open/floor/plating, /area/maintenance/aft) -"bch" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"bci" = ( -/obj/structure/grille, -/obj/structure/window/reinforced, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "bcj" = ( /obj/effect/turf_decal/bot_white/right, /obj/structure/closet/crate/goldcrate, @@ -26140,23 +23841,6 @@ }, /turf/open/floor/circuit, /area/ai_monitored/nuke_storage) -"bco" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "bcp" = ( /obj/effect/turf_decal/bot_white/right, /obj/machinery/ore_silo, @@ -26189,29 +23873,6 @@ }, /turf/open/floor/plating, /area/maintenance/aft) -"bcr" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"bcs" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/circuit, -/area/engine/engineering) "bct" = ( /turf/open/floor/circuit, /area/ai_monitored/nuke_storage) @@ -26231,21 +23892,6 @@ }, /turf/open/floor/plating, /area/ai_monitored/nuke_storage) -"bcv" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "bcw" = ( /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -26448,13 +24094,20 @@ /turf/open/floor/plating, /area/maintenance/department/security) "bcP" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - dir = 6 +/obj/machinery/atmospherics/pipe/simple/cyan/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/window/reinforced{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 6 +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 }, -/turf/closed/wall/r_wall, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating, /area/engine/atmos) "bcQ" = ( /obj/machinery/door/airlock/maintenance{ @@ -26492,17 +24145,12 @@ lootcount = 3; name = "3maintenance loot spawner" }, +/obj/machinery/camera{ + c_tag = "Civilian - Disposals Waste Management"; + dir = 4 + }, /turf/open/floor/plating, /area/maintenance/disposal) -"bcU" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 9 - }, -/turf/closed/wall/r_wall, -/area/engine/atmos) "bcV" = ( /obj/structure/chair, /obj/machinery/light/small{ @@ -26519,6 +24167,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/atmos) "bcX" = ( @@ -26735,9 +24384,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -22 +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 }, /turf/open/floor/plasteel/cafeteria{ dir = 5 @@ -27174,12 +24824,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/genetics/cloning) -"bex" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel/white, -/area/medical/virology) "bey" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27213,7 +24857,6 @@ req_access_txt = "5; 68" }, /obj/effect/mapping_helpers/airlock/unres{ - icon_state = "airlock_unres_helper"; dir = 8 }, /obj/structure/cable/yellow{ @@ -27549,17 +25192,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"bfg" = ( -/obj/machinery/smartfridge/chemistry/virology/preloaded, -/obj/effect/turf_decal/tile/green, -/obj/effect/turf_decal/tile/green{ - dir = 8 - }, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) "bfh" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -27569,6 +25201,7 @@ name = "Bar Access"; req_access_txt = "25" }, +/obj/machinery/light, /turf/open/floor/plasteel, /area/crew_quarters/bar) "bfi" = ( @@ -27683,22 +25316,6 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"bfr" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/power/apc{ - areastring = "/area/quartermaster/warehouse"; - dir = 1; - name = "Cargo Warehouse APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/starboard) "bfs" = ( /obj/structure/closet/secure_closet/personal/patient, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ @@ -27774,12 +25391,6 @@ }, /turf/open/floor/plasteel, /area/construction/mining/aux_base) -"bfz" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit/departure_lounge) "bfA" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -27922,28 +25533,6 @@ }, /turf/open/space/basic, /area/space) -"bfL" = ( -/obj/machinery/light, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/machinery/camera{ - c_tag = "Hallway - Escape Right Wing 1"; - dir = 1; - network = list("ss13") - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit/departure_lounge) "bfM" = ( /obj/machinery/vending/coffee, /turf/open/floor/plasteel/white, @@ -27956,12 +25545,6 @@ /obj/machinery/vending/cigarette, /turf/open/floor/plasteel/white, /area/hallway/secondary/exit/departure_lounge) -"bfP" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/exit/departure_lounge) "bfQ" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -27976,11 +25559,11 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bfR" = ( -/obj/machinery/door/airlock/maintenance{ - req_one_access_txt = "12;35" +/obj/machinery/food_cart, +/turf/open/floor/plasteel/cafeteria{ + dir = 5 }, -/turf/open/floor/plating, -/area/maintenance/port/aft) +/area/crew_quarters/kitchen) "bfS" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -27999,21 +25582,6 @@ }, /turf/open/floor/plating, /area/hydroponics) -"bfU" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bfV" = ( /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -28030,23 +25598,12 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bfW" = ( -/obj/structure/chair/office/light{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/landmark/start/chief_engineer, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 5 +/obj/structure/table/reinforced, +/obj/item/paper_bin{ + pixel_x = -3; + pixel_y = 7 }, +/obj/item/pen, /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "bfX" = ( @@ -28168,12 +25725,17 @@ dir = 4; network = list("ss13","Bar Area") }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -22 + }, /turf/open/floor/carpet, /area/crew_quarters/theatre) "bgj" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/atmos) "bgk" = ( @@ -28204,37 +25766,6 @@ /obj/machinery/light, /turf/open/floor/plasteel, /area/security/main) -"bgn" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"bgo" = ( -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/theatre"; - dir = 2; - name = "Theatre APC"; - pixel_y = -24 - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "bgp" = ( /obj/machinery/vending/wardrobe/chef_wardrobe, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, @@ -28308,8 +25839,9 @@ "bgy" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/turf/open/floor/plating, -/area/maintenance/port/aft) +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "bgz" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 @@ -28485,7 +26017,6 @@ /area/medical/virology) "bgR" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - icon_state = "freezer"; dir = 4 }, /obj/effect/turf_decal/stripes/line, @@ -28539,26 +26070,6 @@ }, /turf/open/floor/plasteel/airless/solarpanel, /area/solar/starboard) -"bgW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate/freezer, -/turf/open/floor/plasteel, -/area/quartermaster/warehouse) -"bgX" = ( -/obj/machinery/power/apc{ - areastring = "/area/quartermaster/miningdock"; - dir = 1; - name = "Mining Dock APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "bgY" = ( /obj/item/assembly/prox_sensor{ pixel_x = -4; @@ -28648,12 +26159,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/atmos) -"bhh" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ - dir = 1 - }, -/turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, -/area/crew_quarters/kitchen/coldroom) "bhi" = ( /obj/machinery/gibber, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, @@ -28798,7 +26303,6 @@ /area/security/main) "bhw" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on/coldroom{ - icon_state = "freezer_1"; dir = 4 }, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, @@ -28873,31 +26377,6 @@ /mob/living/carbon/monkey, /turf/open/floor/plasteel/white, /area/medical/virology) -"bhG" = ( -/obj/structure/table/glass, -/obj/machinery/power/apc{ - areastring = "/area/medical/virology"; - dir = 2; - name = "Virology APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/obj/item/paper_bin{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/item/pen/red, -/obj/machinery/doorButtons/airlock_controller{ - idExterior = "virology_airlock_exterior"; - idInterior = "virology_airlock_interior"; - idSelf = "virology_airlock_control"; - name = "Virology Access Console"; - pixel_x = 22; - pixel_y = 8; - req_access_txt = "39" - }, -/turf/open/floor/plasteel/white, -/area/medical/virology) "bhH" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -29150,23 +26629,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/crew_quarters/bar) -"bic" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/item/toy/figure/assistant, -/obj/item/toy/figure/assistant{ - pixel_x = 3; - pixel_y = -4 - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) -"bid" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/closet/secure_closet/freezer/meat, -/turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, -/area/crew_quarters/kitchen/coldroom) "bie" = ( /obj/machinery/firealarm{ dir = 4; @@ -29208,7 +26670,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - icon_state = "pipe11-3"; dir = 1 }, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, @@ -29240,10 +26701,6 @@ }, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) -"bin" = ( -/obj/structure/kitchenspike, -/turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, -/area/crew_quarters/kitchen/coldroom) "bio" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -29327,22 +26784,6 @@ /obj/item/folder/red, /turf/open/floor/plasteel/dark, /area/security/brig) -"biz" = ( -/obj/machinery/power/apc{ - areastring = "/area/solar/aft"; - dir = 8; - name = "Aft Solar APC"; - pixel_x = -26; - pixel_y = 3 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/solar/aft) "biA" = ( /obj/structure/cable/yellow{ icon_state = "1-8" @@ -29387,17 +26828,13 @@ /turf/open/floor/plasteel, /area/security/brig) "biF" = ( -/obj/structure/cable{ - icon_state = "4-8" +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "biG" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 6 @@ -29417,16 +26854,13 @@ /turf/open/floor/plasteel, /area/security/brig) "biI" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 +/obj/structure/closet/emcloset, +/obj/machinery/camera{ + c_tag = "Engineering - Engine Airlock"; + dir = 8; + network = list("ss13","Engineering","Engine") }, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel, +/turf/open/floor/plasteel/dark, /area/engine/engineering) "biJ" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, @@ -29717,12 +27151,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bjh" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "bji" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -29828,7 +27256,6 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/atmos) "bjr" = ( @@ -29873,13 +27300,6 @@ /obj/item/seeds/random, /turf/open/floor/plasteel, /area/security/prison) -"bju" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/item/toy/figure/wizard, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/maintenance/port/aft) "bjv" = ( /obj/machinery/hydroponics/soil, /obj/effect/decal/cleanable/dirt, @@ -30097,10 +27517,12 @@ }, /obj/structure/disposalpipe/sorting/mail{ dir = 4; - icon_state = "pipe-j1s"; name = "sorting disposal pipe (Recycling)"; sortType = 1 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bjQ" = ( @@ -30155,20 +27577,6 @@ }, /turf/open/floor/plasteel, /area/security/courtroom) -"bjV" = ( -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/obj/effect/turf_decal/tile/bar, -/obj/machinery/airalarm{ - dir = 4; - pixel_x = -22 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/bar) "bjW" = ( /obj/structure/table, /obj/machinery/airalarm{ @@ -30736,14 +28144,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) -"bkT" = ( -/obj/structure/table, -/obj/item/storage/toolbox/mechanical{ - pixel_x = 2; - pixel_y = 3 - }, -/turf/open/floor/plasteel/white, -/area/science/explab) "bkU" = ( /obj/machinery/door/window/eastright{ base_state = "left"; @@ -30799,24 +28199,29 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) -"bla" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/closet/athletic_mixed, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness) "blb" = ( -/obj/machinery/power/terminal{ +/obj/structure/table, +/obj/item/storage/toolbox/mechanical{ + pixel_y = 5 + }, +/obj/item/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/item/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/effect/turf_decal/tile/yellow{ dir = 1 }, -/obj/structure/cable{ - icon_state = "0-4" +/obj/effect/turf_decal/tile/yellow{ + dir = 4 }, -/turf/open/floor/plating, +/obj/machinery/firealarm{ + pixel_z = 24 + }, +/turf/open/floor/plasteel, /area/engine/engineering) "blc" = ( /obj/structure/table, @@ -30849,6 +28254,7 @@ dir = 4 }, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/atmos) "blf" = ( @@ -30959,6 +28365,7 @@ pixel_x = -4; pixel_y = -24 }, +/obj/machinery/vending/wardrobe/science_wardrobe, /turf/open/floor/plasteel/white, /area/science/explab) "blp" = ( @@ -31245,33 +28652,6 @@ }, /turf/open/floor/plasteel, /area/security/checkpoint/science) -"blT" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"blU" = ( -/obj/machinery/computer/security{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/newscaster{ - pixel_x = -30 - }, -/turf/open/floor/plasteel, -/area/security/checkpoint/medical) "blV" = ( /obj/structure/rack, /obj/item/aicard, @@ -31345,18 +28725,6 @@ /obj/item/book/manual/wiki/security_space_law, /turf/open/floor/plasteel, /area/security/checkpoint) -"bma" = ( -/obj/machinery/power/apc{ - areastring = "/area/security/detectives_office"; - dir = 1; - name = "Detective's Office APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/carpet, -/area/security/detectives_office) "bmb" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -31388,23 +28756,6 @@ }, /turf/open/floor/plasteel, /area/security/checkpoint/science) -"bmd" = ( -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 5 - }, -/obj/machinery/power/apc{ - areastring = "/area/security/checkpoint/science"; - dir = 2; - name = "Science Checkpoint APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plasteel, -/area/security/checkpoint/science) "bme" = ( /obj/machinery/door/airlock/research{ name = "Kill Chamber"; @@ -31442,15 +28793,6 @@ }, /turf/open/floor/plating, /area/medical/genetics/cloning) -"bmi" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/security/courtroom) "bmj" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -31811,12 +29153,6 @@ }, /turf/open/floor/plating, /area/science/robotics/mechbay) -"bmT" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/port/fore) "bmU" = ( /obj/structure/grille, /obj/structure/disposalpipe/segment, @@ -31835,20 +29171,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bmW" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue, -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "bmX" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -31878,19 +29200,6 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness) -"bmZ" = ( -/obj/machinery/button/door{ - id = "podescape"; - name = "Pod Bay Control"; - normaldoorcontrol = 0; - pixel_x = -8; - pixel_y = 24 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/port/fore) "bna" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -32106,7 +29415,6 @@ /area/hallway/primary/central) "bnr" = ( /obj/machinery/computer/rdconsole/robotics{ - icon_state = "computer"; dir = 4 }, /obj/machinery/light{ @@ -32147,12 +29455,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/theatre) -"bnv" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/science/robotics/lab) "bnw" = ( /obj/effect/turf_decal/tile/purple{ dir = 8 @@ -32184,7 +29486,6 @@ /area/science/lab) "bnz" = ( /obj/machinery/computer/security/hos{ - icon_state = "computer"; dir = 1 }, /obj/machinery/light, @@ -32214,7 +29515,6 @@ /area/engine/atmos) "bnC" = ( /obj/machinery/computer/mech_bay_power_console{ - icon_state = "computer"; dir = 1 }, /obj/structure/cable/yellow{ @@ -32464,43 +29764,16 @@ }, /turf/open/floor/plasteel/white, /area/science/explab) -"bnY" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/crew_quarters/heads/chief) "bnZ" = ( -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/computer/apc_control{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/computer/security/telescreen/ce{ + dir = 1; + network = list("Engine","Telecom"); + pixel_y = -30 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/closet/secure_closet/engineering_chief, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/heads/chief"; - dir = 2; - name = "Chief Engineer's Office APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "boa" = ( /obj/effect/turf_decal/tile/bar, @@ -32516,33 +29789,20 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, /turf/open/floor/plasteel, /area/crew_quarters/bar) "bob" = ( -/obj/effect/turf_decal/tile/neutral{ +/obj/machinery/computer/station_alert{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/newscaster{ + pixel_y = -28 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/machinery/suit_storage_unit/ce, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/heads/chief) -"boc" = ( -/obj/structure/window/reinforced, -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating, +/turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "bod" = ( /obj/structure/table, @@ -32602,6 +29862,9 @@ location = "TOPLEFT"; name = "navigation beacon (TOPLEFT)" }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bok" = ( @@ -32670,14 +29933,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bop" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/port/fore) "boq" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -32771,54 +30026,10 @@ }, /turf/open/floor/plating, /area/maintenance/aft) -"box" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/radiation/rad_area{ - pixel_x = 32 - }, -/turf/open/space/basic, -/area/space/nearstation) -"boy" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/radiation/rad_area{ - pixel_x = -32 - }, -/turf/open/space/basic, -/area/space/nearstation) -"boz" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/electricshock{ - pixel_x = -32 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "boA" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"boB" = ( -/obj/structure/particle_accelerator/particle_emitter/center{ - icon_state = "emitter_center"; - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, +/obj/effect/spawner/structure/window/plasma/reinforced, /turf/open/floor/plating, -/area/engine/engineering) +/area/engine/supermatter) "boC" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -32850,46 +30061,17 @@ }, /area/hallway/secondary/entry) "boG" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/turf/open/floor/plasteel/dark, +/obj/structure/table/reinforced, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/flashlight/lamp, +/turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "boH" = ( -/obj/effect/turf_decal/stripes/line{ +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/sign/warning/enginesafety{ - pixel_x = 32 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"boI" = ( -/obj/machinery/door/airlock/command{ - name = "Chief Engineer's Office"; - req_access_txt = "56" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" +/obj/structure/disposalpipe/segment{ + dir = 4 }, /obj/structure/cable/yellow{ icon_state = "4-8" @@ -32901,7 +30083,7 @@ dir = 4 }, /turf/open/floor/plasteel, -/area/crew_quarters/heads/chief) +/area/engine/engineering) "boJ" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -32959,79 +30141,35 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, /turf/open/floor/plasteel, /area/engine/engineering) -"boP" = ( -/obj/structure/particle_accelerator/power_box{ - icon_state = "power_box"; - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "boQ" = ( /obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai_upload) -"boR" = ( -/obj/effect/landmark/start/station_engineer, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "boS" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/turf/open/floor/plasteel/dark, +/turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "boT" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ +/obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ +/obj/effect/turf_decal/tile/neutral{ dir = 1 }, -/obj/structure/window/reinforced, -/turf/open/floor/plating, -/area/engine/engineering) -"boU" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/computer/atmos_alert{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, /area/engine/engineering) "boV" = ( /obj/structure/grille, @@ -33126,6 +30264,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/hallway/primary/central) "bpe" = ( @@ -33136,7 +30275,6 @@ /obj/structure/sign/departments/custodian{ pixel_y = -32 }, -/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/hallway/primary/central) "bpf" = ( @@ -33146,6 +30284,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/janitor) "bpg" = ( @@ -33209,12 +30348,6 @@ }, /turf/open/floor/plasteel, /area/janitor) -"bpn" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/janitor) "bpo" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 10 @@ -33247,7 +30380,7 @@ /obj/item/multitool, /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = -30 }, @@ -33271,7 +30404,6 @@ /obj/effect/turf_decal/tile/yellow{ dir = 1 }, -/obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/engine/atmos) "bpt" = ( @@ -33307,21 +30439,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/atmos) -"bpx" = ( -/obj/machinery/door/airlock/engineering{ - name = "Engine Room"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plasteel, -/area/engine/engineering) "bpy" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ dir = 4 @@ -33506,21 +30626,6 @@ }, /turf/open/floor/plasteel, /area/engine/gravity_generator) -"bpQ" = ( -/obj/machinery/door/airlock/engineering{ - name = "Engine Room"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bpR" = ( /obj/machinery/camera{ c_tag = "Engineering - Gravity Generator Main 1"; @@ -33537,7 +30642,6 @@ dir = 1 }, /obj/machinery/power/terminal{ - icon_state = "term"; dir = 8 }, /obj/structure/cable/yellow{ @@ -33567,6 +30671,9 @@ /obj/structure/cable/yellow{ icon_state = "1-4" }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/port/aft) "bpV" = ( @@ -33581,18 +30688,6 @@ }, /turf/open/floor/plating, /area/maintenance/port/aft) -"bpW" = ( -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/bar"; - dir = 1; - name = "Bar APC"; - pixel_y = 24 - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "bpX" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -33691,19 +30786,6 @@ }, /turf/open/floor/plating, /area/maintenance/fore) -"bqj" = ( -/obj/machinery/power/apc{ - areastring = "/area/medical/storage"; - dir = 8; - name = "Medical Storage APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/department/medical) "bqk" = ( /obj/structure/reagent_dispensers/watertank, /obj/effect/turf_decal/bot, @@ -34478,6 +31560,7 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/atmos) "brx" = ( @@ -34567,6 +31650,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 9 + }, /turf/open/floor/plasteel, /area/engine/atmos) "brE" = ( @@ -34587,7 +31673,7 @@ dir = 1 }, /obj/structure/disposalpipe/trunk{ - dir = 1 + dir = 8 }, /turf/open/floor/plasteel, /area/engine/atmos) @@ -34687,24 +31773,6 @@ }, /turf/open/floor/plasteel, /area/engine/atmos) -"brS" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/kitchen"; - dir = 1; - name = "Kitchen APC"; - pixel_y = 24 - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "brT" = ( /obj/machinery/power/smes, /obj/structure/cable/yellow, @@ -34723,17 +31791,16 @@ pixel_y = 28 }, /obj/effect/turf_decal/stripes/line, -/obj/machinery/rnd/production/protolathe/department/engineering, /obj/machinery/camera{ c_tag = "Atmospherics - Main 3"; dir = 2; network = list("ss13","Atmospherics") }, +/obj/structure/closet/firecloset, /turf/open/floor/plasteel, /area/engine/atmos) "brV" = ( /obj/machinery/power/terminal{ - icon_state = "term"; dir = 8 }, /obj/structure/cable{ @@ -34963,6 +32030,9 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bsp" = ( @@ -34983,6 +32053,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bsr" = ( @@ -35156,18 +32229,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/storage/tech) -"bsE" = ( -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/port/fore) "bsF" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -35217,6 +32278,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bsI" = ( @@ -35234,6 +32298,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bsJ" = ( @@ -35376,15 +32443,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bsU" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/vending/wardrobe/engi_wardrobe, -/turf/open/floor/plasteel, -/area/engine/engineering) "bsV" = ( /obj/effect/turf_decal/tile/blue, /obj/effect/turf_decal/tile/neutral, @@ -35397,6 +32455,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bsW" = ( @@ -35535,6 +32596,9 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "btg" = ( @@ -35548,6 +32612,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bth" = ( @@ -35561,6 +32628,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bti" = ( @@ -35592,6 +32662,9 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "btl" = ( @@ -35604,6 +32677,9 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "btm" = ( @@ -35614,6 +32690,9 @@ dir = 4 }, /obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "btn" = ( @@ -35855,20 +32934,8 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/wood, /area/lawoffice) -"btO" = ( -/obj/structure/table/wood, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/pen, -/turf/open/floor/wood, -/area/lawoffice) "btP" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/lawyer, @@ -36086,19 +33153,6 @@ }, /turf/open/floor/plasteel/dark, /area/bridge) -"bui" = ( -/obj/machinery/computer/bounty, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/heads/hop"; - dir = 1; - name = "Head of Personnel's Office APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/wood, -/area/crew_quarters/heads/hop) "buj" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -36310,23 +33364,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"buD" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "buE" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -36339,16 +33376,6 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"buF" = ( -/obj/structure/particle_accelerator/fuel_chamber{ - icon_state = "fuel_chamber"; - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "buG" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -36392,18 +33419,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"buJ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/camera/emp_proof/motion{ - c_tag = "Engineering - External Engine Containment Northwest"; - dir = 8; - network = list("Engine") - }, -/turf/open/space/basic, -/area/space/nearstation) "buK" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, @@ -36546,12 +33561,6 @@ }, /turf/open/floor/plasteel, /area/engine/atmos) -"buY" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/ai_monitored/storage/eva) "buZ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ dir = 8 @@ -37260,63 +34269,9 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/entry) -"bwt" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/machinery/camera/emp_proof/motion{ - c_tag = "Engineering - External Engine Containment Northeast"; - dir = 4; - network = list("Engine") - }, -/turf/open/space/basic, -/area/space/nearstation) -"bwu" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/machinery/camera/emp_proof/motion{ - c_tag = "Engineering - External Engine Containment Southwest"; - network = list("Engine") - }, -/turf/open/space/basic, -/area/space/nearstation) "bwv" = ( /turf/open/floor/plasteel/dark, /area/engine/atmos) -"bww" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/machinery/camera/emp_proof/motion{ - c_tag = "Engineering - External Engine Containment Southeast"; - network = list("Engine") - }, -/turf/open/space/basic, -/area/space/nearstation) -"bwx" = ( -/obj/structure/reagent_dispensers/beerkeg, -/obj/structure/light_construct/small{ - dir = 1 - }, -/obj/machinery/power/apc{ - areastring = "/area/maintenance/department/crew_quarters/bar"; - cell_type = null; - dir = 1; - name = "Abandoned Bar APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating{ - icon_state = "panelscorched" - }, -/area/maintenance/department/crew_quarters/bar) "bwy" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -37379,19 +34334,6 @@ /obj/effect/spawner/lootdrop/crate_spawner, /turf/open/floor/plating, /area/maintenance/starboard) -"bwE" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/maintenance/disposal"; - dir = 8; - name = "Waste Disposal APC"; - pixel_x = -26; - pixel_y = 3 - }, -/turf/open/floor/plating, -/area/maintenance/disposal) "bwF" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ @@ -37499,7 +34441,7 @@ }, /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = 30 }, @@ -37529,43 +34471,21 @@ }, /turf/open/floor/plasteel, /area/engine/atmos) -"bwU" = ( -/obj/effect/landmark/start/station_engineer, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bwV" = ( -/obj/effect/landmark/start/station_engineer, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 +/obj/machinery/door/airlock/engineering{ + name = "Engine Room"; + req_access_txt = "10" }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/engineering) -"bwW" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall/r_wall, -/area/engine/engineering) -"bwX" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "bwY" = ( /obj/effect/turf_decal/tile/brown{ dir = 4 @@ -37926,13 +34846,6 @@ /obj/structure/cable/yellow, /turf/open/floor/plating, /area/ai_monitored/storage/eva) -"bxE" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/hallway/secondary/entry) "bxF" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/cable/yellow{ @@ -37975,36 +34888,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bxJ" = ( -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/fitness"; - dir = 8; - name = "Fitness APC"; - pixel_x = -24 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"bxK" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/crew_quarters/fitness/recreation"; - dir = 8; - name = "Dormatories APC"; - pixel_x = -24 - }, -/turf/open/floor/plating, -/area/maintenance/fore) -"bxL" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/port/fore) "bxM" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -38111,13 +34994,11 @@ }, /obj/structure/sign/directions/medical{ dir = 8; - icon_state = "direction_med"; pixel_x = -30; pixel_y = 32 }, /obj/structure/sign/directions/science{ dir = 8; - icon_state = "direction_sci"; pixel_x = -30; pixel_y = 24 }, @@ -38308,19 +35189,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/secondary/entry) -"byr" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/sign/warning/electricshock{ - pixel_x = 32 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/maintenance/fore) "bys" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 9 @@ -38447,6 +35315,9 @@ }, /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "byG" = ( @@ -38483,20 +35354,6 @@ }, /turf/open/floor/plating, /area/security/detectives_office) -"byI" = ( -/obj/structure/grille, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/turf/open/floor/plating, -/area/quartermaster/qm) "byJ" = ( /obj/machinery/power/smes{ charge = 5e+006 @@ -38910,28 +35767,6 @@ }, /turf/open/floor/plasteel, /area/quartermaster/qm) -"bzz" = ( -/obj/machinery/ntnet_relay, -/obj/machinery/power/apc{ - areastring = "/area/tcommsat/server"; - dir = 2; - name = "Telecomms Servers APC"; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/open/floor/plasteel/dark/telecomms, -/area/tcommsat/server) "bzA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /turf/open/floor/plasteel, @@ -39029,23 +35864,18 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) "bzK" = ( -/obj/structure/table, -/obj/effect/turf_decal/delivery, -/obj/item/clothing/glasses/meson/engine, -/obj/item/clothing/glasses/meson/engine, -/obj/item/clothing/glasses/meson/engine, -/obj/item/pipe_dispenser, -/obj/item/pipe_dispenser, -/obj/item/pipe_dispenser, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 + icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/engineering) "bzL" = ( @@ -39132,18 +35962,6 @@ /obj/machinery/door/window/eastleft, /turf/open/floor/plasteel/dark, /area/janitor) -"bzT" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bzU" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -39158,7 +35976,7 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/heads/cmo) "bzV" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/green{ dir = 8 }, @@ -39241,7 +36059,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "bAf" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/quartermaster, /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ @@ -39323,16 +36141,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) -"bAq" = ( -/obj/structure/particle_accelerator/end_cap{ - icon_state = "end_cap"; - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "bAr" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -39407,24 +36215,13 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"bAB" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bAC" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/structure/lattice/catwalk, +/obj/structure/sign/warning/fire{ + pixel_y = -32 }, -/obj/machinery/light_switch{ - pixel_x = 24 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) +/turf/open/space/basic, +/area/space/nearstation) "bAD" = ( /obj/structure/cable/yellow{ icon_state = "2-4" @@ -39432,14 +36229,12 @@ /turf/open/floor/plating, /area/maintenance/starboard) "bAE" = ( -/obj/machinery/light, /obj/machinery/firealarm{ dir = 1; pixel_y = -26 }, -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/stripes/line{ - dir = 6 +/obj/machinery/camera/autoname{ + dir = 1 }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -39489,6 +36284,9 @@ /obj/structure/disposalpipe/junction{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bAL" = ( @@ -39504,6 +36302,9 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bAM" = ( @@ -39533,17 +36334,11 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"bAO" = ( /obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) +/turf/open/floor/plasteel, +/area/hallway/primary/central) "bAP" = ( /obj/structure/table, /obj/item/hand_labeler, @@ -39640,7 +36435,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; dir = 1 }, /obj/machinery/navbeacon{ @@ -39792,16 +36586,6 @@ }, /turf/open/floor/plasteel, /area/quartermaster/office) -"bBm" = ( -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) "bBn" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ dir = 8 @@ -39900,18 +36684,6 @@ }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/heads/hor) -"bBu" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/quartermaster/office"; - dir = 8; - name = "Cargo Main APC"; - pixel_x = -24 - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "bBv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -39980,24 +36752,6 @@ /obj/item/trash/plate, /turf/open/floor/plating, /area/maintenance/starboard) -"bBC" = ( -/obj/machinery/disposal/bin, -/obj/effect/turf_decal/tile/brown{ - dir = 1 - }, -/obj/effect/turf_decal/tile/brown, -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, -/obj/machinery/light_switch{ - pixel_x = -24; - pixel_y = 8 - }, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/quartermaster/qm) "bBD" = ( /obj/structure/cable/yellow{ icon_state = "0-4" @@ -40097,6 +36851,9 @@ name = "sorting disposal pipe (Robotics)"; sortType = 14 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bBK" = ( @@ -40110,15 +36867,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/department/medical) -"bBM" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/department/medical) "bBN" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -40182,7 +36930,6 @@ "bBS" = ( /obj/effect/turf_decal/tile/neutral, /obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -40324,23 +37071,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/aft) -"bCf" = ( -/obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/item/toy/figure/assistant{ - pixel_x = -2; - pixel_y = 5 - }, -/obj/item/toy/figure/assistant{ - pixel_x = 3; - pixel_y = -4 - }, -/obj/item/toy/figure/assistant{ - pixel_x = 8; - pixel_y = 10 - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "bCg" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -40643,18 +37373,6 @@ /obj/item/reagent_containers/glass/bucket, /turf/open/floor/plasteel, /area/hydroponics) -"bCF" = ( -/obj/machinery/computer/security/telescreen{ - name = "Engine Monitor"; - network = list("Engine"); - pixel_y = 32 - }, -/obj/machinery/power/smes/engineering, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plating, -/area/engine/engineering) "bCG" = ( /obj/structure/table, /obj/machinery/smartfridge/disks{ @@ -40662,25 +37380,6 @@ }, /turf/open/floor/plasteel, /area/hydroponics) -"bCH" = ( -/obj/structure/sign/warning/electricshock{ - pixel_y = 32 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bCI" = ( /obj/machinery/firealarm{ dir = 1; @@ -40705,6 +37404,9 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bCK" = ( @@ -40846,24 +37548,6 @@ }, /turf/open/floor/plating, /area/maintenance/aft) -"bCX" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bCY" = ( /obj/machinery/mineral/stacking_machine{ input_dir = 1; @@ -41000,10 +37684,16 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bDl" = ( -/obj/effect/turf_decal/loading_area{ - dir = 1 +/obj/structure/closet/firecloset, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 }, -/obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/engine/engineering) "bDm" = ( @@ -41025,12 +37715,6 @@ }, /turf/open/floor/plating, /area/maintenance/aft) -"bDo" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/plating, -/area/engine/engineering) "bDp" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 10 @@ -41046,6 +37730,9 @@ location = "RIGHTTOP"; name = "navigation beacon (RIGHTTOP)" }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bDq" = ( @@ -41074,6 +37761,9 @@ location = "LEFTTOP"; name = "navigation beacon (LEFTTOP)" }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bDt" = ( @@ -41092,6 +37782,9 @@ location = "LEFTMID"; name = "navigation beacon (LEFTMID)" }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bDu" = ( @@ -41099,6 +37792,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/segment, /obj/effect/landmark/event_spawn, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bDv" = ( @@ -41180,6 +37876,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bDE" = ( @@ -41197,6 +37896,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bDF" = ( @@ -41281,11 +37983,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bDN" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/vacant_room/commissary) "bDO" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ dir = 1 @@ -41296,8 +37993,10 @@ /obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/disposalpipe/sorting/mail{ + dir = 4; + name = "sorting disposal pipe (Custodial)"; + sortType = 22 }, /turf/open/floor/plasteel, /area/hallway/primary/central) @@ -41325,16 +38024,6 @@ dir = 10 }, /area/science/research) -"bDR" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/stripes/line, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/item/radio/intercom{ - pixel_y = -28 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bDS" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -41405,17 +38094,6 @@ }, /turf/open/floor/plasteel/grimy, /area/security/detectives_office) -"bDX" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/machinery/light, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "bDY" = ( /obj/structure/rack, /obj/item/clothing/under/color/blue, @@ -41425,16 +38103,6 @@ /obj/machinery/light, /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) -"bDZ" = ( -/obj/machinery/computer/station_alert, -/obj/structure/noticeboard{ - pixel_y = 32 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) "bEa" = ( /obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/tile/neutral{ @@ -41599,10 +38267,16 @@ /turf/open/floor/plasteel/chapel, /area/chapel/main) "bEr" = ( -/obj/machinery/light, -/obj/effect/turf_decal/stripes/line{ - dir = 10 +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 }, +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, /turf/open/floor/plasteel, /area/engine/engineering) "bEs" = ( @@ -41795,16 +38469,6 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) -"bEF" = ( -/obj/machinery/power/apc{ - areastring = "/area/chapel/office"; - dir = 8; - name = "Chapel Office APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/maintenance/starboard) "bEG" = ( /obj/structure/cable/yellow{ icon_state = "1-8" @@ -41938,6 +38602,9 @@ name = "sorting disposal pipe (Quartermaster)"; sortType = 3 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bEU" = ( @@ -41955,29 +38622,16 @@ name = "sorting disposal pipe (Cargo)"; sortType = 2 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bEV" = ( /obj/structure/table/reinforced, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/item/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/pen, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/item/toy/figure/ce, +/obj/item/clipboard, +/obj/item/folder/yellow, +/obj/item/stamp/ce, /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "bEW" = ( @@ -42025,17 +38679,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bFa" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/plating, -/area/engine/engineering) "bFb" = ( /obj/effect/spawner/lootdrop/grille_or_trash, /obj/structure/disposalpipe/segment, @@ -42051,7 +38694,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "bFd" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/cargo_technician, /obj/structure/disposalpipe/segment{ dir = 6 @@ -42060,7 +38703,6 @@ /area/quartermaster/office) "bFe" = ( /obj/machinery/computer/cargo{ - icon_state = "computer"; dir = 8 }, /obj/structure/disposalpipe/segment{ @@ -42223,7 +38865,6 @@ /area/crew_quarters/heads/cmo) "bFp" = ( /obj/machinery/computer/cargo/request{ - icon_state = "computer"; dir = 8 }, /obj/effect/turf_decal/tile/brown{ @@ -42276,9 +38917,11 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/junction/flip{ - icon_state = "pipe-j2"; dir = 1 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bFv" = ( @@ -42350,15 +38993,6 @@ }, /turf/open/floor/plasteel/dark, /area/bridge) -"bFB" = ( -/obj/machinery/power/terminal{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/floor/plating, -/area/engine/engineering) "bFC" = ( /obj/structure/disposalpipe/segment, /turf/closed/wall/r_wall, @@ -42388,7 +39022,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/disposalpipe/junction/flip{ - icon_state = "pipe-j2"; dir = 8 }, /turf/open/floor/plasteel, @@ -42498,31 +39131,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/security/main) -"bFN" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Containment Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bFO" = ( -/obj/machinery/power/apc{ - areastring = "/area/security/brig"; - dir = 2; - name = "Brig APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel, -/area/security/brig) "bFP" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -42537,16 +39145,6 @@ }, /turf/open/floor/plasteel, /area/security/brig) -"bFQ" = ( -/obj/machinery/power/apc{ - areastring = "/area/ai_monitored/turret_protected/ai_upload"; - dir = 2; - name = "AI Upload APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/turf/open/floor/circuit, -/area/ai_monitored/turret_protected/ai_upload) "bFR" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/segment{ @@ -42606,19 +39204,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/security/main) -"bFW" = ( -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plasteel, -/area/security/main) "bFX" = ( /obj/effect/turf_decal/tile/red{ dir = 8 @@ -42729,18 +39314,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/port/aft) -"bGh" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/department/security) "bGi" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -42753,12 +39326,6 @@ }, /turf/open/floor/plating, /area/maintenance/department/security) -"bGk" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/department/security) "bGl" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -42835,10 +39402,6 @@ }, /turf/open/floor/plasteel/white, /area/science/xenobiology) -"bGu" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/janitor) "bGv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 5 @@ -42857,7 +39420,7 @@ "bGw" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ - dir = 1 + dir = 4 }, /turf/open/floor/plasteel, /area/janitor) @@ -42875,6 +39438,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bGy" = ( @@ -42896,6 +39462,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 10 }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bGA" = ( @@ -43062,33 +39631,6 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"bGN" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/medbay/central) "bGO" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -43155,17 +39697,6 @@ }, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"bGR" = ( -/obj/machinery/suit_storage_unit/engine, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Material Storage"; - network = list("ss13","Engineering") - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bGS" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -43196,6 +39727,9 @@ name = "sorting disposal pipe (Chief Medical Director)"; sortType = 10 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bGU" = ( @@ -43206,10 +39740,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/crew_quarters/bar) -"bGV" = ( -/obj/structure/closet/radiation, -/turf/open/floor/plating, -/area/engine/engineering) "bGW" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -43275,17 +39805,9 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bHc" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 +/obj/machinery/suit_storage_unit/engine, +/obj/effect/turf_decal/bot{ + dir = 1 }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -43294,8 +39816,9 @@ dir = 5 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/turf/open/floor/plating, -/area/maintenance/port/aft) +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "bHe" = ( /obj/effect/turf_decal/tile/bar, /obj/effect/turf_decal/tile/bar{ @@ -43335,10 +39858,12 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/junction/flip{ - icon_state = "pipe-j2"; dir = 1 }, /obj/machinery/door/firedoor, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bHi" = ( @@ -43478,11 +40003,13 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3, /obj/structure/disposalpipe/sorting/mail/flip{ dir = 4; - icon_state = "pipe-j2s"; name = "sorting disposal pipe (Hydroponics)"; sortType = 21 }, /obj/machinery/door/firedoor, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bHt" = ( @@ -43520,6 +40047,9 @@ dir = 4 }, /obj/machinery/door/firedoor, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bHw" = ( @@ -43574,9 +40104,6 @@ }, /turf/open/floor/plating, /area/science/robotics/lab) -"bHB" = ( -/turf/closed/wall/r_wall, -/area/vacant_room/commissary) "bHC" = ( /obj/machinery/door/airlock{ name = "Lounge" @@ -43685,16 +40212,6 @@ }, /turf/open/floor/plasteel, /area/bridge) -"bHN" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/airalarm{ - dir = 8; - pixel_x = 24 - }, -/turf/open/floor/wood, -/area/library) "bHO" = ( /obj/machinery/airalarm{ dir = 8; @@ -43838,18 +40355,6 @@ }, /turf/open/floor/plasteel, /area/security/brig) -"bIb" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/item/radio/intercom{ - pixel_y = 24 - }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) "bIc" = ( /obj/machinery/telecomms/server/presets/engineering, /turf/open/floor/circuit/telecomms/mainframe, @@ -44020,13 +40525,6 @@ }, /turf/open/floor/plasteel/dark, /area/bridge) -"bIu" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/turf/open/floor/circuit, -/area/engine/engineering) "bIv" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 @@ -44065,7 +40563,6 @@ /area/tcommsat/computer) "bID" = ( /obj/structure/transit_tube/station/reverse{ - icon_state = "closed_terminus0"; dir = 1 }, /turf/open/floor/plating, @@ -44139,21 +40636,8 @@ /obj/item/crowbar, /turf/open/floor/plating, /area/tcommsat/computer) -"bIM" = ( -/obj/machinery/announcement_system, -/obj/machinery/power/apc{ - areastring = "/area/tcommsat/computer"; - dir = 8; - name = "Telecomms Lounge APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/turf/open/floor/plasteel/grimy, -/area/tcommsat/computer) "bIN" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/structure/cable/yellow{ @@ -44236,26 +40720,6 @@ }, /turf/open/floor/circuit/green/telecomms/mainframe, /area/tcommsat/server) -"bIZ" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/light/small{ - brightness = 3; - dir = 8 - }, -/obj/effect/turf_decal/bot, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "bJa" = ( /obj/machinery/power/smes/engineering, /obj/structure/cable{ @@ -44287,7 +40751,7 @@ /turf/open/floor/circuit/green/telecomms/mainframe, /area/tcommsat/server) "bJd" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/grimy, @@ -44328,7 +40792,6 @@ /area/tcommsat/server) "bJi" = ( /obj/machinery/computer/telecomms/server{ - icon_state = "computer"; dir = 8 }, /turf/open/floor/plasteel/grimy, @@ -44351,28 +40814,8 @@ }, /turf/open/floor/carpet, /area/bridge) -"bJl" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 4 - }, -/obj/effect/turf_decal/bot, -/obj/structure/cable{ - icon_state = "0-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "bJm" = ( /obj/machinery/computer/shuttle/labor{ - icon_state = "computer"; dir = 8 }, /obj/effect/turf_decal/tile/blue{ @@ -44403,7 +40846,6 @@ /area/tcommsat/computer) "bJp" = ( /obj/machinery/computer/message_monitor{ - icon_state = "computer"; dir = 4 }, /obj/machinery/light{ @@ -44416,7 +40858,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "bJr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/grimy, @@ -44462,13 +40904,23 @@ /obj/structure/cable{ icon_state = "1-2" }, -/turf/open/floor/plasteel/dark, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/door/window/northright{ + name = "AI Access"; + req_access_txt = "16" + }, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bJx" = ( /obj/structure/cable{ icon_state = "1-4" }, -/turf/open/floor/plasteel/dark, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bJy" = ( /obj/machinery/ai_slipper{ @@ -44529,48 +40981,22 @@ /obj/structure/cable{ icon_state = "4-8" }, -/obj/machinery/button/door{ - id = "aishutters"; - name = "Privacy Shutter Control"; - pixel_x = -24; - pixel_y = 24 - }, -/obj/machinery/button/door{ - id = "aishuttersexternal"; - name = "External Privacy Shutter Control"; - pixel_x = 24; - pixel_y = 24 +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bJF" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 6 }, -/obj/effect/turf_decal/tile/neutral{ +/obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/filingcabinet/chestdrawer, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Chief Engineer's Office"; - network = list("ss13","Engineering") - }, -/obj/machinery/airalarm{ - pixel_y = 25 - }, -/mob/living/simple_animal/parrot/Poly, -/turf/open/floor/plasteel/dark, -/area/crew_quarters/heads/chief) -"bJG" = ( -/obj/machinery/field/generator, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Secure Storage"; - network = list("ss13","Engineering") - }, /turf/open/floor/plating, /area/engine/engineering) "bJH" = ( @@ -44582,15 +41008,6 @@ /obj/item/pen, /turf/open/floor/carpet, /area/bridge) -"bJI" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/camera/emp_proof{ - c_tag = "Engineering - Entrance"; - dir = 1; - network = list("ss13","Engineering") - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bJJ" = ( /obj/machinery/telecomms/server/presets/common, /obj/machinery/light{ @@ -44625,16 +41042,6 @@ }, /turf/open/floor/plating, /area/science/robotics/lab) -"bJM" = ( -/obj/machinery/light/small, -/obj/machinery/camera{ - c_tag = "Atmospherics - Breakroom"; - dir = 1; - network = list("ss13","Atmospherics") - }, -/obj/effect/turf_decal/tile/yellow, -/turf/open/floor/plasteel, -/area/engine/atmos) "bJN" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on{ dir = 4 @@ -44841,7 +41248,6 @@ /area/ai_monitored/security/armory) "bKj" = ( /obj/machinery/computer/shuttle/labor{ - icon_state = "computer"; dir = 1 }, /obj/effect/turf_decal/stripes/line, @@ -44882,18 +41288,6 @@ }, /turf/open/floor/wood, /area/crew_quarters/heads/hop) -"bKn" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel/dark, -/area/bridge) "bKo" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -44938,7 +41332,6 @@ /area/maintenance/aft) "bKu" = ( /obj/structure/disposalpipe/junction/flip{ - icon_state = "pipe-j2"; dir = 8 }, /obj/structure/cable/yellow{ @@ -45281,7 +41674,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat/foyer"; enabled = 1; - icon_state = "control_standby"; name = "AI Chamber Foyer Control"; pixel_y = -24; req_access = null; @@ -45327,23 +41719,6 @@ }, /turf/open/floor/plasteel/white, /area/security/brig) -"bLm" = ( -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/obj/machinery/camera{ - c_tag = "Security - Main Hall 2"; - dir = 8; - network = list("ss13","Security") - }, -/turf/open/floor/plasteel, -/area/security/brig) "bLn" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ dir = 8 @@ -45372,7 +41747,6 @@ pixel_x = -24 }, /obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; dir = 1 }, /obj/machinery/camera{ @@ -45417,16 +41791,6 @@ }, /turf/open/floor/plasteel/dark, /area/engine/gravity_generator) -"bLt" = ( -/obj/structure/table, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/glass/fifty, -/obj/item/clothing/head/welding, -/obj/item/stack/sheet/mineral/plasma{ - amount = 35 - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/service) "bLu" = ( /obj/machinery/teleport/station, /obj/machinery/camera/motion{ @@ -45456,7 +41820,7 @@ network = list("Telecom") }, /turf/open/space/basic, -/area/space) +/area/space/nearstation) "bLy" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 @@ -45624,7 +41988,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/ai"; enabled = 1; - icon_state = "control_standby"; name = "AI Chamber Turret Control"; pixel_x = 32; pixel_y = -24; @@ -45660,11 +42023,6 @@ }, /turf/open/floor/plating, /area/maintenance/department/security) -"bLO" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/closet/crate, -/turf/open/floor/plating, -/area/maintenance/department/security) "bLP" = ( /obj/structure/closet/crate, /obj/effect/spawner/lootdrop/maintenance{ @@ -45692,12 +42050,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/carpet, /area/bridge) -"bLT" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/closed/wall, -/area/maintenance/fore) "bLU" = ( /obj/effect/landmark/event_spawn, /mob/living/carbon/monkey, @@ -45722,13 +42074,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel/white, /area/science/xenobiology) -"bLW" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/effect/spawner/lootdrop/grille_or_trash, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/maintenance/port/fore) "bLX" = ( /obj/machinery/camera/motion{ c_tag = "Secure - External Telecomm Sat East 2"; @@ -45736,7 +42081,7 @@ network = list("Telecom") }, /turf/open/space/basic, -/area/space) +/area/space/nearstation) "bLY" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -45772,7 +42117,6 @@ dir = 4 }, /obj/structure/disposalpipe/junction/yjunction{ - icon_state = "pipe-y"; dir = 1 }, /obj/effect/landmark/event_spawn, @@ -45797,7 +42141,14 @@ dir = 4; network = list("AISat") }, -/turf/open/floor/plasteel/dark, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/door/window/southright{ + name = "AI Access"; + req_access_txt = "16" + }, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bMe" = ( /obj/structure/table, @@ -45971,7 +42322,14 @@ dir = 8; network = list("AISat") }, -/turf/open/floor/plasteel/dark, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/window/southleft{ + name = "AI Access"; + req_access_txt = "16" + }, +/turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bMB" = ( /obj/structure/cable{ @@ -46133,14 +42491,14 @@ /obj/structure/cable{ icon_state = "4-8" }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "aishutters"; - name = "AI privacy shutters" - }, /obj/machinery/door/window/westright{ name = "AI Access"; req_access_txt = "16" }, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bMQ" = ( @@ -46199,6 +42557,11 @@ pixel_x = 28; pixel_y = -28 }, +/obj/machinery/button/door{ + id = "aishuttersexternal"; + name = "External Privacy Shutter Control"; + pixel_y = -40 + }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "bMT" = ( @@ -46369,7 +42732,7 @@ icon_state = "1-8" }, /turf/open/space, -/area/ai_monitored/turret_protected/ai) +/area/space/nearstation) "bNi" = ( /obj/machinery/camera/motion{ c_tag = "Secure - AI External East"; @@ -46381,7 +42744,7 @@ icon_state = "1-4" }, /turf/open/space, -/area/ai_monitored/turret_protected/ai) +/area/space/nearstation) "bNj" = ( /obj/structure/lattice/catwalk, /obj/structure/cable{ @@ -46462,7 +42825,7 @@ icon_state = "2-8" }, /turf/open/space/basic, -/area/ai_monitored/turret_protected/ai) +/area/space/nearstation) "bNs" = ( /obj/item/stack/cable_coil/cut/red, /turf/open/space/basic, @@ -46767,14 +43130,6 @@ }, /turf/open/floor/engine, /area/science/xenobiology) -"bNQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/plating, -/area/maintenance/port/fore) "bNR" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -46898,18 +43253,6 @@ }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/foyer) -"bOc" = ( -/obj/machinery/power/apc{ - areastring = "/area/ai_monitored/turret_protected/aisat/foyer"; - dir = 4; - name = "MiniSat Main APC"; - pixel_x = 27 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/foyer) "bOd" = ( /obj/machinery/door/airlock/highsecurity{ name = "AI Chamber"; @@ -47073,33 +43416,6 @@ }, /turf/open/floor/grass, /area/hydroponics/garden) -"bOu" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/obj/structure/rack, -/obj/machinery/light{ - dir = 8 - }, -/obj/item/storage/toolbox/mechanical{ - pixel_x = -2; - pixel_y = -2 - }, -/obj/item/storage/toolbox/mechanical, -/obj/item/storage/toolbox/mechanical{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/machinery/camera{ - c_tag = "Civilian - Tool Storage"; - dir = 4; - network = list("ss13") - }, -/turf/open/floor/plasteel, -/area/storage/tools) "bOv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -47357,21 +43673,11 @@ dir = 8 }, /obj/item/clothing/head/cone, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/port/aft) -"bOS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - areastring = "/area/gateway"; - dir = 2; - name = "Gateway APC"; - pixel_y = -24 - }, -/turf/open/floor/plasteel, -/area/gateway) "bOT" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, @@ -47458,6 +43764,9 @@ /obj/structure/cable/yellow{ icon_state = "4-8" }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plating, /area/maintenance/port/aft) "bOZ" = ( @@ -47780,13 +44089,15 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, /obj/structure/disposalpipe/sorting/mail{ dir = 1; - icon_state = "pipe-j1s"; name = "sorting disposal pipe (Detective)"; sortType = 30 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "bPB" = ( @@ -47810,7 +44121,6 @@ }, /obj/structure/sign/directions/evac{ dir = 8; - icon_state = "direction_evac"; pixel_y = 42 }, /turf/open/floor/plasteel, @@ -47870,246 +44180,79 @@ /turf/open/floor/wood, /area/crew_quarters/heads/captain) "bPF" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ +/obj/machinery/suit_storage_unit/engine, +/obj/effect/turf_decal/bot{ dir = 1 }, -/obj/effect/turf_decal/stripes/line{ +/obj/machinery/light{ dir = 1 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /turf/open/floor/plasteel, /area/engine/engineering) -"bPG" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/space/basic, -/area/space/nearstation) "bPH" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ +/obj/structure/tank_dispenser, +/obj/effect/turf_decal/bot{ dir = 1 }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /turf/open/floor/plasteel, /area/engine/engineering) -"bPI" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPJ" = ( -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"bPK" = ( -/obj/effect/turf_decal/delivery, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, -/obj/machinery/power/emitter{ - icon_state = "emitter"; - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bPL" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/closed/wall, -/area/maintenance/starboard/fore) "bPM" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/maintenance/fore) -"bPN" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/space/basic, -/area/space/nearstation) "bPO" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" +/obj/machinery/power/terminal{ + dir = 4 }, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "2-8" }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"bPP" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"bPT" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"bPV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"bPW" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible, /obj/structure/cable{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bPQ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/sign/warning/radiation/rad_area{ - pixel_y = 32 - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/space/basic, -/area/space/nearstation) -"bPR" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/space/basic, -/area/space/nearstation) -"bPS" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/turf/open/space/basic, -/area/space/nearstation) -"bPT" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bPU" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"bPV" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"bPW" = ( -/obj/machinery/power/emitter, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bPX" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ +/turf/open/floor/plasteel, +/area/engine/engine_room) +"bPY" = ( +/obj/machinery/power/terminal{ dir = 4 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"bPY" = ( /obj/structure/cable{ - icon_state = "1-2" + icon_state = "0-2" }, -/obj/structure/lattice/catwalk, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/space/basic, -/area/space/nearstation) -"bPZ" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"bQa" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "bQb" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance, @@ -48118,12 +44261,6 @@ }, /turf/open/floor/plating, /area/maintenance/port/fore) -"bQc" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/closed/wall, -/area/maintenance/port/aft) "bQd" = ( /obj/structure/grille, /obj/structure/window/reinforced{ @@ -48194,7 +44331,6 @@ /area/maintenance/fore) "bQn" = ( /obj/structure/toilet{ - icon_state = "toilet00"; dir = 8 }, /obj/structure/window/reinforced/tinted, @@ -48279,19 +44415,6 @@ /obj/item/clothing/head/cone, /turf/open/floor/plating, /area/maintenance/department/security) -"bQy" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/item/clothing/head/cone, -/turf/open/floor/plating, -/area/maintenance/port/aft) "bQz" = ( /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, @@ -48568,13 +44691,6 @@ /obj/structure/closet/firecloset, /turf/open/floor/plating, /area/maintenance/port/aft) -"bRe" = ( -/obj/item/clothing/head/cone, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/floor/plating, -/area/maintenance/department/security) "bRf" = ( /obj/structure/closet/crate{ name = "Surplus Genetics Supplies" @@ -48682,24 +44798,6 @@ /obj/machinery/holopad, /turf/open/floor/plasteel/white, /area/medical/medbay/central) -"bRq" = ( -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/security/brig) -"bRr" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/holopad, -/turf/open/floor/plasteel, -/area/engine/engineering) "bRs" = ( /obj/machinery/holopad, /turf/open/floor/plasteel, @@ -48851,11 +44949,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/fore) -"bRF" = ( -/obj/structure/table, -/obj/item/toy/figure/borg, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat/foyer) "bRG" = ( /obj/structure/bed, /obj/effect/turf_decal/tile/neutral{ @@ -49006,20 +45099,6 @@ /obj/item/book/random/triple, /turf/open/floor/plating, /area/maintenance/fore) -"bRV" = ( -/obj/structure/lattice, -/turf/open/space/basic, -/area/engine/atmos) -"bRW" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "bRX" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -49038,7 +45117,7 @@ }, /obj/structure/window/reinforced, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "bRZ" = ( /obj/structure/rack, /obj/item/poster/random_official, @@ -49051,7 +45130,7 @@ pixel_y = 4 }, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "bSa" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/closet/crate, @@ -49064,7 +45143,7 @@ "bSb" = ( /obj/machinery/light/small, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "bSc" = ( /obj/machinery/door/poddoor{ id = "toxinsdriver"; @@ -49084,7 +45163,7 @@ /obj/item/reagent_containers/glass/bucket, /obj/item/scythe, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "bSe" = ( /obj/structure/chair/comfy/black{ dir = 1 @@ -49097,36 +45176,10 @@ initial_gas_mix = "n2o=1000;TEMP=293.15" }, /area/engine/atmos) -"bSg" = ( -/obj/machinery/power/terminal{ - icon_state = "term"; - dir = 8 - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 5 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bSh" = ( /obj/machinery/atmospherics/components/binary/pump, /turf/open/floor/plasteel/white, /area/science/xenobiology) -"bSi" = ( -/obj/machinery/power/apc{ - areastring = "/area/maintenance/port/aft"; - dir = 1; - name = "Port Aft Maintenance APC"; - pixel_y = 24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/maintenance/port/aft) "bSj" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plating, @@ -49204,6 +45257,9 @@ /area/maintenance/starboard/fore) "bSr" = ( /obj/structure/grille/broken, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/maintenance/fore) "bSs" = ( @@ -49215,15 +45271,6 @@ /obj/structure/closet, /turf/open/floor/plating, /area/maintenance/fore) -"bSu" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bSv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, @@ -49355,28 +45402,11 @@ /turf/open/floor/plating, /area/maintenance/department/security) "bSK" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" +/obj/structure/cable/yellow{ + icon_state = "1-4" }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) -"bSL" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Containment Access"; - req_access_txt = "10" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "bSM" = ( /obj/machinery/power/compressor{ comp_id = "incineratorturbine"; @@ -50137,17 +46167,6 @@ }, /turf/open/floor/plasteel/white, /area/science/mixing) -"bUj" = ( -/obj/machinery/camera{ - c_tag = "Research - Toxins Main 2"; - dir = 2; - network = list("ss13","Research") - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 9 - }, -/turf/open/floor/plasteel/white, -/area/science/mixing) "bUk" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -50246,12 +46265,12 @@ pixel_y = 32 }, /turf/open/space/basic, -/area/space) +/area/space/nearstation) "bUy" = ( /obj/structure/cable{ icon_state = "1-2" }, -/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_toxmix{ +/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{ dir = 8 }, /turf/open/floor/engine, @@ -50569,19 +46588,6 @@ }, /turf/open/floor/plasteel/dark, /area/chapel/office) -"bVm" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bVn" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -50765,21 +46771,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/port/fore) -"bVI" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 8 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bVJ" = ( /obj/item/storage/firstaid/regular, /obj/structure/rack, @@ -51287,27 +47278,12 @@ dir = 4 }, /area/chapel/main) -"bWT" = ( -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bWU" = ( /obj/structure/window/reinforced{ dir = 8 }, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "bWV" = ( /obj/structure/closet/crate{ icon_state = "crateopen" @@ -51575,7 +47551,6 @@ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ - icon_state = "freezer_1"; dir = 8 }, /turf/open/floor/plasteel/white, @@ -51589,18 +47564,6 @@ }, /turf/open/floor/plasteel/white, /area/science/xenobiology) -"bXM" = ( -/obj/machinery/power/terminal{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bXN" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -51694,7 +47657,7 @@ pixel_x = -32 }, /turf/open/space/basic, -/area/engine/atmos) +/area/space/nearstation) "bYa" = ( /obj/structure/table, /obj/item/flashlight/lamp, @@ -51772,38 +47735,6 @@ /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/port) -"bYo" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/circuit, -/area/engine/engineering) -"bYp" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/engine/engineering) -"bYq" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "External Arm Access"; - req_access_txt = "10" - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) "bYr" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -51937,11 +47868,6 @@ /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/port) -"bYF" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/spawner/lootdrop/crate_spawner, -/turf/open/floor/plating, -/area/maintenance/department/security) "bYG" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -52001,24 +47927,6 @@ /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/aft) -"bYM" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/department/security) -"bYN" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/department/security) "bYO" = ( /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, @@ -52066,13 +47974,6 @@ /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/department/security) -"bYT" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/department/security) "bYU" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -52162,24 +48063,6 @@ /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/aft) -"bZd" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 10 - }, -/turf/open/floor/plating, -/area/maintenance/starboard/fore) -"bZe" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, -/turf/open/floor/circuit, -/area/engine/engineering) "bZf" = ( /obj/structure/closet/cardboard, /obj/effect/spawner/lootdrop/maintenance{ @@ -52399,22 +48282,6 @@ }, /turf/open/floor/plasteel/dark, /area/janitor) -"bZB" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/structure/sign/poster/official/build{ - pixel_y = 32 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "bZC" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -52597,14 +48464,6 @@ icon_state = "panelscorched" }, /area/maintenance/department/crew_quarters/bar) -"bZR" = ( -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/obj/structure/closet/crate, -/obj/item/paicard, -/turf/open/floor/plating, -/area/maintenance/department/security) "bZS" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ dir = 4 @@ -52652,7 +48511,7 @@ empty = 1; name = "First-Aid (empty)" }, -/obj/item/circuitboard/machine/sleeper, +/obj/item/circuitboard/machine/stasis, /turf/open/floor/plating, /area/maintenance/port) "bZY" = ( @@ -52686,39 +48545,11 @@ /obj/item/gun/magic/wand, /turf/open/floor/carpet, /area/crew_quarters/theatre) -"cac" = ( -/obj/machinery/power/apc/highcap/five_k{ - dir = 2; - name = "AI Chamber APC"; - areastring = "/area/ai_monitored/turret_protected/ai"; - pixel_y = -24 - }, -/obj/machinery/flasher{ - id = "AI"; - pixel_x = -11; - pixel_y = -24 - }, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/door/poddoor/shutters/preopen{ - id = "aishutters"; - name = "AI privacy shutters" - }, -/obj/machinery/door/window/eastleft{ - name = "AI Access"; - req_access_txt = "16" - }, -/turf/open/floor/circuit, -/area/ai_monitored/turret_protected/ai) "cad" = ( /obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/blobstart, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/starboard/fore) @@ -52755,19 +48586,6 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/starboard/fore) -"cai" = ( -/obj/machinery/power/apc{ - areastring = "/area/library"; - dir = 8; - name = "Library APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/port/aft) "caj" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -52796,14 +48614,14 @@ }, /obj/effect/decal/cleanable/cobweb, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "can" = ( /obj/structure/window/reinforced{ dir = 4 }, /obj/structure/closet, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "cao" = ( /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, @@ -52823,7 +48641,7 @@ name = "4maintenance loot spawner" }, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "car" = ( /obj/effect/landmark/blobstart, /turf/open/floor/plating, @@ -52942,10 +48760,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel, /area/security/checkpoint/medical) -"caE" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/engine/engineering) "caF" = ( /obj/effect/turf_decal/tile/green{ dir = 8 @@ -52954,22 +48768,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel, /area/hydroponics) -"caG" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, -/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 6 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plasteel, -/area/engine/engineering) "caH" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/plasteel/white, @@ -53015,20 +48813,10 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/heads/cmo) "caM" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/effect/turf_decal/tile/neutral{ +/obj/structure/chair/office/light{ dir = 1 }, -/obj/effect/turf_decal/tile/neutral, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/landmark/event_spawn, +/obj/effect/landmark/start/chief_engineer, /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "caN" = ( @@ -53046,11 +48834,7 @@ "caO" = ( /obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer3, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, /obj/structure/disposalpipe/junction{ - icon_state = "pipe-j1"; dir = 4 }, /obj/machinery/navbeacon{ @@ -53059,6 +48843,12 @@ name = "navigation beacon (BOTTOMMID)" }, /obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 6 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "caP" = ( @@ -53135,7 +48925,6 @@ /area/gateway) "caX" = ( /obj/machinery/computer/telecomms/monitor{ - icon_state = "computer"; dir = 8 }, /obj/machinery/light{ @@ -53183,12 +48972,6 @@ /obj/structure/weightmachine/stacklifter, /turf/open/floor/plasteel, /area/crew_quarters/fitness) -"cbf" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) "cbg" = ( /obj/structure/mirror{ pixel_y = 32 @@ -53297,25 +49080,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/quartermaster/office) -"cbw" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/sign/warning/electricshock{ - pixel_x = 32 - }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/port/aft) -"cbx" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/obj/structure/girder, -/turf/open/floor/plating, -/area/maintenance/port/aft) "cby" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -53324,10 +49088,9 @@ icon_state = "1-8" }, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "cbz" = ( /obj/machinery/computer/camera_advanced/xenobio{ - icon_state = "computer"; dir = 1 }, /turf/open/floor/plasteel, @@ -53356,7 +49119,7 @@ }, /obj/effect/landmark/blobstart, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "cbD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -53523,21 +49286,6 @@ }, /turf/open/floor/plating, /area/maintenance/port) -"cbQ" = ( -/obj/structure/table, -/obj/machinery/power/apc{ - areastring = "/area/medical/genetics/cloning"; - dir = 2; - name = "Cloning Bay APC"; - pixel_y = -24 - }, -/obj/structure/cable/yellow, -/obj/item/toy/figure/geneticist, -/obj/structure/window/reinforced{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/medical/genetics/cloning) "cbR" = ( /obj/machinery/light, /obj/structure/disposalpipe/trunk{ @@ -53546,7 +49294,6 @@ /obj/machinery/disposal/deliveryChute{ desc = "A chute for big and small corpses alike!"; dir = 1; - icon_state = "intake"; name = "corpse chute" }, /obj/machinery/door/window/northleft{ @@ -53570,10 +49317,10 @@ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance{ - req_one_access_txt = "12;35;28;25" + req_one_access_txt = "12;22;25;26;28;35;37;38;46" }, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "cbU" = ( /obj/structure/cable/yellow{ icon_state = "1-8" @@ -53582,7 +49329,7 @@ icon_state = "1-4" }, /turf/open/floor/plating, -/area/maintenance/port/aft) +/area/maintenance/fore) "cbV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/secure_closet/brig{ @@ -53602,7 +49349,7 @@ "cbX" = ( /obj/machinery/status_display, /turf/closed/wall, -/area/maintenance/port/aft) +/area/maintenance/fore) "cbY" = ( /obj/machinery/status_display, /turf/closed/wall, @@ -53672,7 +49419,6 @@ }, /obj/machinery/computer/security/telescreen{ name = "Test Chamber Monitor"; - icon_state = "telescreen"; dir = 4; pixel_y = 2; network = list("xeno") @@ -53786,7 +49532,6 @@ /area/construction) "ccw" = ( /obj/machinery/power/terminal{ - icon_state = "term"; dir = 8 }, /obj/structure/cable/yellow{ @@ -53827,7 +49572,6 @@ dir = 4 }, /obj/structure/transit_tube/station/reverse{ - icon_state = "closed_terminus0"; dir = 1 }, /turf/open/floor/plating, @@ -54006,7 +49750,6 @@ }, /obj/structure/window/reinforced, /obj/structure/transit_tube/curved/flipped{ - icon_state = "curved1"; dir = 4 }, /turf/open/floor/plating, @@ -54047,7 +49790,6 @@ dir = 8 }, /obj/structure/transit_tube/curved{ - icon_state = "curved0"; dir = 8 }, /turf/open/floor/plating, @@ -54137,7 +49879,6 @@ "cdh" = ( /obj/structure/lattice, /obj/structure/transit_tube/curved{ - icon_state = "curved0"; dir = 8 }, /turf/open/space/basic, @@ -54170,19 +49911,6 @@ dir = 8 }, /area/hallway/secondary/exit/departure_lounge) -"cdk" = ( -/obj/machinery/power/apc{ - areastring = "/area/construction"; - cell_type = null; - dir = 8; - name = "Construction APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow{ - icon_state = "0-2" - }, -/turf/open/floor/plating, -/area/construction) "cdl" = ( /obj/effect/decal/cleanable/dirt, /obj/item/crowbar, @@ -54252,6 +49980,7 @@ /obj/machinery/light/small{ dir = 8 }, +/obj/structure/closet/emcloset, /turf/open/floor/plating, /area/ai_monitored/turret_protected/aisat/foyer) "cdu" = ( @@ -54263,14 +49992,12 @@ "cdv" = ( /obj/structure/lattice/catwalk, /obj/structure/transit_tube/curved{ - icon_state = "curved0"; dir = 1 }, /turf/open/space/basic, /area/space/nearstation) "cdw" = ( /obj/structure/transit_tube/station/reverse{ - icon_state = "closed_terminus0"; dir = 1 }, /turf/open/floor/plating, @@ -54292,7 +50019,6 @@ name = "AI privacy shutters" }, /obj/structure/transit_tube/curved/flipped{ - icon_state = "curved1"; dir = 8 }, /turf/open/floor/plating, @@ -54310,7 +50036,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat/foyer"; enabled = 1; - icon_state = "control_standby"; name = "AI Chamber Foyer Control"; pixel_y = -24; req_access = null; @@ -54348,7 +50073,6 @@ "cdE" = ( /obj/structure/lattice, /obj/structure/transit_tube/curved{ - icon_state = "curved0"; dir = 1 }, /turf/open/space/basic, @@ -54375,7 +50099,6 @@ "cdI" = ( /obj/structure/lattice/catwalk, /obj/structure/transit_tube/curved/flipped{ - icon_state = "curved1"; dir = 8 }, /turf/open/space/basic, @@ -54422,21 +50145,6 @@ initial_gas_mix = "o2=1000;TEMP=293.15" }, /area/engine/atmos) -"cdO" = ( -/obj/structure/plasticflaps/opaque, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=1"; - dir = 1; - freq = 1400; - location = "Engineering"; - name = "navigation beacon (Engineering Delivery)" - }, -/obj/machinery/door/window/northright{ - name = "Engineering Delivery Access"; - req_access_txt = "10" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) "cdP" = ( /obj/effect/turf_decal/tile/yellow{ dir = 1 @@ -54482,23 +50190,6 @@ }, /turf/open/floor/plating, /area/security/main) -"cdS" = ( -/obj/machinery/suit_storage_unit/security, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/power/apc{ - areastring = "/area/ai_monitored/security/armory"; - dir = 8; - name = "Armory APC"; - pixel_x = -24 - }, -/obj/structure/cable/yellow, -/turf/open/floor/plasteel, -/area/ai_monitored/security/armory) "cdT" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance{ @@ -54522,13 +50213,6 @@ /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/plating, /area/maintenance/port/fore) -"cdW" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/effect/spawner/lootdrop/grille_or_trash, -/turf/open/floor/plating, -/area/maintenance/port/fore) "cdX" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -54851,6 +50535,9 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ dir = 1 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "ceF" = ( @@ -54859,11 +50546,13 @@ }, /obj/structure/disposalpipe/sorting/mail/flip{ dir = 4; - icon_state = "pipe-j2s"; name = "sorting disposal pipe (Law Office)"; sortType = 29 }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel, /area/hallway/primary/central) "ceG" = ( @@ -54881,30 +50570,33 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/disposalpipe/sorting/mail/flip{ - dir = 4; - icon_state = "pipe-j2s"; - name = "sorting disposal pipe (Engineering)"; - sortType = 0; - sortTypes = list(4,5) - }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ dir = 1 }, -/turf/open/floor/plasteel, -/area/hallway/primary/central) -"ceI" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ +/obj/structure/disposalpipe/segment{ dir = 4 }, /obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"ceI" = ( +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 4; + name = "sorting disposal pipe (Engineering)"; + sortTypes = list(4,5) }, -/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ - dir = 1 +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 9 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/central) @@ -54996,6 +50688,13 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) +"ceW" = ( +/obj/effect/landmark/start/station_engineer, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) "cfc" = ( /turf/open/floor/plasteel/white/side{ dir = 1 @@ -55007,20 +50706,317 @@ dir = 1 }, /area/science/xenobiology) -"cIZ" = ( -/turf/closed/wall, -/area/crew_quarters/fitness/locker_room) -"cOZ" = ( -/obj/machinery/power/rad_collector/anchored, -/obj/structure/cable{ - icon_state = "0-4" +"cgH" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Cooling Loop Bypass" }, -/obj/effect/turf_decal/bot, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"cla" = ( /obj/structure/cable/yellow{ icon_state = "1-2" }, -/turf/open/floor/circuit/airless, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"clO" = ( +/obj/structure/table/glass, +/obj/item/reagent_containers/glass/beaker/cryoxadone, +/obj/item/reagent_containers/glass/beaker/cryoxadone, +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/medical/cryo) +"csr" = ( +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/turf/open/floor/plasteel/dark/telecomms, +/area/tcommsat/server) +"csH" = ( +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"cvc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/mob/living/simple_animal/bot/cleanbot, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/service) +"cvq" = ( +/obj/machinery/atmospherics/pipe/simple/purple/visible{ + dir = 6 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -24 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"cxa" = ( +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"cxK" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"czY" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/teleporter"; + dir = 1; + name = "Teleporter APC"; + pixel_y = 23 + }, +/turf/open/floor/plasteel/dark, +/area/teleporter) +"cAa" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"cDf" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Engineering - Suit Storage"; + dir = 8; + network = list("ss13","Engineering","Engine") + }, +/turf/open/floor/plasteel, /area/engine/engineering) +"cIZ" = ( +/turf/closed/wall, +/area/crew_quarters/fitness/locker_room) +"cLX" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/engineering/glass/critical{ + heat_proof = 1; + name = "Supermatter Chamber"; + req_access_txt = "10" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/turf/open/floor/engine, +/area/engine/supermatter) +"cNG" = ( +/obj/structure/table/wood, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/pen, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/wood, +/area/lawoffice) +"cOZ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/engine/supermatter) +"cPq" = ( +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/heads/captain"; + dir = 1; + name = "Captain's Office APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/newscaster/security_unit{ + pixel_x = -32 + }, +/obj/machinery/door/window/southleft{ + name = "Suit Access"; + req_access_txt = "20" + }, +/turf/open/floor/wood, +/area/crew_quarters/heads/captain) +"cPK" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/department/security"; + dir = 1; + name = "Security Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"cRz" = ( +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/fitness/recreation"; + dir = 8; + name = "Dormatories APC"; + pixel_x = -25 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"cUe" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Laser Room"; + req_access_txt = "10" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/engine, +/area/engine/engine_room) +"cXx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"cYx" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"cZN" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "External Gas to Loop" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"dfK" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 4 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"dfN" = ( +/obj/structure/reflector/single/anchored{ + dir = 6 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"dgr" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/closet/crate, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"diw" = ( +/obj/item/radio/intercom{ + pixel_y = -29 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/science/research) +"dlq" = ( +/obj/machinery/door/airlock/hatch{ + name = "Supermatter External Chamber"; + req_access_txt = "10" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"dmV" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/engine/engine_room) "dns" = ( /obj/structure/closet/secure_closet/personal, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -55028,9 +51024,33 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"dnN" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"dpg" = ( +/obj/machinery/suit_storage_unit/open, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"dpT" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/engine/engine_room) "dtX" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/junction{ - icon_state = "pipe11-2"; dir = 4 }, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, @@ -55039,18 +51059,342 @@ /obj/structure/reagent_dispensers/cooking_oil, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) +"dxJ" = ( +/obj/structure/closet/wardrobe/science_white, +/turf/open/floor/plasteel/white, +/area/science/explab) +"dzi" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/camera/autoname{ + dir = 8 + }, +/obj/machinery/power/apc/highcap/ten_k{ + areastring = "/area/engine/engine_room"; + dir = 2; + name = "Engine Room APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"dCc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/item/twohanded/required/kirbyplants/random, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"dEx" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"dFi" = ( +/obj/machinery/atmospherics/pipe/manifold4w/general/visible, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"dIr" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"dNx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"dUa" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plasteel, +/area/engine/engineering) +"dUt" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating, +/area/engine/engineering) +"dUT" = ( +/obj/structure/table/glass, +/obj/item/reagent_containers/glass/beaker/large{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/reagent_containers/glass/beaker{ + pixel_x = 8; + pixel_y = 2 + }, +/obj/item/reagent_containers/dropper, +/obj/item/radio/intercom{ + pixel_y = 29 + }, +/turf/open/floor/plasteel/white, +/area/science/lab) +"dXK" = ( +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/fore"; + dir = 1; + name = "Fore Maintenance APC"; + pixel_y = 23 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"dYW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"dZa" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"dZW" = ( +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"edu" = ( +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/security/main"; + dir = 1; + name = "Security Office APC"; + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/security/main) +"eiC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/obj/effect/landmark/start/station_engineer, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"elZ" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating, +/area/engine/engineering) +"emg" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engineering) +"enD" = ( +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/obj/structure/closet/radiation, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"eoH" = ( +/obj/machinery/light/small, +/obj/machinery/camera{ + c_tag = "Atmospherics - Breakroom"; + dir = 1; + network = list("ss13","Atmospherics") + }, +/obj/effect/turf_decal/tile/yellow, +/obj/item/radio/intercom{ + pixel_y = -25 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) +"eqa" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/obj/structure/sign/warning/securearea{ + pixel_y = 32 + }, +/turf/open/space/basic, +/area/space/nearstation) +"eqn" = ( +/obj/machinery/suit_storage_unit/hos, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads/hos) +"esb" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/door/window/northleft{ + name = "AI Access"; + req_access_txt = "16" + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"esp" = ( +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"esN" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/lobby) "esU" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple, /obj/structure/closet/secure_closet/freezer/fridge, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) -"ezL" = ( +"etl" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/effect/spawner/lootdrop/grille_or_trash, /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ - icon_state = "2-4" + icon_state = "1-2" }, /turf/open/floor/plating, /area/maintenance/port/fore) +"etL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"euD" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"euN" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/glasses/meson, +/obj/item/clothing/glasses/meson, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/item/clothing/glasses/meson, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"exX" = ( +/obj/machinery/power/apc{ + areastring = "/area/medical/storage"; + dir = 8; + name = "Medical Storage APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/maintenance/department/medical) +"eyM" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -26 + }, +/obj/machinery/camera/autoname{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"ezo" = ( +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) "eCj" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55065,24 +51409,596 @@ /obj/item/bikehorn/rubberducky, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"eCr" = ( +/obj/machinery/camera/autoname{ + dir = 9 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"eFB" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"eKx" = ( +/obj/machinery/smartfridge/drinks, +/turf/closed/wall, +/area/crew_quarters/bar) +"eLr" = ( +/obj/machinery/button/door{ + id = "podescape"; + name = "Pod Bay Control"; + normaldoorcontrol = 0; + pixel_x = -8; + pixel_y = 24 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"eMz" = ( +/obj/machinery/chem_master/condimaster{ + desc = "Looks like a knock-off chem-master. Perhaps useful for separating liquids when mixing drinks precisely. Also dispenses condiments."; + name = "HoochMaster Deluxe"; + pixel_x = -4 + }, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/wood, +/area/crew_quarters/bar) +"eNp" = ( +/obj/machinery/power/apc{ + areastring = "/area/chapel/main"; + dir = 8; + name = "Chapel Main APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"eNw" = ( +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"eQp" = ( +/obj/machinery/smartfridge/food, +/turf/closed/wall, +/area/crew_quarters/kitchen) +"eQq" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/item/radio/intercom{ + pixel_y = 29 + }, +/obj/machinery/computer/aifixer{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Research - Research Director's Office"; + dir = 2; + network = list("ss13","Research") + }, +/turf/open/floor/plasteel/cafeteria, +/area/crew_quarters/heads/hor) "eRe" = ( +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/plasteel, +/area/engine/engineering) +"eRs" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 8; + name = "scrubbers pipe" + }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"eSa" = ( +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/quartermaster/office"; + dir = 8; + name = "Cargo Main APC"; + pixel_x = -25 + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"eVJ" = ( +/obj/structure/closet/radiation, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/camera/autoname{ + dir = 8 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"eXR" = ( +/obj/structure/closet/secure_closet/hop, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Bridge - Head of Personnel's Private Quarters"; + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads/hop) +"eZi" = ( +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/security/warden"; + dir = 1; + name = "Warden's Office APC"; + pixel_y = 23 + }, +/turf/open/floor/plasteel/showroomfloor, +/area/security/warden) +"fdn" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden/layer3, +/turf/open/floor/plasteel, +/area/engine/engineering) +"fdM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"feg" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/airlock/command/glass{ + name = "Chief Engineer"; + req_access_txt = "56" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/crew_quarters/heads/chief) +"feu" = ( +/obj/machinery/door/airlock/hatch{ + name = "Supermatter External Chamber"; + req_access_txt = "10" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/effect/turf_decal/delivery, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"fid" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"fis" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"fiC" = ( +/obj/machinery/computer/teleporter, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/dark, +/area/teleporter) +"fkV" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 6 + }, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"fpA" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 9 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"fqe" = ( +/obj/structure/closet/secure_closet/medical3, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/storage) +"fvY" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, /obj/effect/turf_decal/tile/yellow{ dir = 1 }, -/obj/effect/turf_decal/tile/yellow{ +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"fxC" = ( +/obj/machinery/airalarm{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/white/side{ + dir = 10 + }, +/area/science/research) +"fzs" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/obj/structure/closet/secure_closet/freezer/meat, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, +/area/crew_quarters/kitchen/coldroom) +"fzV" = ( +/obj/machinery/button/door{ + desc = "A remote control-switch for the engineering security doors."; + id = "Engineering"; + name = "Engineering Lockdown"; + pixel_x = 24; + pixel_y = -5; + req_access_txt = "10" + }, +/obj/machinery/button/door{ + dir = 2; + id = "supermatter_external"; + name = "Supermatter External Lockdown"; + pixel_x = 36; + pixel_y = 5; + req_access_txt = "24" + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/machinery/button/door{ + dir = 2; + id = "atmos"; + name = "Atmospherics Lockdown"; + pixel_x = 24; + pixel_y = 5; + req_access_txt = "24" + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"fAP" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/machinery/camera/autoname, +/turf/open/floor/engine, +/area/engine/supermatter) +"fED" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"fKt" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"fMr" = ( +/obj/item/radio/intercom{ + pixel_y = -25 + }, +/turf/open/floor/plasteel/white, +/area/science/xenobiology) +"fNR" = ( +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/library/lounge"; + dir = 2; + name = "Lounge APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"fOk" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"fSj" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit/departure_lounge) +"fVo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/engine/atmos) +"fVB" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/plasteel, -/area/engine/engineering) +/area/engine/engine_room) +"fWk" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"gbC" = ( +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 8; + name = "Cooling Loop to Gas" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"gdD" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/wood, +/area/crew_quarters/heads/captain) +"gqB" = ( +/obj/structure/table/glass, +/obj/item/storage/box/rxglasses, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/storage/box/disks{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/machinery/requests_console{ + department = "Genetics"; + departmentType = 0; + name = "Genetics Requests Console"; + pixel_x = -30 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"grn" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 1 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/requests_console{ + department = "Security"; + departmentType = 5; + pixel_x = -30 + }, +/turf/open/floor/plasteel, +/area/security/main) "gst" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/closed/wall, /area/crew_quarters/fitness/locker_room) +"gsu" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/quartermaster/warehouse"; + dir = 1; + name = "Cargo Warehouse APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/effect/spawner/lootdrop/grille_or_trash, +/turf/open/floor/plating, +/area/maintenance/starboard) +"gwx" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) +"gxl" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"gBb" = ( +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/machinery/power/apc{ + areastring = "/area/security/checkpoint/science"; + dir = 2; + name = "Science Checkpoint APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow, +/turf/open/floor/plasteel, +/area/security/checkpoint/science) +"gDW" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/space/basic, +/area/space/nearstation) +"gEO" = ( +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"gFA" = ( +/obj/effect/spawner/structure/window/plasma/reinforced, +/turf/open/floor/plating, +/area/engine/engine_room) "gGG" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -55099,6 +52015,188 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"gJo" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/janitor) +"gNl" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "Output Toggle" + }, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/structure/sign/warning/fire{ + pixel_y = 32 + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"gPD" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"gVB" = ( +/obj/machinery/computer/med_data, +/obj/machinery/power/apc{ + areastring = "/area/medical/sleeper"; + dir = 1; + name = "Sleepers APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/white, +/area/medical/sleeper) +"gVW" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/item/radio/intercom, +/turf/open/floor/plasteel, +/area/security/checkpoint/medical) +"gWa" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"hdH" = ( +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/nuke_storage) +"hez" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/foyer) +"hfx" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"hhd" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/bridge"; + dir = 8; + name = "Bridge APC"; + pixel_x = -24 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/dark, +/area/bridge) +"hjz" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/dorms"; + dir = 2; + name = "Sleeping Quarters APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"hjJ" = ( +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/hallway/secondary/exit/departure_lounge"; + dir = 1; + name = "Departures APC"; + pixel_y = 23 + }, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"hlK" = ( +/obj/structure/closet/secure_closet/detective, +/obj/item/camera_film, +/obj/item/camera_film, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/carpet, +/area/security/detectives_office) +"hmG" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/camera/autoname{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"hmV" = ( +/obj/structure/window/plasma/reinforced{ + dir = 4 + }, +/obj/machinery/power/rad_collector/anchored, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/camera/autoname, +/turf/open/floor/circuit/green, +/area/engine/supermatter) "hnd" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55114,12 +52212,101 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"hpm" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/item/radio/intercom{ + pixel_x = -29 + }, +/turf/open/floor/plasteel/dark, +/area/bridge) +"hpU" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"hrD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/engine/engineering) "htS" = ( /obj/structure/extinguisher_cabinet{ pixel_y = 28 }, /turf/open/floor/plasteel/dark, /area/science/lab) +"hvP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/disposalpipe/segment, +/obj/machinery/door/firedoor, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"hAk" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Input Toggle" + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/obj/structure/sign/warning/fire{ + pixel_y = 32 + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"hAI" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"hDU" = ( +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/security/main) "hGn" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -55140,17 +52327,475 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) -"iJC" = ( -/obj/machinery/power/rad_collector/anchored, -/obj/structure/cable{ - icon_state = "0-8" +"hKj" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"hLL" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"hNP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/sorting/mail{ + dir = 4; + name = "sorting disposal pipe (Atmospherics)"; + sortType = 6 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"hOQ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"hRG" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/space/basic, +/area/space/nearstation) +"hSe" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"hTm" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"hTF" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, /obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"hTU" = ( +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"hVt" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"hXd" = ( +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/door/airlock/external{ + name = "External Airlock"; + req_access_txt = "13" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"hYj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/kitchen/coldroom"; + dir = 1; + name = "Kitchen APC"; + pixel_y = 24 + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"hYI" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 9 + }, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"hYL" = ( +/obj/machinery/power/apc{ + areastring = "/area/ai_monitored/turret_protected/ai_upload"; + dir = 2; + name = "AI Upload APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai_upload) +"hZC" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 9 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"ibF" = ( +/obj/machinery/power/apc{ + areastring = "/area/lawoffice"; + dir = 2; + name = "Lawyer's Office APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"icc" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) +"ice" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, /obj/structure/cable/yellow{ icon_state = "1-2" }, -/turf/open/floor/circuit/airless, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"ifH" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plasteel, +/area/engine/atmos) +"ifP" = ( +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"iif" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal/fifty, +/obj/item/stack/sheet/glass/fifty, +/obj/item/clothing/head/welding, +/obj/item/stack/sheet/mineral/plasma{ + amount = 35 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/service) +"iiw" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) +"ijH" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_x = 30 + }, +/turf/open/floor/plasteel/white, +/area/science/robotics/lab) +"ili" = ( +/obj/machinery/light, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/plasteel/white/side{ + dir = 5 + }, +/area/science/research) +"ipB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"itU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 1 + }, +/obj/item/radio/intercom{ + pixel_y = -25 + }, +/turf/open/floor/plasteel, +/area/janitor) +"ixd" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space/basic, +/area/space/nearstation) +"iCB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/structure/chair/stool, +/obj/machinery/light/small, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"iGD" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/turf/closed/wall/r_wall, +/area/engine/engine_room) +"iGJ" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"iHp" = ( +/obj/structure/grille/broken, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"iHE" = ( +/obj/structure/table/glass, +/obj/item/reagent_containers/glass/beaker/cryoxadone{ + pixel_x = 7; + pixel_y = 1 + }, +/obj/item/reagent_containers/glass/beaker/cryoxadone{ + pixel_x = 7; + pixel_y = 1 + }, +/obj/item/radio/intercom{ + pixel_y = 29 + }, +/turf/open/floor/plasteel, +/area/medical/cryo) +"iIq" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating, /area/engine/engineering) +"iJC" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/effect/landmark/start/station_engineer, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"iMs" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"iNo" = ( +/obj/machinery/power/apc{ + areastring = "/area/security/detectives_office"; + dir = 1; + name = "Detective's Office APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/carpet, +/area/security/detectives_office) +"iRE" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"iUF" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) +"iUZ" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/space/basic, +/area/space/nearstation) +"iXv" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"jdu" = ( +/obj/structure/closet/radiation, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"jip" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"jlL" = ( +/obj/item/reagent_containers/spray/plantbgone{ + pixel_y = 3 + }, +/obj/item/reagent_containers/spray/plantbgone{ + pixel_x = 8; + pixel_y = 8 + }, +/obj/item/reagent_containers/spray/plantbgone{ + pixel_x = 13; + pixel_y = 5 + }, +/obj/item/watertank, +/obj/item/grenade/chem_grenade/antiweed, +/obj/structure/table/glass, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"jpL" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/item/storage/toolbox/emergency, +/obj/item/storage/toolbox/emergency{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/bridge) +"jqp" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/turf/closed/wall/r_wall, +/area/engine/supermatter) "jro" = ( /obj/structure/closet/secure_closet/personal, /obj/machinery/light/small{ @@ -55158,6 +52803,45 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"jsm" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space/basic, +/area/space/nearstation) +"jsv" = ( +/obj/machinery/light, +/obj/machinery/firealarm{ + dir = 1; + pixel_y = -26 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"jvP" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"jws" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/effect/landmark/start/station_engineer, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"jxP" = ( +/obj/machinery/power/supermatter_crystal/engine, +/turf/open/floor/engine, +/area/engine/supermatter) "jzE" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -55175,28 +52859,279 @@ }, /obj/structure/sign/directions/supply{ dir = 1; - icon_state = "direction_supply"; pixel_y = 42 }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"jAc" = ( +/obj/machinery/announcement_system, +/obj/machinery/power/apc{ + areastring = "/area/tcommsat/computer"; + dir = 8; + name = "Telecomms Lounge APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/grimy, +/area/tcommsat/computer) +"jGy" = ( +/obj/machinery/power/smes/engineering, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"jHY" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"jJz" = ( +/obj/machinery/photocopier, +/obj/item/radio/intercom{ + pixel_y = -24 + }, +/turf/open/floor/wood, +/area/library) +"jLo" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 9 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"jQo" = ( +/obj/structure/table/reinforced, +/obj/item/tank/internals/emergency_oxygen/engi{ + pixel_x = 5 + }, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/glasses/meson/engine, +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/structure/sign/warning/electricshock{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"jSs" = ( +/obj/structure/reflector/double, +/turf/open/floor/plating, +/area/engine/engine_room) +"jVA" = ( +/obj/structure/closet/secure_closet/engineering_welding, +/turf/open/floor/plasteel, +/area/engine/engineering) +"jVL" = ( +/obj/machinery/camera{ + c_tag = "Engine -External Midleft"; + dir = 8; + network = list("ss13","Engineering","Engine") + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "jZv" = ( +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel, +/area/engine/engineering) +"kaB" = ( +/obj/machinery/power/apc{ + areastring = "/area/ai_monitored/storage/eva"; + dir = 1; + name = "EVA APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"kcd" = ( /obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, -/area/engine/engineering) -"kow" = ( -/obj/machinery/power/rad_collector/anchored, -/obj/structure/cable, -/obj/effect/turf_decal/bot, -/obj/structure/cable/yellow{ - icon_state = "4-8" +/area/engine/engine_room) +"kcl" = ( +/obj/machinery/power/apc{ + areastring = "/area/medical/chemistry"; + dir = 8; + name = "Chemistry APC"; + pixel_x = -25 }, -/turf/open/floor/circuit/airless, -/area/engine/engineering) +/obj/structure/cable/yellow, +/turf/open/floor/plasteel/white, +/area/medical/chemistry) +"kfj" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/chapel{ + dir = 4 + }, +/area/chapel/main) +"klG" = ( +/obj/machinery/power/apc{ + areastring = "/area/hydroponics"; + dir = 1; + name = "Hydroponics APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"kmI" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"knv" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"kuZ" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/obj/machinery/camera/autoname{ + dir = 6 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/button/door{ + id = "engsm"; + name = "Radiation Shutters Control"; + pixel_y = 24; + req_access_txt = "10" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"kvC" = ( +/obj/machinery/computer/bank_machine, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/bot_white, +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/ai_monitored/nuke_storage"; + dir = 1; + name = "Vault APC"; + pixel_y = 23 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/nuke_storage) +"kyS" = ( +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/machinery/power/apc{ + areastring = "/area/medical/medbay/lobby"; + dir = 2; + name = "Medical Lobby APC"; + pixel_y = -24 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/maintenance/department/medical) +"kAG" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/crew_quarters/heads/chief) +"kAU" = ( +/obj/machinery/power/emitter/anchored{ + dir = 8; + state = 2 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/machinery/camera{ + c_tag = "Engine -Emitters Right"; + dir = 8; + network = list("ss13","Engineering","Engine") + }, +/turf/open/floor/plating, +/area/engine/engine_room) +"kBb" = ( +/obj/machinery/power/apc{ + areastring = "/area/maintenance/port/fore"; + dir = 1; + name = "Port Fore Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"kDh" = ( +/obj/machinery/suit_storage_unit/security, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/power/apc{ + areastring = "/area/ai_monitored/security/armory"; + dir = 8; + name = "Armory APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow, +/turf/open/floor/plasteel, +/area/ai_monitored/security/armory) "kLE" = ( /obj/machinery/power/apc{ areastring = "/area/crew_quarters/fitness/locker_room"; @@ -55209,6 +53144,115 @@ }, /turf/open/floor/plating, /area/maintenance/port/fore) +"kMb" = ( +/obj/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"kTN" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/noticeboard{ + dir = 8; + pixel_x = 27 + }, +/obj/item/paper/monitorkey, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/heads/chief"; + dir = 2; + name = "CE Office APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"kVx" = ( +/obj/machinery/hydroponics/constructable, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/hydroponics) +"kXJ" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_x = 30 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit/departure_lounge) +"leE" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"leR" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"lhs" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/obj/machinery/camera/autoname{ + dir = 10 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"liH" = ( +/obj/machinery/ntnet_relay, +/obj/machinery/power/apc{ + areastring = "/area/tcommsat/server"; + dir = 2; + name = "Telecomms Servers APC"; + pixel_y = -23 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/dark/telecomms, +/area/tcommsat/server) "ljF" = ( /obj/machinery/shower{ dir = 1 @@ -55216,14 +53260,143 @@ /obj/structure/curtain, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) -"lDQ" = ( -/obj/machinery/rnd/production/techfab/department/engineering, +"ltw" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/light, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, /turf/open/floor/plasteel, -/area/engine/atmos) +/area/hallway/primary/central) +"lwp" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"lxq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"lyr" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/spawner/lootdrop/grille_or_trash, +/turf/open/floor/plating, +/area/maintenance/fore) +"lzi" = ( +/obj/structure/rack, +/obj/item/storage/bag/plants/portaseeder, +/obj/item/plant_analyzer, +/obj/item/plant_analyzer{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/turf/open/floor/grass, +/area/hydroponics/garden) +"lzq" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 1 + }, +/obj/machinery/light/small, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"lEt" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "lEx" = ( /obj/machinery/chem_master/condimaster, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) +"lEO" = ( +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/disposal"; + dir = 8; + name = "Waste Disposal APC"; + pixel_x = -25; + pixel_y = 3 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"lFs" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/turf/open/space/basic, +/area/space/nearstation) +"lFx" = ( +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/heads/hos"; + dir = 4; + name = "Head of Security's Office APC"; + pixel_x = 24 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads/hos) +"lKe" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/disposal/bin, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"lKk" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "lLE" = ( /obj/effect/turf_decal/tile/purple{ dir = 8 @@ -55239,6 +53412,56 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"lND" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/turf/open/space/basic, +/area/space/nearstation) +"lOW" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/turf/open/space/basic, +/area/space/nearstation) +"maC" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"mbB" = ( +/obj/structure/table, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/foyer) +"mgs" = ( +/obj/structure/sign/warning/electricshock, +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"mhi" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/turf/open/space/basic, +/area/space/nearstation) +"miv" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"mjA" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 1 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) "mjC" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55249,31 +53472,1257 @@ /obj/structure/curtain, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"mlN" = ( +/obj/structure/closet/secure_closet/freezer/cream_pie, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/wood, +/area/crew_quarters/theatre) +"mnC" = ( +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/theatre"; + dir = 2; + name = "Theatre APC"; + pixel_y = -23 + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"moJ" = ( +/obj/structure/rack, +/obj/item/storage/belt/utility, +/obj/item/wrench, +/obj/item/weldingtool, +/obj/item/clothing/head/welding{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"moO" = ( +/obj/machinery/door/airlock/engineering{ + name = "Engine Room"; + req_access_txt = "10" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/machinery/door/poddoor/preopen{ + id = "Engineering"; + name = "Engineering Lockdown" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/turf/open/floor/plasteel, +/area/engine/engineering) +"mpx" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/item/twohanded/required/kirbyplants/random, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"mpC" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"mtv" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/starboard"; + dir = 1; + name = "Starboard Maintenance APC"; + pixel_y = 24 + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"mwg" = ( +/obj/structure/table, +/obj/item/stack/sheet/plasteel{ + amount = 10 + }, +/obj/item/stack/rods/fifty, +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/turf/open/floor/plasteel, +/area/construction/mining/aux_base) +"myk" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/gateway"; + dir = 2; + name = "Gateway APC"; + pixel_y = -23 + }, +/turf/open/floor/plasteel, +/area/gateway) +"mBI" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/obj/structure/sign/warning/securearea{ + pixel_y = 32 + }, +/turf/open/space/basic, +/area/space/nearstation) +"mFO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"mFQ" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"mGm" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"mHo" = ( +/obj/machinery/power/emitter/anchored{ + dir = 8; + state = 2 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/engine/engine_room) +"mHD" = ( +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"mHS" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/machinery/camera{ + c_tag = "Security - Main Hall 2"; + dir = 8; + network = list("ss13","Security") + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"mJV" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"mKc" = ( +/obj/structure/table, +/obj/effect/decal/cleanable/dirt, +/obj/item/radio/intercom{ + pixel_x = 30 + }, +/turf/open/floor/plasteel, +/area/vacant_room/commissary) +"mLl" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"mNo" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"mNC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"mSf" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/radio/intercom{ + pixel_x = 30 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"mUn" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel, +/area/engine/engineering) +"mUy" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"mVy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/item/clothing/head/cone, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"mXC" = ( +/obj/structure/rack, +/obj/item/storage/box/lights/mixed, +/obj/item/clothing/glasses/meson, +/obj/item/clothing/glasses/meson, +/obj/item/twohanded/rcl/pre_loaded, +/obj/item/twohanded/rcl/pre_loaded, +/obj/item/crowbar/large, +/turf/open/floor/plasteel, +/area/engine/engineering) +"mXO" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"mXY" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"naE" = ( +/obj/machinery/power/apc{ + areastring = "/area/security/brig"; + dir = 2; + name = "Brig APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"naO" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/turf/open/floor/plasteel, +/area/engine/engineering) +"nbA" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) "njx" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 28 }, /turf/open/floor/plasteel/white, /area/science/mixing) +"nkG" = ( +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"nlD" = ( +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"nnE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"nrD" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"nsr" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"ntE" = ( +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) "nuq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) +"nvs" = ( +/obj/structure/reagent_dispensers/beerkeg, +/obj/structure/light_construct/small{ + dir = 1 + }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/department/crew_quarters/bar"; + cell_type = null; + dir = 1; + name = "Abandoned Bar APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating{ + icon_state = "panelscorched" + }, +/area/maintenance/department/crew_quarters/bar) +"nwZ" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/machinery/power/apc{ + areastring = "/area/medical/cryo"; + dir = 1; + name = "Cryogenics APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel, +/area/medical/cryo) +"nyj" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"nyl" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_x = -29 + }, +/turf/open/floor/plasteel/dark, +/area/bridge) +"nyx" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"nyL" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/grille, +/turf/open/floor/plating, +/area/maintenance/fore) +"nBZ" = ( +/obj/machinery/power/rad_collector/anchored, +/obj/structure/window/plasma/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/circuit/green, +/area/engine/supermatter) +"nCF" = ( +/obj/machinery/light, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Hallway - Escape Right Wing 1"; + dir = 1; + network = list("ss13") + }, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit/departure_lounge) +"nDW" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/chapel{ + dir = 8 + }, +/area/chapel/main) +"nEo" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"nEL" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"nIf" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"nLJ" = ( +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"nNJ" = ( +/turf/open/floor/engine, +/area/engine/supermatter) +"nOy" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"nPi" = ( +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/fitness"; + dir = 8; + name = "Fitness APC"; + pixel_x = -25 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"nPz" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/item/analyzer, +/obj/item/analyzer, +/obj/item/analyzer, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"nRb" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, +/area/crew_quarters/kitchen/coldroom) +"nUo" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/item/twohanded/required/kirbyplants/random, +/turf/open/floor/plasteel, +/area/engine/engineering) +"nVf" = ( +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/structure/rack, +/obj/effect/spawner/lootdrop/maintenance/two, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/department/engine"; + dir = 4; + name = "Engineering Maintenance APC"; + pixel_x = 24 + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"nZS" = ( +/obj/structure/table/wood, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/carpet, +/area/library/lounge) +"oak" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/turf/open/floor/plasteel, +/area/engine/engineering) +"odJ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/foyer) +"oee" = ( +/obj/item/radio/intercom{ + pixel_x = -29 + }, +/turf/open/floor/plating, +/area/storage/tech) +"ofx" = ( +/obj/structure/plasticflaps/opaque, +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=1"; + dir = 1; + freq = 1400; + location = "Engineering"; + name = "navigation beacon (Engineering Delivery)" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ohU" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) +"oij" = ( +/obj/effect/turf_decal/stripes/line, +/obj/item/twohanded/required/kirbyplants/random, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"okf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"oms" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/entry) "omI" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 }, /turf/open/floor/plasteel, /area/quartermaster/storage) +"ooZ" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Laser Room"; + req_access_txt = "10" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/turf/open/floor/engine, +/area/engine/engine_room) +"opl" = ( +/obj/structure/sign/warning/vacuum{ + pixel_y = 32 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"oqE" = ( +/obj/structure/girder, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"oqF" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"osG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 10 + }, +/obj/machinery/camera/autoname{ + dir = 9 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/item/twohanded/required/kirbyplants/random, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"oAn" = ( +/obj/item/reagent_containers/food/snacks/salad/validsalad, +/turf/open/floor/plating, +/area/engine/engine_room) +"oAP" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Mix to Gas" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"oBN" = ( +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/holopad, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"oBZ" = ( +/obj/machinery/computer/bounty, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/heads/hop"; + dir = 1; + name = "Head of Personnel's Office APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/wood, +/area/crew_quarters/heads/hop) +"oCw" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"oDl" = ( +/obj/machinery/door/window/westright, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"oDI" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/meter, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"oGu" = ( +/obj/machinery/power/apc{ + areastring = "/area/ai_monitored/turret_protected/aisat/service"; + dir = 8; + name = "MiniSat Service APC"; + pixel_x = -25 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/service) +"oHN" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"oIG" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"oKN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/security/processing"; + dir = 1; + name = "Labor Processing APC"; + pixel_y = 23 + }, +/turf/open/floor/plasteel, +/area/security/processing) +"oMf" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Atmos to Loop" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"oMw" = ( +/obj/machinery/camera{ + c_tag = "Research - Toxins Main 2"; + dir = 2; + network = list("ss13","Research") + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/item/radio/intercom{ + pixel_y = 29 + }, +/turf/open/floor/plasteel/white, +/area/science/mixing) +"oNF" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 9 + }, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"oPe" = ( +/turf/closed/wall/r_wall, +/area/lawoffice) +"oRe" = ( +/obj/machinery/airalarm{ + pixel_y = 28 + }, +/turf/open/floor/plasteel/white/side{ + dir = 6 + }, +/area/science/research) +"oVd" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"oVG" = ( +/obj/machinery/power/apc/highcap/five_k{ + dir = 2; + name = "AI Chamber APC"; + areastring = "/area/ai_monitored/turret_protected/ai"; + pixel_y = -23 + }, +/obj/machinery/flasher{ + id = "AI"; + pixel_x = -11; + pixel_y = -24 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/door/window/eastleft{ + name = "AI Access"; + req_access_txt = "16" + }, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"oVP" = ( +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"oWa" = ( +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/obj/structure/closet/secure_closet/engineering_personal, +/turf/open/floor/plasteel, +/area/engine/engineering) +"oWU" = ( +/obj/machinery/power/apc{ + areastring = "/area/medical/surgery"; + dir = 1; + name = "Surgery APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/maintenance/port) +"pgT" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "External Gas to Loop" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"piG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/turf/open/floor/plasteel/dark, +/area/engine/engineering) +"pkz" = ( +/obj/machinery/power/apc{ + areastring = "/area/library"; + dir = 8; + name = "Library APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/effect/spawner/lootdrop/grille_or_trash, +/turf/open/floor/plating, +/area/maintenance/fore) "plI" = ( /obj/structure/extinguisher_cabinet{ pixel_x = 27 }, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) +"pmp" = ( +/obj/machinery/computer/security{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/newscaster{ + pixel_x = -30 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint/medical) +"pmD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced, +/turf/open/floor/plating, +/area/engine/engineering) +"poI" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"ppV" = ( +/turf/closed/wall/r_wall, +/area/hydroponics) +"psF" = ( +/obj/structure/closet/radiation, +/obj/machinery/power/apc{ + areastring = "/area/engine/engine_room/external"; + dir = 8; + name = "Supermatter External Access"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"ptm" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"pwb" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"pwu" = ( +/obj/machinery/power/apc{ + areastring = "/area/science/explab"; + dir = 1; + name = "Experimentation APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/white, +/area/science/explab) +"pxQ" = ( +/obj/item/clothing/head/cone, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"pyl" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/engine/supermatter) "pBI" = ( /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) +"pGQ" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"pGU" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/cable, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"pHi" = ( +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"pLI" = ( +/obj/machinery/power/emitter/anchored{ + dir = 4; + state = 2 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/engine/engine_room) +"pMU" = ( +/obj/machinery/power/apc{ + areastring = "/area/storage/tools"; + dir = 1; + name = "Aux Tool Storage APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/maintenance/starboard/fore) +"pNR" = ( +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/security/courtroom"; + dir = 8; + name = "Courtroom APC"; + pixel_x = -25; + pixel_y = 3 + }, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/maintenance/department/security) +"pSa" = ( +/obj/machinery/camera{ + c_tag = "Secure - EVA"; + dir = 8; + network = list("ss13","Secure") + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"pSm" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"pTq" = ( +/obj/machinery/power/apc{ + areastring = "/area/medical/medbay/central"; + dir = 1; + name = "Medical Main APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/maintenance/port) "pWc" = ( /obj/machinery/camera/motion{ c_tag = "Secure - Captain's Office External"; @@ -55281,7 +54730,168 @@ network = list("AISat") }, /turf/open/space/basic, -/area/space) +/area/space/nearstation) +"pYp" = ( +/obj/structure/table, +/obj/machinery/power/apc{ + areastring = "/area/medical/genetics/cloning"; + dir = 2; + name = "Cloning Bay APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow, +/obj/item/toy/figure/geneticist, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics/cloning) +"qag" = ( +/obj/machinery/power/rad_collector/anchored, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/open/floor/circuit/green, +/area/engine/supermatter) +"qkE" = ( +/obj/structure/table/reinforced, +/obj/item/storage/toolbox/mechanical, +/obj/item/flashlight, +/obj/item/pipe_dispenser, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/camera{ + c_tag = "Engine - SMES"; + dir = 8; + network = list("ss13","Engineering","Engine") + }, +/obj/structure/sign/warning/electricshock{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"qlL" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"qoF" = ( +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"qpi" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"qpo" = ( +/obj/structure/table/glass, +/obj/machinery/power/apc{ + areastring = "/area/medical/virology"; + dir = 2; + name = "Virology APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow, +/obj/item/paper_bin{ + pixel_x = -2; + pixel_y = 5 + }, +/obj/item/pen/red, +/obj/machinery/doorButtons/airlock_controller{ + idExterior = "virology_airlock_exterior"; + idInterior = "virology_airlock_interior"; + idSelf = "virology_airlock_control"; + name = "Virology Access Console"; + pixel_x = 22; + pixel_y = 8; + req_access_txt = "39" + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"qqo" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/bot, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"qrk" = ( +/obj/machinery/smartfridge/chemistry/virology/preloaded, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"qxz" = ( +/obj/effect/turf_decal/stripes/line, +/obj/item/twohanded/required/kirbyplants/random, +/obj/machinery/button/door{ + dir = 2; + id = "supermatter_external"; + name = "Supermatter External Lockdown"; + pixel_x = 5; + pixel_y = -24; + req_access_txt = "24" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"qxF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/obj/item/twohanded/required/kirbyplants/random, +/turf/open/floor/plasteel, +/area/engine/engine_room) "qxZ" = ( /obj/structure/sign/warning/pods{ pixel_y = 32 @@ -55293,11 +54903,19 @@ "qyl" = ( /obj/machinery/atmospherics/pipe/manifold4w/dark/visible, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - icon_state = "pipe11-3"; dir = 6 }, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) +"qBm" = ( +/obj/structure/table, +/obj/item/stack/cable_coil{ + pixel_x = 3; + pixel_y = -7 + }, +/obj/item/stack/cable_coil, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "qBt" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -55307,6 +54925,37 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) +"qCl" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/department/medical"; + dir = 2; + name = "Medical Maintenance APC"; + pixel_y = -24 + }, +/turf/open/floor/plating, +/area/maintenance/department/medical) +"qDQ" = ( +/obj/machinery/camera/autoname, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"qHu" = ( +/obj/structure/table, +/obj/item/storage/toolbox/mechanical{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/plasteel/white, +/area/science/explab) "qIb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, @@ -55316,6 +54965,117 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"qKO" = ( +/obj/structure/grille, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"qLM" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) +"qMo" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/machinery/power/apc{ + areastring = "/area/engine/engineering"; + dir = 1; + name = "Engineering APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"qOX" = ( +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 10 + }, +/obj/machinery/holopad, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/landmark/start/station_engineer, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"qWm" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/ai_monitored/turret_protected/aisat/foyer) +"qXl" = ( +/turf/closed/wall/r_wall, +/area/maintenance/department/engine) +"qYj" = ( +/obj/machinery/power/apc{ + areastring = "/area/chapel/office"; + dir = 8; + name = "Chapel Office APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow, +/turf/open/floor/plating, +/area/maintenance/starboard) +"qYJ" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) +"qZu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"rck" = ( +/obj/machinery/power/apc{ + areastring = "/area/maintenance/port/aft"; + dir = 1; + name = "Port Aft Maintenance APC"; + pixel_y = 24 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"rcn" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/space/basic, +/area/space/nearstation) "rfC" = ( /obj/structure/lattice, /obj/machinery/camera/motion{ @@ -55325,6 +55085,729 @@ }, /turf/open/space/basic, /area/space/nearstation) +"ria" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"rmC" = ( +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"rta" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"ruT" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engineering) +"rwy" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"rBV" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"rDp" = ( +/obj/machinery/power/apc/highcap/ten_k{ + areastring = "/area/engine/atmos"; + dir = 8; + name = "Atmospherics APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel, +/area/engine/atmos) +"rDY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 10 + }, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"rFm" = ( +/obj/structure/window/plasma/reinforced{ + dir = 4 + }, +/obj/machinery/power/rad_collector/anchored, +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/circuit/green, +/area/engine/supermatter) +"rFt" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"rJs" = ( +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 4; + name = "Gas to Filter" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"rLt" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm" + }, +/turf/open/floor/plating, +/area/engine/supermatter) +"rPx" = ( +/obj/structure/lattice, +/obj/machinery/camera/autoname{ + dir = 4 + }, +/turf/open/space/basic, +/area/space/nearstation) +"rQg" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"rQo" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/light/small, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"rSs" = ( +/obj/machinery/computer/monitor, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/service) +"rUR" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"rVP" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/turf/open/floor/plasteel/white, +/area/medical/virology) +"rYP" = ( +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"seG" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"seX" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"sfa" = ( +/obj/machinery/button/door{ + desc = "A remote control-switch for secure storage."; + id = "Secure Storage"; + name = "Engineering Secure Storage"; + pixel_x = 24; + pixel_y = 5; + req_access_txt = "11" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/camera/autoname{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"sfL" = ( +/obj/machinery/light/small{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel/dark, +/area/science/server) +"sjB" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"skk" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/foyer) +"skl" = ( +/obj/machinery/door/airlock/engineering/glass/critical{ + heat_proof = 1; + name = "Supermatter Chamber"; + req_access_txt = "10" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"skG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/engine/supermatter) +"slb" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera/autoname{ + dir = 10 + }, +/turf/open/space/basic, +/area/space/nearstation) +"smc" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"snW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/chair/stool, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"son" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"sos" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"soJ" = ( +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"spN" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/spawner/structure/window/plasma/reinforced, +/turf/open/floor/plating, +/area/engine/engine_room) +"sqt" = ( +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/hallway/primary/central"; + dir = 1; + name = "Central Hallway Maintenance APC"; + pixel_y = 24 + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"srD" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/layer_manifold{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/atmos) +"stN" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"sxr" = ( +/obj/structure/closet/crate, +/obj/item/stack/sheet/metal/fifty, +/obj/item/stack/rods/fifty, +/obj/item/stack/sheet/glass/fifty, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/stock_parts/cell/high/plus, +/obj/item/stack/sheet/mineral/plasma{ + amount = 30 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"sxJ" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/turf/open/space/basic, +/area/space/nearstation) +"szx" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"szT" = ( +/obj/machinery/door/airlock/hatch{ + name = "Supermatter External Chamber"; + req_access_txt = "10" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/poddoor/preopen{ + id = "supermatter_external"; + name = "Supermatter External Blast Door" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"sCI" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/closet/athletic_mixed, +/obj/item/radio/intercom{ + pixel_y = 29 + }, +/turf/open/floor/plasteel, +/area/crew_quarters/fitness) +"sEf" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"sEr" = ( +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/machinery/door/airlock/external{ + name = "External Airlock"; + req_access_txt = "13" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"sEU" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/visible, +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating, +/area/engine/engine_room) +"sHj" = ( +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/turf/open/floor/plasteel/white/side{ + dir = 9 + }, +/area/science/research) +"sKR" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/portable_atmospherics/canister, +/obj/effect/turf_decal/bot, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"sLW" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/holopad, +/turf/open/floor/plasteel, +/area/engine/engineering) +"sMe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"sPB" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_x = -29 + }, +/turf/open/floor/plasteel/dark, +/area/medical/morgue) +"sTB" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/maintenance/aft"; + dir = 1; + name = "Aft Maintenance APC"; + pixel_y = 28 + }, +/turf/open/floor/plating, +/area/maintenance/aft) +"sXg" = ( +/obj/structure/chair, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/lobby) +"sYx" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"sZm" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = -32 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"tcB" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/obj/structure/cable/yellow, +/turf/open/floor/plating, +/area/crew_quarters/heads/chief) +"tdw" = ( +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/heads/cmo"; + dir = 8; + name = "CMO's Office APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"tfI" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"tlY" = ( +/obj/machinery/status_display/evac, +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"tnz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/sign/poster/official/random{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"tok" = ( +/obj/machinery/vending/wardrobe/jani_wardrobe, +/obj/machinery/light_switch{ + pixel_x = -8; + pixel_y = 28 + }, +/turf/open/floor/plasteel, +/area/janitor) +"tpd" = ( +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3, +/turf/open/floor/plasteel, +/area/engine/engineering) +"tqi" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/components/unary/outlet_injector/atmos/engine_waste{ + dir = 4 + }, +/turf/open/space/basic, +/area/engine/engine_room) +"tsa" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/camera{ + c_tag = "Engine - Freezer Ports"; + dir = 4; + network = list("ss13","Engineering","Engine") + }, +/obj/structure/sign/warning/nosmoking{ + pixel_y = 32 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"tus" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/structure/reflector/double, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"tuR" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"tzv" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/turf/open/floor/plating, +/area/maintenance/disposal) +"tzD" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/wood, +/area/library) +"tBY" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible, +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"tFw" = ( +/obj/effect/turf_decal/tile/red, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"tHJ" = ( +/turf/closed/wall/r_wall, +/area/engine/engine_room/external) +"tKA" = ( +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 1 + }, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"tOh" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate/freezer, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/quartermaster/warehouse) "tQN" = ( /obj/machinery/shower{ dir = 1 @@ -55335,6 +55818,18 @@ /obj/structure/curtain, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"tTb" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "tVl" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55347,6 +55842,235 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"uaG" = ( +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/wood, +/area/library) +"ubS" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/ai_monitored/storage/eva) +"udR" = ( +/obj/structure/sign/warning/enginesafety{ + pixel_x = -32 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engineering) +"ueA" = ( +/obj/machinery/light, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/camera{ + c_tag = "Hallway - Escape Left Wing 1"; + dir = 1; + network = list("ss13") + }, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/plasteel, +/area/hallway/secondary/exit/departure_lounge) +"ueN" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"ufN" = ( +/obj/machinery/photocopier, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/turf/open/floor/wood, +/area/lawoffice) +"ugj" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera{ + c_tag = "Engine -External Topleft"; + dir = 8; + network = list("ss13","Engineering","Engine") + }, +/turf/open/space/basic, +/area/space/nearstation) +"ugT" = ( +/obj/structure/closet/radiation, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/light/small{ + brightness = 3; + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"uiU" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera{ + c_tag = "Engine -External Bottomleft"; + dir = 8; + network = list("ss13","Engineering","Engine") + }, +/turf/open/space/basic, +/area/space/nearstation) +"unF" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/spawner/lootdrop/crate_spawner, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"uoF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"upM" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"uqn" = ( +/obj/machinery/atmospherics/pipe/manifold/green/visible{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"utg" = ( +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"utL" = ( +/obj/structure/table, +/obj/item/stack/sheet/metal/fifty, +/obj/item/stack/sheet/metal/fifty, +/obj/item/stack/sheet/glass/fifty, +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + areastring = "/area/construction/mining/aux_base"; + dir = 4; + name = "Aux Base APC"; + pixel_x = 24 + }, +/turf/open/floor/plasteel, +/area/construction/mining/aux_base) +"uva" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3, +/obj/machinery/airalarm{ + pixel_y = 28 + }, +/turf/open/floor/plasteel, +/area/science/storage) +"uwG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/item/radio/intercom{ + pixel_x = 30 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"uwV" = ( +/turf/closed/wall/r_wall, +/area/engine/engine_room) +"uzp" = ( +/obj/machinery/power/apc{ + areastring = "/area/ai_monitored/turret_protected/aisat/foyer"; + dir = 4; + name = "MiniSat Main APC"; + pixel_x = 24 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/foyer) +"uzG" = ( +/obj/machinery/power/apc{ + areastring = "/area/science/research"; + dir = 2; + name = "Science Main APC"; + pixel_y = -23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"uzT" = ( +/obj/machinery/power/smes/engineering, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) "uIo" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55360,16 +56084,304 @@ /obj/structure/curtain, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) -"vws" = ( +"uIu" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 1 + }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/tile/yellow{ +/turf/open/floor/plating, +/area/engine/engineering) +"uQL" = ( +/obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"uRy" = ( +/obj/machinery/power/apc{ + areastring = "/area/quartermaster/miningdock"; + dir = 1; + name = "Mining Dock APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/maintenance/starboard) +"uTy" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 9 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/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/engine/atmos) +"uUp" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"uXm" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/sign/warning/nosmoking{ + pixel_y = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"uYg" = ( +/obj/structure/sign/warning/nosmoking{ + pixel_y = 32 + }, +/obj/machinery/airalarm{ + dir = 4; + pixel_x = -23 + }, +/obj/machinery/suit_storage_unit/engine, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room/external) +"vbr" = ( +/obj/machinery/power/emitter/anchored{ + dir = 4; + state = 2 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/camera{ + c_tag = "Engine - Emitters Left"; + dir = 4; + network = list("ss13","Engineering","Engine") + }, +/turf/open/floor/plating, +/area/engine/engine_room) +"vch" = ( +/obj/machinery/disposal/bin, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/machinery/light_switch{ + pixel_x = -24; + pixel_y = 8 + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel, +/area/quartermaster/qm) +"vcT" = ( +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/bar"; + dir = 1; + name = "Bar APC"; + pixel_y = 23 + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"vdQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"vgy" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"viK" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/turf/open/floor/plasteel/dark, +/area/engine/engineering) +"vjd" = ( +/obj/structure/rack, +/obj/item/gun/energy/ionrifle, +/obj/item/gun/energy/temperature/security, +/obj/item/clothing/suit/armor/laserproof, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/security/armory) +"vjt" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"vjX" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/table, +/obj/item/stack/sheet/glass/fifty, +/obj/item/stack/sheet/glass/fifty, +/obj/item/stack/sheet/glass/fifty, +/obj/item/stack/sheet/glass/fifty, /turf/open/floor/plasteel, /area/engine/engineering) +"vmc" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"vmg" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"voh" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/port/fore) +"vpa" = ( +/obj/machinery/atmospherics/pipe/manifold/orange/visible{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/meter, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"vqS" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads/captain/private) +"vtD" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"vvH" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) "vxP" = ( /obj/effect/turf_decal/tile/neutral, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ @@ -55388,6 +56400,108 @@ /obj/machinery/light, /turf/open/floor/plasteel, /area/crew_quarters/fitness) +"vyZ" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/open/space/basic, +/area/space/nearstation) +"vzQ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/turf/open/floor/plasteel, +/area/engine/engineering) +"vAj" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/structure/table, +/obj/item/stack/sheet/metal/fifty, +/obj/item/stack/sheet/metal/fifty, +/obj/item/stack/sheet/plasteel{ + amount = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"vAo" = ( +/obj/machinery/power/emitter{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engine_room) +"vBp" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"vBQ" = ( +/obj/machinery/power/apc/highcap/ten_k{ + areastring = "/area/janitor"; + dir = 8; + name = "Custodial Closet APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plating, +/area/maintenance/aft) +"vFq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "engsm" + }, +/obj/item/tank/internals/plasma, +/turf/open/floor/plating, +/area/engine/supermatter) +"vHF" = ( +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/ai_upload) +"vIe" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 10 + }, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/security/brig) +"vLi" = ( +/obj/machinery/power/apc{ + areastring = "/area/maintenance/port"; + dir = 8; + name = "Port Maintenance APC"; + pixel_x = -24 + }, +/turf/open/floor/plating, +/area/maintenance/port) +"vLE" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/airalarm{ + dir = 1; + pixel_y = -22 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) "vMB" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -55413,19 +56527,597 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"vPT" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"vQd" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden/layer3{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"vRP" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"vSP" = ( +/obj/structure/sign/warning/nosmoking/circle{ + pixel_x = -32 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) +"vUd" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "Mix Bypass" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"vVH" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"vXg" = ( +/obj/machinery/dna_scannernew, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue, +/obj/machinery/light{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) +"waf" = ( +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"wia" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/structure/closet/crate, +/obj/item/paicard, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"wkM" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/structure/rack, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/storage/toolbox/mechanical, +/obj/item/storage/toolbox/mechanical{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/machinery/camera{ + c_tag = "Civilian - Tool Storage"; + dir = 4; + network = list("ss13") + }, +/obj/item/radio/intercom{ + pixel_x = -29 + }, +/turf/open/floor/plasteel, +/area/storage/tools) +"wlc" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"wll" = ( +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/obj/machinery/light, +/obj/machinery/camera{ + c_tag = "Engineering - Tank Storage"; + dir = 1; + network = list("ss13","Engineering","Engine") + }, +/obj/structure/closet/secure_closet/engineering_personal, +/turf/open/floor/plasteel, +/area/engine/engineering) +"wmg" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/turf/open/space/basic, +/area/space/nearstation) +"wod" = ( +/obj/structure/table, +/obj/item/toy/figure/borg, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/foyer) +"wok" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"wpG" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/cable/yellow, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/crew_quarters/heads/chief) +"wrV" = ( +/obj/structure/kitchenspike, +/obj/item/radio/intercom{ + dir = 2; + pixel_y = -28 + }, +/turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, +/area/crew_quarters/kitchen/coldroom) +"wtu" = ( +/obj/structure/bed, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/light_switch{ + pixel_x = -24 + }, +/obj/item/bedsheet/dorms, +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/dorms) +"wvW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/table, +/obj/effect/holodeck_effect/cards, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"wwX" = ( +/obj/machinery/computer/cargo, +/obj/item/radio/intercom{ + pixel_y = 25 + }, +/turf/open/floor/wood, +/area/crew_quarters/heads/hop) +"wxZ" = ( +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/security/checkpoint"; + dir = 8; + name = "Docks Checkpoint APC"; + pixel_x = -25 + }, +/turf/open/floor/plasteel, +/area/security/checkpoint) +"wzU" = ( +/obj/machinery/atmospherics/pipe/manifold/green/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/airalarm/engine{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/engine/supermatter) +"wBW" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"wCc" = ( +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + areastring = "/area/security/prison"; + dir = 8; + name = "Prison APC"; + pixel_x = -25 + }, +/turf/open/floor/plasteel, +/area/security/prison) +"wFi" = ( +/obj/machinery/power/apc{ + areastring = "/area/crew_quarters/heads/captain/private"; + dir = 1; + name = "Captain's Private Quarters APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/carpet, +/area/crew_quarters/heads/captain/private) +"wIl" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/structure/window/reinforced, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"wIF" = ( +/obj/machinery/recharge_station, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/plasteel, +/area/science/robotics/mechbay) +"wJv" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/camera{ + c_tag = "Research - Toxins Storage"; + dir = 2; + network = list("ss13","Research") + }, +/obj/machinery/power/apc{ + areastring = "/area/science/storage"; + dir = 1; + name = "Toxins Storage APC"; + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/science/storage) +"wLO" = ( +/obj/machinery/power/apc{ + areastring = "/area/science/lab"; + dir = 1; + name = "Research Lab APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plasteel/white, +/area/science/lab) +"wMf" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/modular_computer/console/preset/engineering{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engineering) +"wMM" = ( +/obj/machinery/stasis, +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel, +/area/medical/sleeper) +"wPr" = ( +/obj/machinery/power/apc{ + areastring = "/area/construction"; + cell_type = null; + dir = 8; + name = "Construction APC"; + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/construction) +"wQC" = ( +/obj/machinery/portable_atmospherics/pump, +/obj/structure/sign/poster/official/random{ + pixel_x = 32 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"wTx" = ( +/obj/machinery/door/window/eastleft, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) +"wUt" = ( +/obj/structure/sign/warning/radiation, +/turf/closed/wall/r_wall, +/area/engine/supermatter) +"wVQ" = ( +/obj/item/radio/intercom{ + pixel_x = 29 + }, +/turf/open/floor/plasteel/dark, +/area/tcommsat/computer) +"xaB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/components/binary/valve/digital/on{ + dir = 4; + name = "Output Release" + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"xbA" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) +"xdQ" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"xec" = ( +/obj/structure/noticeboard{ + pixel_y = -32 + }, +/turf/open/floor/plasteel/white, +/area/science/lab) +"xhv" = ( +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/cafeteria{ + dir = 5 + }, +/area/crew_quarters/kitchen) "xhI" = ( /turf/closed/wall, /area/crew_quarters/kitchen/coldroom) +"xiu" = ( +/obj/machinery/shieldgen, +/turf/open/floor/plating, +/area/engine/engineering) +"xoZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/department/security) +"xrC" = ( +/obj/machinery/power/apc{ + areastring = "/area/solar/aft"; + dir = 8; + name = "Aft Solar APC"; + pixel_x = -25; + pixel_y = 3 + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/solar/aft) +"xtN" = ( +/obj/machinery/airalarm{ + dir = 8; + pixel_x = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"xve" = ( +/obj/machinery/power/apc{ + areastring = "/area/science/mixing"; + dir = 1; + name = "Toxins Mixing APC"; + pixel_y = 23 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plasteel/white, +/area/science/mixing) "xyz" = ( /obj/machinery/atmospherics/pipe/manifold/dark/visible{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ - icon_state = "pipe11-3"; dir = 9 }, /turf/open/floor/plasteel/kitchen_coldroom/freezerfloor, /area/crew_quarters/kitchen/coldroom) +"xyU" = ( +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/circuit, +/area/ai_monitored/turret_protected/ai) +"xBI" = ( +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"xCE" = ( +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"xDp" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/radio/intercom{ + pixel_x = -30 + }, +/turf/open/floor/plasteel/dark, +/area/security/courtroom) +"xGM" = ( +/obj/structure/closet/firecloset, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/camera{ + c_tag = "Engineering - Main Airlock"; + dir = 2; + network = list("ss13","Engineering","Engine") + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"xKE" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/engine/engine_room) +"xLk" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/hidden{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 6 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) +"xLt" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/purple/hidden/layer1, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engine_room/external) "xOq" = ( /obj/structure/closet/secure_closet/personal, /obj/machinery/light/small{ @@ -55434,6 +57126,152 @@ }, /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/fitness/locker_room) +"xRV" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/plasteel/dark, +/area/crew_quarters/heads/chief) +"xUj" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer3, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"xWi" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/maintenance/port/aft) +"xWs" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"xXZ" = ( +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plating, +/area/maintenance/department/engine) +"ybh" = ( +/obj/structure/closet/radiation, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"ycZ" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/turf/open/space/basic, +/area/space/nearstation) +"ydf" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/item/radio/intercom{ + pixel_y = 24 + }, +/turf/open/floor/plasteel, +/area/hallway/primary/central) +"yeA" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"yfz" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/light, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat/foyer) +"ygs" = ( +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer3{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/airalarm{ + pixel_y = 25 + }, +/turf/open/floor/plasteel/white, +/area/medical/medbay/central) +"yhe" = ( +/obj/structure/reflector/single/anchored{ + dir = 10 + }, +/turf/open/floor/plasteel/dark, +/area/engine/engine_room) +"yjo" = ( +/obj/effect/spawner/lootdrop/grille_or_trash, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plating, +/area/maintenance/fore) +"ykr" = ( +/obj/structure/window/reinforced, +/turf/open/space/basic, +/area/space/nearstation) +"ykD" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/engine/engine_room) "yma" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable/yellow{ @@ -59147,11 +60985,11 @@ aaa aaa aaa aaa -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal aaa aaa aaa @@ -59403,13 +61241,13 @@ aaa aaa aaa aaa -aau -aau +aal +aal aeh aab aeh -aau -aau +aal +aal aaa aaa aaa @@ -59659,15 +61497,15 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaC aep agL aep aaC -aau -aau +aal +aal aaa aaa aaa @@ -59915,8 +61753,8 @@ aaa aaa aaa aaa -aau -aau +aal +aal aas aaD aeC @@ -59924,8 +61762,8 @@ agM agS aas aaD -aau -aau +aal +aal aaa aaa aaa @@ -60172,7 +62010,7 @@ aaa aaa aaa aaa -aau +aal aab aab aaF @@ -60182,7 +62020,7 @@ aeH ahe aab aab -aau +aal aaa aaa aaa @@ -60429,7 +62267,7 @@ aaa aaa aaa aaa -aau +aal aap aaB aaI @@ -60439,7 +62277,7 @@ aeH ahg ahS aap -aau +aal aaa aaa aaa @@ -60686,7 +62524,7 @@ aaa aaa aaa aaa -aau +aal aab aab adB @@ -60696,7 +62534,7 @@ aeH ahh aab aab -aau +aal aaa aaa aaa @@ -60943,8 +62781,8 @@ aaa aaa aaa aaa -aau -aau +aal +aal aas aaD agB @@ -60952,8 +62790,8 @@ agP ahc aas aaD -aau -aau +aal +aal aaa aaa aaa @@ -61201,15 +63039,15 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaC aeh agR aeh aaC -aau -aau +aal +aal aaa aaa aaa @@ -61459,13 +63297,13 @@ aaa aaa aaa aaa -aau -aau +aal +aal aep agP aep -aau -aau +aal +aal aaa aaa aaa @@ -61717,11 +63555,11 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -61975,10 +63813,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -62232,9 +64070,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -62489,11 +64327,11 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau -aau +aal +aal +aal aaa aaa aaa @@ -62746,9 +64584,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -63003,9 +64841,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -63260,10 +65098,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -63517,9 +65355,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -63773,10 +65611,10 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau +aal aaa aaa aaa @@ -64031,10 +65869,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -64288,9 +66126,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -64544,11 +66382,11 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -64802,9 +66640,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -65059,10 +66897,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -65316,9 +67154,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -65573,9 +67411,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -65830,10 +67668,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -66087,9 +67925,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -66343,10 +68181,10 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau +aal aaa aaa aaa @@ -66601,10 +68439,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -66858,9 +68696,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -67114,11 +68952,11 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -67372,9 +69210,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -67629,10 +69467,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -67886,9 +69724,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -68142,10 +69980,10 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau +aal aaa aaa aaa @@ -68400,10 +70238,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -68657,9 +70495,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -68914,10 +70752,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -69171,10 +71009,10 @@ aaa aaa aaa aaa -aau +aal aaa -aau -aau +aal +aal aaa aaa aaa @@ -69428,24 +71266,24 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aaa aaa aaa -aau +aal aaa aaa aaa @@ -69684,26 +71522,26 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau +aal aaa aaa aaa aaa -aau -aau -aau +aal +aal +aal aaa aaa -aau -aau +aal +aal aaa aaa -aau -aau -aau +aal +aal +aal aaa aaa aaa @@ -69942,9 +71780,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa aaa @@ -70199,12 +72037,12 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa -aau +aal aeS bYc bTU @@ -70220,7 +72058,7 @@ bXg bTU bYc aeS -aau +aal aaa aaa aaa @@ -70455,13 +72293,13 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau -aau -aau -aau +aal +aal +aal +aal aeS bTU bXC @@ -70477,7 +72315,7 @@ ceg cbA bTU aeS -aau +aal aaa aaa aaa @@ -70713,12 +72551,12 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aaa aaa -aau +aal aeS bTU bXN @@ -70736,7 +72574,7 @@ bTU aeS aaa aaa -aau +aal aaa aaa aaa @@ -70969,10 +72807,10 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau +aal aaa aaa aaa @@ -71225,11 +73063,11 @@ aaa aaa aaa aaa -aau -aau -aau +aal +aal +aal aaa -aau +aal aaa aaa aaa @@ -71483,12 +73321,12 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau -aau -aau +aal +aal +aal aaa aeS bTU @@ -71740,10 +73578,10 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa -aau +aal aeS aeS aeS @@ -71794,12 +73632,12 @@ aaa aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aaa aQX aQX @@ -71998,9 +73836,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aeS bWX cdT @@ -72059,13 +73897,13 @@ aaa bpB aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aQX aQX @@ -72255,9 +74093,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aeS bTU bXC @@ -72281,11 +74119,11 @@ cbA bQW bPc aeS -aau +aal aaa abE aaa -aau +aal aaa aaa aaa @@ -72316,13 +74154,13 @@ aaN aaN aaN aaN -aau +aal aaa aaa -aau +aal bLx aaa -aau +aal aaa aaa aaa @@ -72538,13 +74376,13 @@ bXN bQW bPc aeS -aau +aal aaa -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal aaa aaa aaa @@ -72560,8 +74398,8 @@ aaa aaa aaa aaa -aau -aau +aal +aal aug aug aaa @@ -72581,8 +74419,8 @@ aBY aBY aBY aBY -aau -aau +aal +aal aQX aaa aaa @@ -72765,7 +74603,7 @@ aaa aaa aaa aaa -aau +aal aeS bTU blO @@ -72820,7 +74658,7 @@ aaa aug aug aug -aau +aal aaa aaN atQ @@ -73010,19 +74848,19 @@ aaa aaa aaa aaa -aau -aau +aal +aal aaa aaa aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aeS bTU bTg @@ -73064,18 +74902,18 @@ bMs acB aaa aaa -aau -aau +aal +aal aaa aaa -aau -aau -aau -aau +aal +aal +aal +aal abE aug aug -aau +aal aaa aaa aaN @@ -73083,13 +74921,13 @@ aaN atR aaN aaN -bIM +jAc bJp cdD aBY aCm aCy -aCp +csr aBY bIe aCp @@ -73266,20 +75104,20 @@ aaa aaa aaa aaa -aau -aau -aau -aau +aal +aal +aal +aal aaa aaa aaa -aau -aau -aau +aal +aal +aal aaa aaa -aau -aau +aal +aal aeS bTU bTy @@ -73297,7 +75135,7 @@ ano ano aAI bXL -aAI +fMr ano ano ano @@ -73319,17 +75157,17 @@ bMs bMs bMs acB -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal aug aaa aaa @@ -73353,8 +75191,8 @@ aCp bxl aBY aBY -aau -aau +aal +aal aQX aaa aaa @@ -73588,10 +75426,10 @@ aug aug aug aug -aau -aau -aau -aau +aal +aal +aal +aal aaX asZ atU @@ -73834,18 +75672,18 @@ bmA aHu acB bel -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal aaa aaa aaa @@ -74031,7 +75869,7 @@ aaa aaa aaa aaa -aau +aal aeS bXl bXm @@ -74094,15 +75932,15 @@ bhE acB aaa aaa -aau +aal aaa aaa aaa -aau +aal aaa aaa aaa -aau +aal aaa aaa aaa @@ -74122,11 +75960,11 @@ bIY bJc bIW bJg -bzz +liH aBY aBY bMF -aau +aal aQX aaa aaa @@ -74288,7 +76126,7 @@ aaa aaa aaa aaa -aau +aal aeS bZV bTU @@ -74349,17 +76187,17 @@ bfm bdv bYy acB -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal aaa aaa aaa @@ -74560,7 +76398,7 @@ acA acX adg aco -adM +xve adL aec aec @@ -74616,10 +76454,10 @@ aCq aCq aCq aCu -aau -aau -aau -aau +aal +aal +aal +aal asX ato aBN @@ -74801,7 +76639,7 @@ aaa aaa aaa aaa -aau +aal aeS buu bTU @@ -74864,14 +76702,14 @@ bYw bhJ acB aCa -aau +aal cdf cdq cdq bAI cdq cdA -aau +aal aCa aaa aaa @@ -74880,7 +76718,7 @@ aaa aaN atq aBW -atT +wVQ bIK bJd bJd @@ -74895,8 +76733,8 @@ aCp bxm aBY aBY -aau -aau +aal +aal aQX aaa aaa @@ -75058,7 +76896,7 @@ aaa aaa aaa aaa -aau +aal arU bYa bTU @@ -75068,7 +76906,7 @@ bXg bmm aeS acb -adt +uva adK aVE aez @@ -75123,7 +76961,7 @@ acB bLz ccS acB -aau +aal aaa aaa aaa @@ -75131,7 +76969,7 @@ aaa cdB aCL aCu -aau +aal aaa aaa aaN @@ -75314,8 +77152,8 @@ aaa aaa aaa aaa -aau -aau +aal +aal bnF bWZ bXa @@ -75325,7 +77163,7 @@ bPc bml bLM acb -aex +wJv acg acg acg @@ -75344,7 +77182,7 @@ bnb bkc bmL bkz -anp +diw ano ano ano @@ -75385,7 +77223,7 @@ aaa aaa aaa aaa -aau +aal cdB aCL aCq @@ -75572,7 +77410,7 @@ aaa aaa aaa aaa -aau +aal aeS bYb bTU @@ -75643,9 +77481,9 @@ aaa aaa aaa aaa -aau +aal cdB -aau +aal aCL aCu aaa @@ -75665,8 +77503,8 @@ aBY aBY aBY aBY -aau -aau +aal +aal aQX aaa aaa @@ -75886,7 +77724,7 @@ aXo beg aXo bem -bfg +qrk aGE bmA aHu @@ -75901,9 +77739,9 @@ acB acB aaa aaa -aau +aal cdB -aau +aal aCa aaa aaN @@ -75914,13 +77752,13 @@ aaN aaN aaN aaN -aau +aal aaa aaa -aau +aal bLX aaa -aau +aal aaa aaa aaa @@ -76095,7 +77933,7 @@ arU bTU bml arU -aau +aal acm acr acC @@ -76171,13 +78009,13 @@ aaa bJj aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa aQX @@ -76347,12 +78185,12 @@ aaa aaa aaa aaa -aau +aal bgg bYc bml bgg -aau +aal acm acr acr @@ -76395,10 +78233,10 @@ aJh aYp bea bei -bex +rVP bey beR -bhG +qpo aGE bTY bXh @@ -76417,15 +78255,15 @@ aaa aaa aaa aaa -aau +aal cdC cdq bAI cdE -aau +aal aaa aaa -aau +aal aaa aQX aQX @@ -76604,12 +78442,12 @@ aaa aaa aaa aaa -aau +aal bnF bTU bml bnF -aau +aal acm acr acE @@ -76624,7 +78462,7 @@ aeP afI bll aCZ -ahm +sfL ajd aew aeB @@ -76860,8 +78698,8 @@ aaa aaa aaa aaa -aau -aau +aal +aal aeS bXg cdV @@ -76873,7 +78711,7 @@ aco aco aev aiZ -bUj +oMw njx bUr aew @@ -77120,14 +78958,14 @@ aaa aeS aeS aeS -bTU -bmT -aMX -cdW +kBb +ria +yma +voh bXq aeS -aau -aau +aal +aal aaa aco aco @@ -77139,7 +78977,7 @@ bWL bQW bTF bbS -akB +uzG aeA qxZ blD @@ -77164,7 +79002,7 @@ aGE aRz aHh bdT -aGO +gEO aIe aGE aJV @@ -77380,7 +79218,7 @@ bTU bTU bTU bTU -bml +rBV bXq aeS aaa @@ -77610,16 +79448,16 @@ aaa aaa avP aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa aaa @@ -77637,7 +79475,7 @@ bTU bYc bTU bTU -bmm +iHp bQW aeS aaa @@ -77658,7 +79496,7 @@ afJ afJ afJ afJ -afN +oRe aoB bNZ aeA @@ -77676,7 +79514,7 @@ bYm cbG bRf aGQ -aTD +wMM bdI bdP aQh @@ -77696,7 +79534,7 @@ bMs bdB acB bZx -bMs +vLi bMs bRO bYK @@ -77894,10 +79732,10 @@ bTU bTU bTU bXg -bml +rBV bTU aeS -aau +aal aaa aaa aaa @@ -77933,7 +79771,7 @@ bdv cbH bTE aGQ -aIO +gVB apL aHB aIh @@ -78123,7 +79961,7 @@ aaa aaa aaa avP -aau +aal avM avZ avZ @@ -78135,7 +79973,7 @@ avZ avZ avZ avM -aau +aal aaa aaa aaa @@ -78143,15 +79981,15 @@ aaa aaa aaa aaa -aau -aau +aal +aal adO adO adO adO adO adO -bml +rBV bYc aeS aeS @@ -78174,7 +80012,7 @@ bkt bkh afN aoB -aFj +ili aeA aeA aBe @@ -78193,20 +80031,20 @@ aGQ aYo aJb aHP -aIf +aTD aGQ aTY bAF aGt -aGt +ntE bhL bNK -aGt +xtN bhO bdm bgs aJF -aXO +pTq bYH bdA acB @@ -78408,7 +80246,7 @@ auj auj brc adO -bmZ +eLr bTU brm bQW @@ -78440,7 +80278,7 @@ aER aYf aFk aEv -aFJ +gqB aFO aGf aFR @@ -78649,7 +80487,7 @@ avZ avZ avZ avM -aau +aal aaa aaa aaa @@ -78657,20 +80495,20 @@ aaa aaa aaa aaa -aau -aau +aal +aal adO asc aun auW aAo aOk -bop -bxL -bLW -bNQ -bsE -ezL +vgy +mNo +etl +cXx +eNw +rQg yma yma bTN @@ -78680,7 +80518,7 @@ bpa bmH bLh afJ -aLT +eQq ahr ahL bAV @@ -78702,9 +80540,9 @@ aFP aGg aQD cbK -cbQ +pYp aGR -aHl +iHE bdJ aIg aIQ @@ -78888,13 +80726,13 @@ aaa avP aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal avM avZ avZ @@ -78906,7 +80744,7 @@ avZ avZ avZ avM -aau +aal aaa aaa aaa @@ -79163,13 +81001,13 @@ avZ avZ avZ avM -aau +aal aaa aaa aaa aaa aaa -aau +aal adO aaq aaq @@ -79218,7 +81056,7 @@ aGA aGD cbS aGR -aIP +nwZ aUd ayG aYd @@ -79399,8 +81237,8 @@ aaa avP aaa aaa -aau -aau +aal +aal aVx ccX aeW @@ -79426,7 +81264,7 @@ aaa aaa aaa aaa -aau +aal adO aaq aaq @@ -79449,7 +81287,7 @@ adl adG adW aik -bkT +qHu acp agJ aht @@ -79492,7 +81330,7 @@ bdr aKa aKn aIY -aXQ +oWU bdC asv bMs @@ -79654,7 +81492,7 @@ aaa aaa aaa avP -aau +aal aVx aVx aVx @@ -79732,7 +81570,7 @@ aGr beA aGK aGR -aUf +clO aQY azU aIl @@ -80017,8 +81855,8 @@ bWj bZQ bWw bVM -aBx -bYK +rck +pHi azH aaa aaa @@ -80230,7 +82068,7 @@ ahU blC ahU bNY -ahU +sHj bwM aeA bnm @@ -80275,7 +82113,7 @@ bSy bSy aRr aBx -aBx +nbA azH azH aaa @@ -80434,7 +82272,7 @@ bbH awk cck ccm -cdk +wPr bbH bbH avM @@ -80475,7 +82313,7 @@ acw acw acp acq -ajn +pwu anj adW afK @@ -80494,7 +82332,7 @@ aeA bkF aBe aBe -aIG +vXg anC aFK aFU @@ -80532,7 +82370,7 @@ bWo bWv bVM bZt -aBx +nbA bTs azH aaa @@ -80682,7 +82520,7 @@ aaa aaa aaa aaa -aau +aal aVx bbH bbH @@ -80733,7 +82571,7 @@ acw amW bjX bnX -adW +dxJ blo acp afN @@ -80756,7 +82594,7 @@ aEw aEw aEw aEw -aGt +xCE beE aRt aGT @@ -80766,7 +82604,7 @@ aXm aYv aGT aGT -bGN +ygs beM bhY aoR @@ -80780,7 +82618,7 @@ acB bTK bYD bVM -bwx +nvs bVP bVS bSy @@ -80789,7 +82627,7 @@ bWw bWF bVM bZu -aBx +nbA aBx bWK aaa @@ -80937,9 +82775,9 @@ aaa aaa aaa aaa -aau +aal aaa -aau +aal aVx bbH bbH @@ -80971,7 +82809,7 @@ bwb byC avi adO -bla +sCI asc asS afn @@ -81017,9 +82855,9 @@ aGt beE aIM aqv -blU +pmp aHI -aDt +gVW aNL aYt aqv @@ -81046,7 +82884,7 @@ asy asy asy asy -bYK +hTU aBx bXI aaa @@ -81193,10 +83031,10 @@ aaa abE aaa aaa -aau -aau -aau -aau +aal +aal +aal +aal aVx bvG adq @@ -81214,8 +83052,8 @@ aVg aVk adx aVr -bbI -aVu +utL +mwg ccs cct ccu @@ -81256,7 +83094,7 @@ ahU ajk bkm blS -bmd +gBb ait bNN aAL @@ -81288,7 +83126,7 @@ bfo bfp beo aJp -aXK +tdw aBx aBx aBx @@ -81303,7 +83141,7 @@ bPk bPq bPs asy -aBy +qKO bXV bXI aaa @@ -81558,9 +83396,9 @@ bOJ bOT bPl bOT -bOS +myk asy -aBx +nbA aBx bXI aaa @@ -81778,7 +83616,7 @@ aAU ait bkM aEw -aLa +fqe aFm bGA aQt @@ -81817,7 +83655,7 @@ caW bOP bOU asy -aBx +nbA aBx bXI aaa @@ -81970,7 +83808,7 @@ anQ awe amE agr -bfz +kXJ awe aks awe @@ -82074,7 +83912,7 @@ bPo bOT bOV asy -aBx +nbA aBx bXI aaa @@ -82245,7 +84083,7 @@ aDs ceS ceS ceS -avQ +ueA avi avY bvK @@ -82276,7 +84114,7 @@ bVO acW adm aek -aeB +fxC afN afN bay @@ -82331,7 +84169,7 @@ bOT bPr bOW asy -bYK +hTU aBx bXI aaa @@ -82588,7 +84426,7 @@ bPp bPf bOX asy -aBx +nbA aBx bXI aaa @@ -82807,10 +84645,10 @@ ait blB blM blM -bqj +exX bBL bBL -bBM +kyS aGo aGo aUy @@ -82823,7 +84661,7 @@ aHW aIB aIp beU -aXB +kcl aHW aSs bGC @@ -82835,17 +84673,17 @@ bTt azH aqa bWY -aoi -aRg -aRg -aRg -aRg -bYC -aRg +stN +sMe +sMe +sMe +sMe +xWi +sMe bOR bOY azH -aBx +nbA aBx bXJ aaa @@ -83074,7 +84912,7 @@ aUQ aXs aGZ aJX -aUu +esN aHW bTc aIp @@ -83092,7 +84930,7 @@ bMq azH bba aBx -bba +aUi aBx bYK aBx @@ -83101,8 +84939,8 @@ aBy aBx aBx bPa -bQy -bYK +mVy +nLJ bMq azH aaa @@ -83284,10 +85122,10 @@ aaT bXd bQh aaT -bxJ +nPi aKR asG -bqQ +wtu aoT bRJ aoT @@ -83300,7 +85138,7 @@ bOm acy acy acy -ads +wLO ael ayo aek @@ -83322,7 +85160,7 @@ aCc aEy bNO aEy -aCc +wIF aBi bBN aGo @@ -83349,7 +85187,7 @@ bYC aRg aKz aBx -bba +aUi bRm aoh aoh @@ -83542,7 +85380,7 @@ bQf bQi aaT bCh -aKZ +hjz asG afr asm @@ -83814,7 +85652,7 @@ asP asP asg acy -acR +dUT aZu aeO acK @@ -83869,7 +85707,7 @@ aoV bbV aqd aoW -aFt +mlN aoh aBx bPa @@ -84095,7 +85933,7 @@ aEA aEA bnP aBi -bBN +qCl aGo aVX aUQ @@ -84116,7 +85954,7 @@ ahT akH bcZ aoo -alm +eMz bDh ahT aBx @@ -84332,7 +86170,7 @@ ask adb adb adb -adb +xec acy agX aJt @@ -84343,7 +86181,7 @@ aIN bmn bmp bkP -bnv +ijH aAY aBn bmN @@ -84354,7 +86192,7 @@ bnQ aBi bBN aGo -aGy +sXg aUQ aUQ aGu @@ -84377,7 +86215,7 @@ bdd bde ahT aBx -bgo +mnC aoh aoX apR @@ -84563,7 +86401,7 @@ bfN avY bvK avi -aqN +hjJ bRE aCt bRE @@ -84648,16 +86486,16 @@ aUi azH aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aQX aQX @@ -84893,7 +86731,7 @@ ahT ahT ahT aoh -aoW +ezo aoW aKu cab @@ -84905,16 +86743,16 @@ bYU azH aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa aQX @@ -84951,9 +86789,9 @@ avP avP aaa aaa -aau -aau -aau +aal +aal +aal aaa avP avP @@ -85108,24 +86946,24 @@ axE ahV aHw aDL -bFw +hvP bBJ -btc -btc -btc -btc -afy -btc +rta +rta +rta +rta +ueN +rta bDt -btc -cew -btc +rta +sEf +rta bDu -btc -bFw +rta +hvP aJk -btc -afy +rta +ueN aJl aJm bGL @@ -85206,13 +87044,13 @@ aaa aaa avP aaa -aau -aau -aau +aal +aal +aal bNf -aau -aau -aau +aal +aal +aal aaa avP aaa @@ -85361,7 +87199,7 @@ axE axG bso aGX -btc +rta aRp bgS axm @@ -85463,13 +87301,13 @@ aaa aaa avP aaa -aau +aal adF anD bNj anD anB -aau +aal aaa avP aaa @@ -85686,8 +87524,8 @@ aXg aXh aUH aUk -aau -aau +aal +aal aQX aaa aaa @@ -85719,11 +87557,11 @@ aaa aaa aaa avP -aau +aal bML bNd bMO -aau +aal bML bNd bMO @@ -85869,8 +87707,8 @@ acP arA awO bso -btc -afy +rta +ueN bth axm axF @@ -85897,9 +87735,9 @@ aLs bvC aLs aLn -azH +aaT cbT -azH +aaT cbX axL bPx @@ -85918,7 +87756,7 @@ akW bRM akW akl -ahT +eKx akW akW api @@ -85980,7 +87818,7 @@ aaa bML bNd bMO -aau +aal bML bNd bMO @@ -86124,7 +87962,7 @@ acf acP awO bso -btc +rta btg axm bPv @@ -86153,13 +87991,13 @@ aLs aLR aLs aLs -bfR -aBx -cbf -azH -azH -azH -azH +aZb +bQr +aRA +aaT +aaT +aaT +aaT bHE bHk axm @@ -86175,7 +88013,7 @@ akl akl akl akl -bjV +akl akl akl akl @@ -86237,7 +88075,7 @@ aaa bML bNd bMO -aau +aal bML bNd bMO @@ -86412,9 +88250,9 @@ aLs aLS aLn can -cbf -azH -bSi +aRA +aaT +bKd caq afa afa @@ -86442,7 +88280,7 @@ amD aql boa ahT -bpW +vcT bsA aUk aUk @@ -86457,8 +88295,8 @@ bbB aUH aUH aUk -aau -aau +aal +aal aQX aaa aaa @@ -86490,15 +88328,15 @@ aaa aaa aaa avP -aau +aal bML bNt bMO -aau +aal bML bNd bMO -aau +aal avP aaa aaa @@ -86625,7 +88463,7 @@ bQr bQr bQr bQr -bxK +cRz bgA acf aus @@ -86650,7 +88488,7 @@ aRl bQr bmx aLn -aLs +uaG aLs aLB bOv @@ -86666,12 +88504,12 @@ amq bOy byz aLs -aOs +jJz aLn -bQe -aHJ +bQj +aRA aTo -aTj +bQr bSb afa akx @@ -86681,7 +88519,7 @@ aoA aoE azE azR -btt +rDY aUv bGr bGU @@ -86748,13 +88586,13 @@ aaa aaa avP aaa -aau +aal amO anD bNg anD anz -aau +aal aaa avP aaa @@ -86892,14 +88730,14 @@ asP bli bfC bso -bsP +hYI axh bxA bxC avo avs auJ -aTm +kaB bLB bTn aRu @@ -86918,17 +88756,17 @@ bHK aLE bHK bHL -bHN +tzD aLn aLn aLn aLn aLn aLn -bRd -bYA -azH -aBx +bQg +bmo +aaT +bQr aBH afa bUo @@ -86939,8 +88777,8 @@ aoF aoE azE azR -btt -btj +rDY +iMs aAv all alq @@ -86970,7 +88808,7 @@ aaa aaa aaa aaa -aau +aal aaa aaa aQX @@ -87005,13 +88843,13 @@ aaa aaa avP aaa -aau -aau +aal +aal bML bNd bMO -aau -aau +aal +aal aaa avP aaa @@ -87128,7 +88966,7 @@ bfA ceV ceV ceV -bfL +nCF avi avY bvR @@ -87161,10 +88999,10 @@ aCz aCz bsg aRo -aTx +fNR aLm ars -aLp +nZS aLt bvl aLt @@ -87177,13 +89015,13 @@ aLn aLn aLn aLn -cai -aBx +pkz +bQr bRZ bRZ bRY bWU -cbf +aRA afa afa afa @@ -87227,7 +89065,7 @@ aaa aaa aaa aaa -aau +aal aaa aQX aQX @@ -87367,7 +89205,7 @@ boD awe awe agt -bfP +fSj awe aks awe @@ -87433,16 +89271,16 @@ aMS aLP aLn cam -cbx +bLB cby -aLo +vtD cbC -aLo -bYx -aLo +vtD +anx +vtD cbU afa -akn +jlL akv afa akU @@ -87454,7 +89292,7 @@ bCE aoF aQz aAd -bna +vmg ark akl akW @@ -87511,16 +89349,16 @@ aaa aaa aaa aaa -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal bML bNd bMO @@ -87689,15 +89527,15 @@ aLJ aLU aKC aLn -cbf -azH -azH +aRA +aaT +aaT acL aoH -azH -azH +aaT +aaT bSd -akq +amM bfT aTB bCy @@ -87726,7 +89564,7 @@ alF xhI bgp bgu -bhh +nRb qyl bij bry @@ -87768,7 +89606,7 @@ aaa aaa aaa aaa -aau +aal aug aug aug @@ -87777,7 +89615,7 @@ aug aug aug aug -aau +aal bML bNd bMO @@ -87941,13 +89779,13 @@ bHI bvs bOx bvx -aad -aad -aad -aad -aad -cbf -azH +aLn +aLn +aLn +aLn +aLn +aRA +aaT aaa aaa aaa @@ -87974,7 +89812,7 @@ bZY alF alF alF -amU +xhv amU amU amU @@ -87987,7 +89825,7 @@ nuq xyz bim xhI -brS +hYj bYW aSh bxg @@ -88025,7 +89863,7 @@ aaa aaa aaa aaa -aau +aal aug aeJ aeJ @@ -88035,11 +89873,11 @@ aeJ aeJ aug bNu -aau +aal ahP -aau +aal aaa -aau +aal aaa aQX aQX @@ -88179,7 +90017,7 @@ bmV bxO auJ auJ -buY +ubS avj avd avd @@ -88198,19 +90036,19 @@ aLm aLm aLm aLm -aad -aRN -aDN -aSp -aad -cbf -azH +aaT +cxa +vtD +anx +vtD +aRv +aaT aaa aaa aaa aaa afa -akz +klG caB bCO bCQ @@ -88225,10 +90063,10 @@ alZ buw aQA aAd -btt +rDY bAL aDj -alV +eQp aqT bdz bbM @@ -88237,12 +90075,12 @@ bbO bbM bcD bcI -amU +bfR xhI bgJ bhi dtX -bin +wrV xhI bYV bCg @@ -88279,25 +90117,25 @@ aaa aaa aaa aaa -aau -aau -aau -aau +aal +aal +aal +aal bMG aeJ -bLt -aNm -aNr +iif +oGu +cvc aND aeJ aNJ anD anD bNh -aau -aau -aau -aau +aal +aal +aal +aal aaa aaa aQX @@ -88433,39 +90271,39 @@ aaT bfv bna axl -bmW +qpi auJ auQ buZ avm avr -anW +pSa aCB bvi avj aLl aCz bQr -amM +rmC ahW boe boe +lyr boe boe +nyL boe -boe -byr -bFa -bIu -bSg -bZe -bYp -cbw -azH +vtD +aRv +aaT +aaT +aaT +aaT +aaT +aaa +aaa +aaa aaa -aau -aau -aau afa bCG aku @@ -88536,7 +90374,7 @@ aaa aaa aaa aaa -aau +aal aug aug aug @@ -88554,10 +90392,10 @@ aNw aNw aNw aNw -aau -aau -aau -aau +aal +aal +aal +aal aQX aaa aaa @@ -88703,7 +90541,7 @@ aCC aCz aCz bQr -bQr +aRA aaT aaT aaT @@ -88711,18 +90549,18 @@ aaT aaT aaT aaT -bLT -aad -aad -bSu -aad -aad -bQc -azH +aaT +aaT +aaT +aaT +aaa +aal aaa aaa aaa aaa +aaa +aal afa afa afa @@ -88730,7 +90568,7 @@ afa afa afa afa -alZ +kVx alZ aNa alZ @@ -88740,7 +90578,7 @@ bux aoF aQz aAr -bna +vmg axf alV bwA @@ -88793,13 +90631,13 @@ aaa aaa aaa aaa -aau +aal aug aNi aNi aNp aeJ -aso +rSs bLJ bOg aNG @@ -88813,7 +90651,7 @@ aNw aNw aNw aNw -aau +aal aaa aQX aQX @@ -88932,7 +90770,7 @@ aaa aaa aci blX -auA +wxZ blY auC awe @@ -88959,33 +90797,33 @@ aCz aCz aCz bQr -bCh -bQr +yjo +aRv aBG -aau +aal +aaa +aaa +aaa +aaa +aal +aaa +aaa +aal +aaa +aaa +aal aaa aaa aaa aaa aaa -any -amI -aad -bSu -aad -anA -anE -aau -aau +aal +aaa +aal aaa aaa aaa aaa -aaa -aaa -aau -aau -aaa afa buI amb @@ -88997,7 +90835,7 @@ buy bzV bCA aAr -bna +vmg axf alF alF @@ -89012,7 +90850,7 @@ alF xhI bhf esU -bid +fzs bhi xhI bYV @@ -89032,29 +90870,29 @@ aSP aSP aSP bUx -aau -aau +aal +aal aaa aaa aaa -aau -aau +aal +aal aaa aaa aaa aaa -aau -aau -aau +aal +aal +aal aaa aaa aaa -aau -aau +aal +aal aug aNi cdt -aNq +qWm aeJ asA bLJ @@ -89070,8 +90908,8 @@ aNw aNw aNw aNw -aau -aau +aal +aal aaa aQX aaa @@ -89204,41 +91042,41 @@ arA bxX afC aae -aaE +aTr acx -bQr -bQr +vtD +vtD bSr -bQr -bQr -bQr +vtD +vtD +aRu bSt aBC bQr -bQr -bQr +cxa +aRv aBE aBF aaa aaa aaa aaa -aaa -aaa -aau -bPG -aad -bVm -aad -bPG -aaa -aaa -aaa -aaa -aaa +aal +aal +aal +aal +aal +aal +aal +aal +aal aaa aaa aaa +aal +aal +aal +aal aaa aaa aaa @@ -89254,7 +91092,7 @@ aqG aoD bCB aAr -bna +vmg awZ bZJ amP @@ -89288,25 +91126,25 @@ aTc bSM aTf aTg -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal aug aug aNo @@ -89328,7 +91166,7 @@ aNA aNw aNw aNw -aau +aal aaa aQX aQX @@ -89462,64 +91300,64 @@ abP bot axb aaT -afx +bfS bQr bCh aaT bSa bQr -bQr -bQr -bCh -bQr -bQr +amM +vtD +mHD +vtD +aRv aBE aBF -aau aaa aaa aaa aaa -adF -anD -box -bPN -bPO -bVI -bSK -bPN -box -anD -anB -aau +aal +aug +aug +aug +aug +aug +aug +jVL +aug +aug +aal aaa aaa +aal aaa aaa +aal aaa aaa aaa aaa afa afa +ppV aad aad aad -apO -apO -apO -apO -apO -azE +aad +aad +aad +aad +ydf bCJ -btj +iMs aDl aDo aPp aPy aQR aRI -asr +vSP baY bcY baY @@ -89565,28 +91403,28 @@ aug aug aug aug -aau +aal aNi aNi aNo aNi asx -atY +hez aNw aNw bZM bNn -aNB +aNC aNC bJy aNC -aNB +aNC aNB bZM aNw aNw -aau -aau +aal +aal aaa aQX aaa @@ -89719,7 +91557,7 @@ aff apV aaT aaT -afx +bfS bQr aaT aaT @@ -89735,23 +91573,24 @@ aaa aaa aaa aaa -adF -anD -anz -aad -aad -bFN -aad -aad -aad -bFN -aad -aad -amO -anD -anB +aal +aal +bAC +uwV +uwV +gFA +gFA +gFA +uwV +uwV +aug +aal +aal +aal +aal aaa aaa +aal aaa aaa aaa @@ -89760,16 +91599,15 @@ aaa aaa aaa aad -aou -aoU -apO +apT +apT aNt -aTM -aVC -apO -apO +apF +xiu +aad +aad buC -afC +ptm afF aDo aPq @@ -89801,29 +91639,29 @@ aSP aSP aSP aSh -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal aNg aNl aNh @@ -89843,7 +91681,7 @@ bMC aNw aNw aNw -aau +aal aaa aQX aaa @@ -89975,65 +91813,65 @@ bxU arK awV aaT -bQr -afx +sqt +wBW bQr aaT -aaa -aaa -aaa -aau -aaa -aaa -aau +aal +aal +aal +aal aaa aaa aaa aaa +aal +aaa +aaa +aaa +aal +aug +aug +tqi +uwV +tsa +gWa +gWa +hTm +dfK +uwV +aug +aug +aug +aug +aug +aal +aaa +aal +aaa +aaa aaa -adF -buJ -aad -aad -aad -aaf -bPP -alh -aps -bIZ -bPP -aax -aad -aad -aad -bwu -anB aaa aaa aaa aaa aad +apT +apF +apF +apF +xiu +xiu aad -aad -aad -aad -bZB -aoy -apO -aVB -bfW -aVD -bnZ -apO anH -bna -aDl -aDp +hNP +awb +fvY aPr aQG -asr -aRJ -asr +ifH +fVo +gwx bbR bbR bbR @@ -90070,12 +91908,12 @@ aaa aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aaa aaa aaa @@ -90091,7 +91929,7 @@ aNC aNC bNo bOo -aNw +aNB bMP aNw aNw @@ -90100,7 +91938,7 @@ bMR aNH aNw aNw -aau +aal aaa aQX aaa @@ -90233,64 +92071,64 @@ bAK awV aaT aBC -ahb +blN aWS aaT -aau -aau -aaa -aau aaa aaa -aau +aal +aaa +aaa +aaa +aaa +aaa +aal +aaa +aaa +aal +aug +uwV +gFA +spN +uwV +lwp +dFi +vBp +dFi +tuR +uwV +gFA +gFA +gFA +uwV +aug +aug +aal +aal +aal +aal +aaa aaa aaa aaa aaa -adF -anz aad +apF +app +amx +apS +amx +xiu aad -aaf -amu -aat -bPT -apg -apg -apg -bPT -aan -amu -aax -aad -aad -amO -anB -aaa -aaa -adF -alT -bBm -anw -bDo -bPJ -aoq -apa -apO -aTI -bEV -caM -aUV -apO bPB -bna +vmg aDl aDp aPt aQH asr aRJ -asr +ohU bbX bbX bbX @@ -90327,17 +92165,17 @@ aaa aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aNj bZL bLe @@ -90347,8 +92185,8 @@ bOd bOh bOj bOk +aNB aNA -aNx bJE bMS aNw @@ -90358,7 +92196,7 @@ bMH aNw aNw bNk -aau +aal aQX aaa aaa @@ -90486,61 +92324,61 @@ aty byq ark ark -bna +vmg bnq aaT bQr -afx +bfS aaT aaT -aau -aau +aal +aal +aal aaa aaa aaa aaa -aau -aaa -aaa -aaa -aaa -ahP -aad -aad -aaf -aat -amy -aav +aal +aal +aal +aal +aal +aug +uwV +dCc +xaB +cvq +sEU bPT apg -apg -apg -bPT -aav -amy -aan -aax -aad -aad -ahP -aau +rUR +lKk +qxF +snW +wvW +iCB +uwV +uwV +aug +uiU +aug +aug +aug +aaa +aaa +aaa +aaa aaa -ahP aad -aad -aad -bDZ -azW -azY -apz -apO +aTW +fKt bJF -boG -boS -bob -apO +uIu +hOQ +sxr +aad anH -bna +vmg aDl aDq aPv @@ -90584,17 +92422,17 @@ aCu aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aaa aaa aaa aaa -aau +aal aNj asC bLf @@ -90605,8 +92443,8 @@ aNC aNC bNq bOp -aNw -cac +aNB +oVG aNw aNw aNC @@ -90614,7 +92452,7 @@ aNB aNw aNw aNw -aau +aal aaa aQX aaa @@ -90743,74 +92581,74 @@ aty ard anH ark -boi +dNx awV aaT bQr -afx +bfS aaT aaT aaT aaa +aal aaa aaa aaa -aaa -aau -aaa -aaa -aaa -adF -anz -aad -aaf -aat -aay -alf -amN +aal +aug +aug +aug +aug +ugj +aug +uwV +tnz +fdM +oMf +szx aHD iJC -iJC -iJC +oAP +vdQ bPV -amR -amJ -apI -aan -aax +bPV +bPV +xKE +qoF +uwV +tHJ +tHJ +tHJ +ykr +oDl +tKA +aal aad -bPQ -aau -aau -ahP -aau aad -bCF -bFB -azW -aor -apA -apO +aad +aad +aad +apn aIS -boI -bnY -boc -apO +apn +apn +aad +aad anH -bna +vmg aDl aDq aPw aQN aQT aRM -asr +xLk bcP bgy bgy -bic -bju -bCf +bgy +bgy +bgy bgy bHd awG @@ -90838,25 +92676,25 @@ bXv ccB aAc aNy -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal aNn atY bLn aNl -bNR +skk aNw aNB aNB @@ -90871,7 +92709,7 @@ aNB aNw aNw aNw -aau +aal aaa aQX aaa @@ -90992,7 +92830,7 @@ bxM bxM byg byk -bxE +oms bqc bqc arX @@ -91000,69 +92838,69 @@ aMn aMp arv awF -bna +vmg arx aaT arw ahu -ahW -alR +bLB +aRu aaT aaT aaT +aal +aal +aal +aug +uwV +uwV +uwV +uwV +uwV +uwV +uwV +iRE +oDI +vVH +iGJ +lEt +vUd +rwy +hmG +mFQ +miv +dZa +mFO +qxz +uwV +enD +psF +tHJ +mhi +wTx +gDW aaa -aaa -aaa -aau -aaa -aaa -aaa -ahP aad -aad -aao -aav -aaz -aaG -aaH -aaH -aaH -aaG -aaH -aaH -aaH -aaG -aaz -acn -aIq -bSL -bPR -anD -anD -anz -aau -aad -apK -eRe +bHc aUT -aor -apB +eRe +dUt aTL aTO boO -apQ +boO apY aad -aDg -bna +anH +vmg aWV acj aPx aQO aRh aYA -aRh -bcU +uTy +acj acj acj acj @@ -91107,28 +92945,28 @@ aNz aNz aNz aCu -aau +aal aNi aNi aNf aNi asx -bNR +yfz aNw aNw bZM bNn -aNB +aNC aNC bMl aNC -aNB +aNC aNB bZM aNw aNw -aau -aau +aal +aal aaa aQX aaa @@ -91257,7 +93095,7 @@ auG auG aAn ans -bna +vmg awV aeu aeu @@ -91265,66 +93103,66 @@ bok aeu amM anx -aoc -ald +aRu +aaT +aaa +aaa +aal +aug +uwV +vAo +vbr +pLI amH -amI -aaa -aau -aaa -aaa -aau -ahP -aad -aaf -aat +uwV +uwV aav +fED +aaH +tlY +alj +vFq +alD +tlY +jvP +cZN +vjt aaz -aaH -aaH -acM -aaH -alc -aaH -acM -aaH -aaH -aaz -apg +hfx +feu +etL +hLL +dlq +oCw +kMb +yeA +aal aad -aad -aad -aad -aad -alN -alQ -aHR -bCX -bHc -aor -aor +bPF +gxl +naO aTU -apq -aor -bzT -aor +fdn +oak +sLW +ceW aqs aad -aDh -arH -awb -axW +anH +vmg +aWV +acj bjq bps bps aYB brG acj -lDQ +asr axP bnB bpq -aRf +rDp bie aRj aSe @@ -91348,8 +93186,8 @@ acj bpL bXv aAc -aau -aau +aal +aal cdC cdq cdq @@ -91376,15 +93214,15 @@ aNw aNw ceN bME -aNB -aNB +esb +xyU bMA bME aNA aNw aNw aNw -aau +aal aaa aQX aQX @@ -91498,12 +93336,12 @@ aba abK aAh bhj -byI +byT bza bzy bAQ -bBC -byI +vch +byT bEo bEL bEP @@ -91514,7 +93352,7 @@ bPj bRI bFf aww -boi +dNx awW aeu arz @@ -91522,52 +93360,52 @@ boC aeu aeu aeu -aoI -aad -aad -any +aRA +aaT +aaa +aaa +aal +aug +uwV amH -amH -amH -amH -amH -anF +utg +jip aSc biF -bjh -bjh -blT -aaH -acM -aaH -aaH -alc -aaH -aaH -acM -aaH -aaz -apg -aad +cUe +cAa +csH +lhs +dZW +mXY +hVt +hVt +dZW +dEx +pgT +xBI +seX +ykD +uwV aRS apG -amx -amx -amx -bGV -aHS -aMR -bPF -aDr -apH -aQg +tHJ +mBI +uUp +gDW +aaa +aad +bPH +cDf +aor +dUt aQn aGV -arI -bAC +aor +aor bAE -bwW -bwX +aad +aDg ceH ceJ acj @@ -91608,18 +93446,18 @@ aAc aaa aaa bMk -aau +aal aaa aaa aaa aaa -aau -aau -aau +aal +aal +aal aaa aaa aaa -aau +aal cda aug aNi @@ -91640,8 +93478,8 @@ aNw aNw aNw aNw -aau -aau +aal +aal aaa aQX aaa @@ -91778,54 +93616,54 @@ axd boC bsM btr -bHB -apy -azT -aad -aad -aad -aad -aad -aad -aad -aRx -aad +aeu +aRA +aaT +aal +aal +aal +aug +uwV +qDQ +amH +amH +tus aah -alM -alM -kow -aaH -aaH -aaH -alj -aly -alD -aaH -aaH -aaH -aaz -apg -amt -amx -amz -amx -amx -amx -amx -amx -aNP -bPH -aor -apu -boR -aor +uwV +nIf +fED +dmV +dZW +hmV +rFm +rFm +jqp +dZW +dZW +uXm +seX +eyM +uwV +tHJ +tHJ +tHJ +bMK +rQo +yeA +aal +aad +aad +aad +aad +aad +wok aor aAm -aad +wMf boT aad -bjp -bna +aDh +vmg aDl acj bSI @@ -91836,7 +93674,7 @@ bpw bcW bpw bgj -bgj +iUF bhg bhk bif @@ -91883,7 +93721,7 @@ aNi aNi cdx aNi -asz +mbB bNR aNh aNs @@ -91897,7 +93735,7 @@ aNw aNw aNw aNw -aau +aal aaa aQX aQX @@ -92035,53 +93873,53 @@ aBB bqh bsW bCx -bHB -ajw -aBI -aGJ -aGJ -aGJ -aGJ -aGJ -aGJ -bcs -bfU -aad -aaw -alM -alM -kow +aeu +aRA +aaT +aaa +aaa +aal +slb +uwV +amH +dfN +amH +maC +amH +gFA +nEo +nlD aaG alc -alc -alr -alz -aNc -alc -alc -aaG -bQa -aUq -aUS -aph -boB -boP -buF -bAq -bAO -aph -aNR -bPI -aUX -bRr -caG -bsU +als +als +als +mpC +hAk +vPT +kuZ +seX +amB +gFA +aaa +aal +aaa +ykr +uUp +rcn +hRG +dUt +aZd +udR +dUt +nUo +wok jZv -aBK -bpx -bAB -bpQ -buD +aad +aad +aad +aad +aDh caO awK ayt @@ -92134,7 +93972,7 @@ aaa aaa aaa aaa -aau +aal cdr cds cdv @@ -92152,10 +93990,10 @@ aNw aNw aNw aNw -aau -aau -aau -aau +aal +aal +aal +aal aQX aaa aaa @@ -92291,55 +94129,55 @@ arn axd boC bti -bDN -bHB -aRy -anP -aad -aad -aad -aad -aad -aad -aad -aRB -aad -aaj -alM -alM -kow -aaH -aaH -aaH -als -alB -alL -aaH -aaH -aaH -aaz -apg -amw -amx -amC -boU -aoL +mKc +aeu +aRA +aaT +aal +aal +aal +aug +uwV +nyx +oqE +aRx +maC +aRx +gFA +mJV +eiC +son +boA +nNJ +jxP +nNJ +cLX +nNJ +skl +rJs +qOX +nsr +iGD +pwb +pwb +pwb +wIl aph -aqu -amx +xLt +xLt aNT -aZd -aor -apv -bwU -aor -aor -bJI +viK +piG +apx +bzK +tpd +jHY aad -boT +ugT +ybh aad bjp -aeo +qlL bDk cdQ bDm @@ -92350,7 +94188,7 @@ asJ acj atg atC -atC +srD auN avl avK @@ -92391,25 +94229,25 @@ aaa aaa aaa aaa -aau -aau -aau -aau +aal +aal +aal +aal bMI aNi -bRF -bOc -bLn +wod +uzp +odJ aNu aNi bNr anD anD bNi -aau -aau -aau -aau +aal +aal +aal +aal aaa aaa aQX @@ -92550,58 +94388,58 @@ boC aeu aeu aeu -aRm -aad -aad -anA +aRA +aaT +aaa +aaa +aal +aug +uwV amH +yhe amH +maC amH -amH -amH -anF -aSc -biF -bjh -bjh -boA -aaH -acM -aaH -aaH -alc -aaH -aaH -acM -aaH -aaz -apg -aad -aRS -azV -aNb -amx -amx -bGV -aHU -aTH -aZd -aor -apx -bzK +gFA +fis +waf +gPD +mgs +sYx +sYx +sYx +pyl +gNl +tBY +wzU +tTb +amB +gFA +aaa +aal +aaa +ykr +mjA +vyZ +iUZ +dUt +biI +emg +dUt +apf aRs apM bwV aoq bEr -aad -aDh +moO +mUy ceI afF acj ayq ass -bJM +eoH acj acj ath @@ -92651,7 +94489,7 @@ aaa aaa aaa aaa -aau +aal aug aNi aNi @@ -92660,12 +94498,12 @@ aNi aNi aNi aug -aau -aau +aal +aal ahP -aau +aal aaa -aau +aal aaa aQX aQX @@ -92806,53 +94644,53 @@ aeu bok aeu aZp -aDu +vtD aag -ald +aaT +aaa +aaa +aal +aug +uwV amH -anE -aaa -aau -aaa -aaa -aau -ahP -aad -aan -aax -aav -aaz -aaH -aaH -aaH -aaH -alc -aaH -aaH -aaH -aaH -aaz -apg -aad -aad -aad -aad -aad +amH +amH +maC +jsv +uwV +nIf +fED +dmV +dZW +nBZ +qag +qag +pGQ +dZW +wUt +cxK +tTb +vLE +uwV +tHJ +tHJ +tHJ +bMK +lzq +yeA alN -alQ -aIm -aoQ -biI -aor -aor -bzT -apq -aor -aor -aor +aad +aad +aad +aad +qMo +okf +sZm +aad +xGM bDl -cdO -cdP +aad +bjp aeo aDl acj @@ -92864,7 +94702,7 @@ asK ayL ati atE -auc +aue auR avw avN @@ -92908,7 +94746,7 @@ aaa aaa aaa aaa -aau +aal aug aug aug @@ -92917,7 +94755,7 @@ aug aug aug aug -aau +aal bML bNe bMO @@ -93066,50 +94904,50 @@ aRv aaT aaT aaT +aal +aal +aal +aug +uwV +eCr +soJ +poI +xUj +cla +ooZ +ice +esp +jLo +dZW +fAP +hVt +hVt +dZW +sKR +eRs +smc +tTb +ykD +uwV +uYg +dpg +tHJ +eqa +mjA +gDW aaa -aaa -aaa -aaa -aaa -aaa -aaa -ahP aad -aad -aao -aav -aaz -aaG -aaH -aaH -aaH -aaG -aaH -aaH -aaH -aaG -aaz -acl -aIH -bSL -bPS -anD -anD -anB -aau -aad -bCH -vws -aHr -aor -aVq +moJ +vjX +vAj +aUU boH -aos -aos -aos -aqt +oIG aad -aDi +aad +aad +aad +aDh aeo aDn aMP @@ -93165,16 +95003,16 @@ aaa aaa aaa aaa -aau -aau -aau -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal +aal +aal +aal bML bNe bMO @@ -93325,48 +95163,48 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -amO -anB -aad -aan +aal +aug +uwV +jSs +kAU +mHo +qBm +uwV +uwV aax abY amB -amN -bPU +tlY +skG cOZ -cOZ -cOZ -bPZ -amN +rLt +tlY +hTF +fpA amS aKQ -aaf -aat +nnE +szT +oVd +hZC +dlq +vvH +fWk +yeA +aal aad -bPQ -aau -aau -ahP -aau -aad -azX blb -anN -aNK -aUU -aad +aor +aor +aor +hrD +aor +aor +aor aTJ -aTJ -aTJ -aTJ -aad -bIb +ofx +cdP aeo axf aMQ @@ -93401,7 +95239,7 @@ aDF acF aDM acj -bpL +sTB bPi aAc bxc @@ -93577,53 +95415,53 @@ bCh bfS aaT aaT -aau -aau +aal aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -ahP -aad -aad -aan -aax +aal +aug +uwV +uwV +uwV +uwV +uwV +uwV +uwV +iXv +vpa amL -aav +cYx bPW -apg -apg -apg -bPT -aav -bPK -aaf -aat -aad -aad -ahP -aau -aau -ahP -aad -aad -aad -apf -anN -aTP -bDR -aad +cgH +fVB +fVB +hKj +uqn +sjB +tTb +oij +uwV +eVJ +jdu +tHJ +mXO +iUZ +aaa +aaa +iIq +dUa +aor +vzQ +mGm +ruT arB -arC -arC +aor +aor arE aad -awI +uQL aeo axf aMQ @@ -93687,13 +95525,13 @@ aaa aaa avP aaa -aau -aau +aal +aal bML bNe bMO -aau -aau +aal +aal aaa avP aaa @@ -93834,56 +95672,56 @@ bQr bqm aXF aaT -aau +aal +aal +aal aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -amO -anB -aad -aad -aan +aal +aug +aug +uwV +uwV +oAn +uwV +uwV +osG +gbC amu -aax -bPT -apg -apg -apg -bPT +vQd +amu +jws +ifP +kcd +xdQ aaf -anO +seG aat -aad -aad -adF -anz -aau +dzi +uwV +tHJ +tHJ +tHJ +aal aaa -amO -alT -alU -anw -aQW -aTN -aTQ -aUW -aad -apF -amx -apS -apT +aaa +aaa +elZ +mUn +aor +aor +apq +upM +apQ +mXC +aor +wll aad bPC -asI +aeo bpe -bGu +aMQ bGw aMU aMU @@ -93944,13 +95782,13 @@ aaa aaa avP aaa -aau +aal adF anD bNj anD anB -aau +aal aaa avP aaa @@ -94076,7 +95914,7 @@ bAo bEn bEJ aAn -bAx +nDW bBp bBe bUN @@ -94087,7 +95925,7 @@ bjo aeo awV aaT -aoG +dXK bqp aRA aaT @@ -94097,55 +95935,55 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -amO -bwt -aad -aad -aad -aan -bPX +aal +aal +aug +aug +uwV +uwV +uwV +uwV +uwV +pSm +oVP +qZu +knv alv -ara -bJl -bPX -aat -aad -aad -aad -bww -anz +eFB +lxq +mNC +mpx +nPz +euN +uwV +uwV aaa -aaa -aaa -aaa -aad -aad -aad -aad -aUN -aTR -aUY -aad -bJG -apF -apT -apT +aal +aal +aal +aal +aal +aal +pmD +hAI +vRP +vRP +vRP +vmc +aor +aor +apq +oWa aad jzE bDO bpd bpf -bpi +gJo bpi bpi bpm -bpn +itU aYK atu atL @@ -94200,15 +96038,15 @@ aaa aaa aaa avP -aau +aal bML bNe bMO -aau +aal bML bNv bMO -aau +aal avP aaa aaa @@ -94348,57 +96186,57 @@ aaT bqC aRA aaT -aau -aau +aal +aal aaa aaa aaa aaa +aal +aaa +aal +aug +aug +lND +aug +uwV +uwV +dpT +uwV +uwV +amH +fOk +maC +uwV +uwV +dpT +gFA +gFA +uwV +aal +aaa +aal aaa aaa aaa +aal aaa -aaa -aaa -aau -amO -anD -anB -aad -aad -bFN -aad -aad -aad -bFN -aad -aad -adF -anD -anz -aaa -aaa -aaa -aaa -aaa -aaa -aau aad apC aUO aTS -apm -aad -apF -aAb -apT +aor +hpU +apu +jVA +wQC aad aad bHF afE afL aMQ -aMV +tok aMU bDe aMZ @@ -94461,7 +96299,7 @@ aaa bML bNe bMO -aau +aal bML bNw bMO @@ -94585,7 +96423,7 @@ aQf bzu bUE aQm -bBu +eSa aup bzq bAm @@ -94605,51 +96443,51 @@ aaT bqC aRA aaT -aau -aaa -aaa -aaa -aau +aal aaa aaa aaa aaa aaa +aal aaa aaa -aaa -aaa -aaa -amO -anD -boy +aal +aal +aal +aug +aug +aug +jsm +uwV +amH bPY bPO -bWT +pGU bSK -alS -anD -anD -anz +uwV +jsm +aal +aal +rPx +aal aaa -aau +aal aaa aaa aaa +aal aaa -aaa -aaa -aau -aad +qXl anG -caE -aTU -apn -aad -aad -aad -aad -aad +apO +apO +kAG +feg +wpG +tcB +apO +apO aze awO aeo @@ -94718,7 +96556,7 @@ aaa bML bNe bMO -aau +aal bML bNe bMO @@ -94865,54 +96703,54 @@ aaT aaT aaa aaa -aau -aau +aaa +aaa +aal +aal aaa aaa aaa aaa aaa +aal +aal +aal +jsm +uwV +qkE +jGy +uzT +uzT +jQo +uwV +jsm +aal aaa aaa +aal +aal +aal +aal aaa aaa -aaa -aaa -aaa -aau -bPG -aad -bVm -aad -bPG -aau -aau -aau -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aad -bGR -apP -aTW -apo -aad -aau -aau -aau -axc +qXl +qXl +qXl +nyj +apO +apz +xRV +nEL +boG +boS +bob +apO bHt bCL bDP bZK aAc -awa +vBQ bDn aAc bgC @@ -94971,11 +96809,11 @@ aaa aaa aaa avP -aau +aal bML bNe bMO -aau +aal bML bNe bMO @@ -95120,50 +96958,50 @@ bSj aRA bsp aMq -aau +aal aMz aMC aMC aMv +aal +aal aaa aaa aaa aaa aaa aaa +aal +jsm +uwV +uwV +gFA +gFA +gFA +uwV +uwV +jsm +aal aaa aaa +aal aaa aaa -aaa -aaa -bPG -aad -bSu -aad -bPG -aaa -aaa -aaa -aaa -anX -anX -anX -anX -anX -aaa -aaa -aaa -aad -anI -aVR -aoS -app -aad -aaa -aaa -aau -axc +aal +aal +aal +hXd +qqo +sEr +nyj +apO +leR +xRV +aTI +bEV +caM +aUV +apO bHu aeo axf @@ -95229,13 +97067,13 @@ aaa aaa avP aaa -aau +aal amO anD bNl anD anz -aau +aal aaa avP aaa @@ -95351,7 +97189,7 @@ aiw abT bVs aQm -bgW +tOh byB aQj bzx @@ -95365,7 +97203,7 @@ bAy bBz bAy aaP -acD +fiC afe axa aaP @@ -95383,44 +97221,44 @@ aMG aMD aME aMv -aau +aal aaa aaa aaa aaa aaa aaa +aal +jsm +aug +aug +aug +aug +aug +lND +xbA +lOW +aal aaa aaa +aal aaa aaa -bPG -aad -bSu -aad -bPG +aal aaa aaa -aau -anX -anX -bzJ -bcy -bzM -anX -anX -aau -aaa -aad -aad -aad -aad -aad -aad -aaa -aau -aRC -aRG +qXl +qXl +qXl +opl +apO +lKe +xRV +rFt +bfW +aVD +bnZ +apO awI bjP bov @@ -95455,7 +97293,7 @@ bPi bcC bcT bdg -bwE +lEO bwI bxe bCZ @@ -95486,13 +97324,13 @@ aaa aaa avP aaa -aau -aau -aau +aal +aal +aal bNm -aau -aau -aau +aal +aal +aal aaa avP aaa @@ -95613,7 +97451,7 @@ aQm aQm aQm aQm -bfr +gsu bzq bzN bAx @@ -95629,7 +97467,7 @@ aUJ akm bsk bsw -bDX +ltw aaT aMq aMq @@ -95648,35 +97486,35 @@ aaa aaa aaa aaa +lFs +xbA +wmg +xbA +wmg +xbA +wmg +iiw aaa aaa aaa -bPG -aad -bSu -aad -bPG -aaa aaa anX anX -bck -bct -bct -bct -bck +anX anX anX aaa aaa aaa -aau -aau -aau -aaa -aaa -aau -aRE +qXl +nyj +apO +aoU +hSe +fzV +sfa +kTN +apO aze bAN bDE @@ -95695,9 +97533,9 @@ aRd axi bil acj -bRV +aal bXZ -bRV +aal acj bWG bYL @@ -95711,7 +97549,7 @@ bca bcA bcS bdf -bdf +tzv bwF bwJ bxf @@ -95745,9 +97583,9 @@ avP avP bNs aaa -aau -aau -aau +aal +aal +aal aaa aaa avP @@ -95889,7 +97727,7 @@ bwB bDL aaT aMq -aMs +lzi bOs aMu aMu @@ -95899,41 +97737,41 @@ aMu bCR aME aMv -aau aaa aaa aaa aaa aaa aaa +ycZ +qYJ +dnN +qYJ +dnN +qYJ +dnN +qYJ +wmg aaa aaa -bPG -aad -bSu -aad -bPG -aaa -aau anX -aTy -aOf -bcf -bJR -btn -but -bcE +anX +bzJ +bcy +bzM +anX anX aaa aaa -aaa -aaa -aaa -aaa -aaa -aau -aRC -aRF +qXl +nyj +apO +apO +apO +apO +apO +apO +apO aIX bHv awU @@ -96122,7 +97960,7 @@ aPH abU aPH auV -bgX +uRy aup aTk bXp @@ -96136,7 +97974,7 @@ bAT bBA bEp aaP -amQ +czY aPu azr aaP @@ -96156,39 +97994,39 @@ aMu aMu aMH aMI -aau aaa aaa aaa aaa aaa aaa -aaa -aau -bPG -aad -bSu -aad -bPG -aaa -aau +xWs +qYJ +ixd +qYJ +ixd +qYJ +ixd +qYJ +oHN +aal anX -bbC -bbD -bzL -bLY +anX +bck bct -bcl -bbF +bct +bct +bck +anX anX aaa -aau -aaa -aau -aau -aaa -aaa -aaa +qXl +rYP +sos +sos +sos +sos +xXZ aRD aze awO @@ -96418,36 +98256,36 @@ aaa aaa aaa aaa +aal +euD +qYJ +dnN +qYJ +dnN +qYJ +dnN +qYJ +wmg aaa -aaa -aaa -aaa -bPG -aad -bSu -aad -bPG -aaa -aau anX -bcj -bcl -bct -bcn -bct -bcl -bOe +aTy +aOf +bcf +bJR +btn +but +bcE anX -acZ -acZ -acZ -acZ -acZ -acZ -acZ -aau -axc -awI +oPe +oPe +oPe +oPe +oPe +oPe +oPe +nVf +qXl +kmI ark aZm bCN @@ -96458,7 +98296,7 @@ aOp bHy aOX bJW -bmi +xDp bjW aOO aOp @@ -96674,36 +98512,36 @@ aaa aaa aaa aaa +aal +aal aaa -aaa -aaa -aaa -anA -anE -aad -bSu -aad -any -amI +qLM +ixd +qYJ +ixd +qYJ +ixd +qYJ +sxJ aaa anX -anX -bcp +kvC +bbD +bzL +bLY +bct bcl -bcn -bcl -bcx -anX +bbF anX acZ aQy btM -btO -atN +cNG +ufN aQw -acZ -axc -axc +oPe +qXl +qXl bPz ceD ceF @@ -96739,12 +98577,12 @@ aaa aaa aaa aaa -aau +aal aaa aaa -aau -aau -aau +aal +aal +aal aaa aQQ aaa @@ -96910,7 +98748,7 @@ bUP bUP aaY abQ -aeZ +oee afb aaZ act @@ -96926,32 +98764,32 @@ aMu aMu bCS aMB -aau -aau -aaa -aau +aal aaa aaa -aau -aau -aaa -bPG -aad -aad -bSu -aad -aad -bPG aaa aaa +aal +aaa +aaa +aal +euD +icc +ycZ +icc +ycZ +icc +aal +aal anX +bcj +bcl +bct +bcn +bct +bcl +bOe anX -anX -bcu -anX -anX -anX -acZ aeG bbG btN @@ -96980,7 +98818,7 @@ aOp bXv bpK big -biz +xrC brC brT big @@ -96992,8 +98830,8 @@ aAc aAc aAc aaa -aau -aau +aal +aal aaa biw bNB @@ -97192,23 +99030,23 @@ alk aRY aSb aSa -bPG -aad -anP -bXM -azT -aad -bPG aaa aaa aaa +aal aaa -bch -bcv -bch +aal aaa -aaa -acZ +aal +anX +anX +bcp +hdH +bcn +bcl +bcx +anX +anX aeR ats bLZ @@ -97217,8 +99055,8 @@ btT acZ cbY awI -btG -btc +fkV +rta aVO aWi aAe @@ -97243,23 +99081,23 @@ brV big aaa aaa -aau -aau +aal +aal aaa aaa aaa biw bNB bix -aau +aal biw bNC bix -aau +aal biw bNC bix -aau +aal aQQ aQQ aQQ @@ -97442,29 +99280,29 @@ alk arg ary arJ -bOu +wkM ast asu alk -aTt +pMU aTu aSa -bPG -aad -aRN -aIs -bYo -aad -bPG -aau +aal aaa -aSa -arN -bci -bgn -bco -bcr -aSa +aaa +aal +aaa +aal +aal +aal +aal +anX +anX +anX +bcu +anX +anX +anX acZ acZ atJ @@ -97474,7 +99312,7 @@ aQv bub aze awO -bna +vmg ark axf aqz @@ -97508,7 +99346,7 @@ aaa biw bNC bix -aau +aal biw bNC bix @@ -97516,10 +99354,10 @@ aaa biw bNC bix -aau +aal aaa aaa -aau +aal aQU aaa aaa @@ -97706,11 +99544,11 @@ alk aRZ bBo aSa -bPL aSa -bRW aSa -bYq +aSa +aSa +aSa aSa bQd aSb @@ -97722,7 +99560,7 @@ ceo btV btV bBU -aTz +ibF acZ acZ atM @@ -97730,8 +99568,8 @@ aQu aQx aze awO -btG -bsP +fkV +hYI awU bfJ aqz @@ -97756,27 +99594,27 @@ brH bsB big aaa -aau +aal biw bNC bix -aau -aau +aal +aal biw bNC bix -aau +aal biw bNC bix -aau +aal biw bNC bix -aau -aau -aau -aau +aal +aal +aal +aal aQQ aaa aaa @@ -97965,9 +99803,9 @@ aSg aSj cad aSj -aTw -boz -bZd +aSj +aSj +aSj cah caj cak @@ -97987,7 +99825,7 @@ arA arA buH btc -bsP +oNF azf azg aqz @@ -98010,15 +99848,15 @@ biu bii boh brI -aau +aal aaa aaa aaa biw bNC bix -aau -aau +aal +aal biw bNC bix @@ -98033,7 +99871,7 @@ aQL bio bio aky -aau +aal aQQ aaa aaa @@ -98204,10 +100042,10 @@ aaZ bsG abO btf -btc -btc +rta +rta bPA -btj +iMs bFt axe arj @@ -98267,10 +100105,10 @@ biu bii brx brJ -aau +aal aaa -aau -aau +aal +aal biw bNC bix @@ -98283,14 +100121,14 @@ aQL biw bNE bix -aau +aal biw bNE bix -aau -aau -aau -aau +aal +aal +aal +aal aQQ aaa aaa @@ -98436,7 +100274,7 @@ agZ bgK agh aKN -bEF +qYj agh bVf bzl @@ -98466,7 +100304,7 @@ brv cet bDp bFu -bte +wlc arA arA arD @@ -98532,19 +100370,19 @@ bio aQL aQL aQL -aau +aal biw bNE bix -aau +aal biw bNE bix -aau +aal biw bNE bix -aau +aal aQQ aQQ aQQ @@ -98711,7 +100549,7 @@ byK bPm aaK aaK -alK +sPB aSy abL aak @@ -98724,10 +100562,10 @@ bDU axu axx btl -btc -btc +rta +rta btm -bte +wlc arA bHg vMB @@ -98780,28 +100618,28 @@ aQI bFS aQK aaa -aau -aau -aau -aau +aal +aal +aal +aal aQL -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal biw bNE bix -aau +aal biw bNE bix -aau +aal biw bNE bix -aau +aal aQQ aaa aaa @@ -98967,7 +100805,7 @@ aar cba aar aYm -aar +aaj aov aTi byM @@ -98985,12 +100823,12 @@ axu axu axx btk -afq +nrD bHh -btc -btc -btc -btc +rta +rta +rta +rta aAA cew btq @@ -99040,17 +100878,17 @@ aaa aaa aaa aaa -aau +aal aQL aal -aau -aau +aal +aal aaa aaa biw bNE bix -aau +aal biw bNF bix @@ -99283,7 +101121,7 @@ aqA aqz aPf aqA -aYH +pNR aQI aQI aQI @@ -99470,7 +101308,7 @@ akP bEe aup bzq -bAl +kfj bAy bAl bBf @@ -99542,7 +101380,7 @@ aPh aqA aYD aYO -bbq +ipB bcO bhu bcO @@ -99746,7 +101584,7 @@ asj bta aup abv -bma +iNo byE alJ bqb @@ -99754,7 +101592,7 @@ bqS btK brd agl -aGG +eXR aKx aKB aiO @@ -99769,7 +101607,7 @@ bCp aCP aED bKq -aMY +nyl aFE aED akr @@ -99799,7 +101637,7 @@ aqA aqA bXY aQK -bYM +nOy aQK aQK bRu @@ -99817,11 +101655,11 @@ biq biq biq biq -aau +aal aQQ aQQ aQQ -aau +aal aQQ aaa aaa @@ -99987,7 +101825,7 @@ bXE aup aup aup -aPa +eNp bVC bmD bBb @@ -100050,13 +101888,13 @@ biP bjy aZJ akt -bFO +naE aqA bZo aQI bMp aQI -bbr +uoF aQK bMw aQI @@ -100066,14 +101904,14 @@ bSz aQK aaa aaa -aau -aau -aau +aal +aal +aal aQL -aau -aau +aal +aal aaa -aau +aal aaa aQQ aaa @@ -100260,7 +102098,7 @@ asj bta aup abv -aLN +hlK byN abJ abZ @@ -100302,7 +102140,7 @@ aPo bhm aWL biG -bLm +mHS bhr bFF bFJ @@ -100313,7 +102151,7 @@ aYY aYY aZc aYC -bGh +dYW aQK cat bSC @@ -100529,7 +102367,7 @@ aED aED aED aiO -ajz +wwX buM buP aiP @@ -100558,7 +102396,7 @@ aWL aWL bhs ate -aOE +uwG aDV aDV bFG @@ -100570,7 +102408,7 @@ aDV bMo aQI aQI -bGi +fid aQK aQK aQK @@ -100588,7 +102426,7 @@ bNA bNA bNA bND -aau +aal aQQ aaa aaa @@ -100737,7 +102575,7 @@ aaa aaa aaa aQQ -aau +aal aQQ aQQ aQQ @@ -100779,14 +102617,14 @@ aUc aPQ arO aiV -aDf +jpL ahE aiT ane aBc aFb aiO -bui +oBZ buN buS buT @@ -100827,13 +102665,13 @@ aDV aDV aDV bQu -bGj -bYN -bGc -bGc -bGc -bGc -bGk +mLl +tfI +oqF +oqF +oqF +oqF +xoZ aQK aaa biq @@ -100845,7 +102683,7 @@ biq biq biq biq -aau +aal aQQ aaa aaa @@ -100996,11 +102834,11 @@ aaa aQQ aaa aaa -aau -aau +aal +aal aaa -aau -aau +aal +aal aaa aaa aQQ @@ -101031,7 +102869,7 @@ aRV bta aup aiV -alP +vHF alP aPT anR @@ -101057,7 +102895,7 @@ bKQ bKY aCQ aED -ayE +vIe alp aEI aVP @@ -101080,7 +102918,7 @@ baD aYW bFR bFV -bFW +grn bFX aDV bQA @@ -101090,16 +102928,16 @@ aQI bYB aQI aQI -bGi +fid aQK aaa aaa -aau -aau -aau +aal +aal +aal aQL -aau -aau +aal +aal aaa aaa aaa @@ -101255,17 +103093,17 @@ aaa bgD bMQ bgE -aau +aal bgD bMQ bgE aaa -aau -aau +aal +aal aaa aaa aaa -aau +aal aaa aaa aQQ @@ -101291,7 +103129,7 @@ aiV aBM bEW bFn -bFQ +hYL aiV arf bHM @@ -101299,7 +103137,7 @@ avJ aED aED bJb -aEu +hpm aiO aiO aiO @@ -101321,7 +103159,7 @@ anZ anZ aln anZ -bRq +oBN aqA aFY aZH @@ -101347,7 +103185,7 @@ acQ acQ acQ bYB -bGi +fid aQK aaa bip @@ -101508,7 +103346,7 @@ aaa aaa aaa aQQ -aau +aal bgD bMU bgE @@ -101525,8 +103363,8 @@ bgD bMQ bgE aaa -aau -aau +aal +aal aaa aaa aaa @@ -101543,7 +103381,7 @@ asj bQO aRV bta -abt +aRW aiV bfD alP @@ -101561,7 +103399,7 @@ bFA bIm bHz aFd -bKn +hhd bFA bKJ bKv @@ -101599,12 +103437,12 @@ bFZ bGa bGb baS -akf +eqn bRA bJY acQ aQI -bGi +fid aTE aaa bNy @@ -101616,7 +103454,7 @@ bNA bNA bNA bND -aau +aal aQQ aaa aaa @@ -101773,7 +103611,7 @@ aaa bgD bMU bgE -aau +aal bgD bMU bgE @@ -101794,7 +103632,7 @@ aaa awc azI aFz -bse +mtv aNV asj bKz @@ -101808,7 +103646,7 @@ aPY arP arR aea -ahD +wFi aAO aea agf @@ -101861,7 +103699,7 @@ aEZ aOZ acQ akK -bGi +fid aTF aaa biq @@ -101873,7 +103711,7 @@ biq biq biq biq -aau +aal aQQ aaa aaa @@ -102020,17 +103858,17 @@ aaa aaa aaa aQQ -aau -aau -aau +aal +aal +aal bgD bMU bgE -aau +aal bgD bMU bgE -aau +aal bgD bMU bgE @@ -102042,7 +103880,7 @@ aaa bgD bMU bgE -aau +aal aaa aaa aaa @@ -102065,7 +103903,7 @@ bys arP arS aea -ahZ +vqS bHU aea ahy @@ -102118,13 +103956,13 @@ akb bnz acQ bQv -bYT +leE aTF aaa -aau +aal aaa aaa -aau +aal aQL aal aaa @@ -102277,13 +104115,13 @@ aaa aaa aaa aQQ -aau +aal aaL awB awB aaS aaS -auh +aug aaS aaS aaS @@ -102291,7 +104129,7 @@ aaS bgD bMU bgE -aau +aal bgD bMU bgE @@ -102301,11 +104139,11 @@ bMU bgE aaa aaa -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal bha asj buA @@ -102338,11 +104176,11 @@ bZG aEH bKb aCS -bKU +gdD aFq are aCS -aWo +eZi aqx aqy biS @@ -102375,7 +104213,7 @@ aFa aPm acQ arc -bGi +fid aTF aaa bip @@ -102534,13 +104372,13 @@ aaa aaa aaa aQU -aau -aau -aau +aal +aal +aal bgD bMV bgE -aau +aal bgD bMV bgE @@ -102556,9 +104394,9 @@ aaa bgD bNa bgE -aau -aau -aau +aal +aal +aal bhc awB awB @@ -102626,13 +104464,13 @@ aOM aWQ aWU baT -aWZ +lFx bgF bgH bgT acQ aQI -bGi +fid aTG aaa bNy @@ -102801,13 +104639,13 @@ aaa bgD bMV bgE -aau +aal bgD bMV bgE -aau -aau -aau +aal +aal +aal aaS aQP bgZ @@ -102817,10 +104655,10 @@ awB awB awB bhd -aau -aau -aau -aau +aal +aal +aal +aal asj bLk aup @@ -102830,7 +104668,7 @@ aup aup bQD aiV -alP +vHF alP bAp anR @@ -102874,7 +104712,7 @@ aGa aEh aEn aDV -aWG +edu aYT aOm aOx @@ -102889,7 +104727,7 @@ acQ acQ acQ aQI -bGi +fid aQK aaa biq @@ -102901,7 +104739,7 @@ biq biq biq biq -aau +aal aQQ aaa aaa @@ -103050,7 +104888,7 @@ aaa aaa aaa aQQ -aau +aal bgD bMV bgE @@ -103064,17 +104902,17 @@ bMV bgE aaa aaa -aau -aau -aau +aal +aal +aal bha -aau -aau -aau -aau -aau -aau -aau +aal +aal +aal +aal +aal +aal +aal aaa aaa aaa @@ -103108,7 +104946,7 @@ aiW ahz bKy aCS -amj +cPq bKV aFu asi @@ -103120,10 +104958,10 @@ aEl asU biL biV -cdS +kDh arT akC -aZI +nkG aDV aEm aEh @@ -103131,7 +104969,7 @@ aGa aEh aEn aDV -aOe +hDU aYU aYX aYX @@ -103146,16 +104984,16 @@ aQI bYB aQI aQI -bGi +fid aQK aaa aaa -aau -aau -aau +aal +aal +aal aQL -aau -aau +aal +aal aaa aaa aaa @@ -103307,15 +105145,15 @@ aaa aaa aaa aQQ -aau +aal bgD bMW bgE -aau +aal bgD bMW bgE -aau +aal bgD bMV bgE @@ -103396,22 +105234,22 @@ aZa aDV bGf aDV -bRe -bGc -bGc -bGc -bGc -bYF -bLO -bZR +pxQ +oqF +oqF +oqF +oqF +unF +dgr +wia aQK aaa aQQ aQQ aQQ -aau +aal aQL -aau +aal aQQ aQQ aQQ @@ -103566,17 +105404,17 @@ aaa aQQ aaa aaa -aau -aau +aal +aal aaa -aau -aau +aal +aal aaa aaa bgD bMW bgE -aau +aal bMX bMY bMY @@ -103586,7 +105424,7 @@ bMZ bMZ bMZ bNx -aau +aal aQQ aaa aaa @@ -103601,13 +105439,13 @@ asj aaa aaa aaa -aau +aal aaa afA -aau +aal aaa aaa -aau +aal aaa aED ajI @@ -103653,7 +105491,7 @@ baM aDV bQw aDV -bGi +cPK bYB aQK aQK @@ -103666,9 +105504,9 @@ aaa aaa aaa aQQ -aau -aau -aau +aal +aal +aal aQQ aaa aaa @@ -103831,8 +105669,8 @@ aQQ aQQ aaa aaa -aau -aau +aal +aal aaa bgV bgV @@ -103858,14 +105696,14 @@ asj aaa aaa aaa -aau +aal aaa aaa -aau +aal aaa avP avP -aau +aal bMK ajJ bCt @@ -104091,14 +105929,14 @@ aQQ aQQ aQQ aaa -aau +aal aaa aaa -aau +aal aaS -aau +aal aaa -aau +aal aaa aaa aQQ @@ -104125,15 +105963,15 @@ avP avP aaa aaa -aau +aal aaa -aau +aal aaa aaa -aau +aal aaa aaa -aau +aal aaa aaa aaa @@ -104146,7 +105984,7 @@ alG biW akN aEK -aMK +vjd aqR bKi arT @@ -104357,7 +106195,7 @@ bgU bgU bgU bgU -aau +aal aQQ aaa aaa @@ -104604,7 +106442,7 @@ aaa aaa aaa aQQ -aau +aal bMX bMY bMY @@ -104614,7 +106452,7 @@ bMZ bMZ bMZ bNx -aau +aal aQQ aaa aaa @@ -104656,7 +106494,7 @@ aiA aOL aiB aja -ajU +wCc aGc akc aki @@ -104861,7 +106699,7 @@ aaa aaa aQQ aQQ -aau +aal bgV bgV bgV @@ -105120,13 +106958,13 @@ aQQ aaa aaa aaa -aau +aal aaa -aau +aal aaS -aau +aal aaa -aau +aal aaa aaa aQU @@ -105172,7 +107010,7 @@ ajY bLq bjQ aZv -ajY +tFw bLq bkA alg @@ -105374,15 +107212,15 @@ aaa aaa aaa aQQ -aau +aal bgU bgU bgU bgU aaS aaS -aau -aau +aal +aal aaa aaa aQQ @@ -105631,7 +107469,7 @@ aaa aaa aaa aQQ -aau +aal bMX bMY bMY @@ -105641,7 +107479,7 @@ bgU bgU bgU bgU -aau +aal aQQ aaa aaa @@ -105898,7 +107736,7 @@ bMZ bMZ bMZ bNx -aau +aal aQQ aaa aaa @@ -106147,9 +107985,9 @@ aaa aQQ aaa aaa -aau +aal aaa -aau +aal aaS bgV bgV @@ -106207,7 +108045,7 @@ bkI aiN aiN aDQ -aWr +oKN aDP caI aFX @@ -106402,14 +108240,14 @@ aaa aaa aaa aQQ -aau +aal bgU bgU bgU bgU aaS -aau -aau +aal +aal aaa aaa aaa @@ -106457,7 +108295,7 @@ aqO blv ajB anY -ajB +dIr blv apN aZD @@ -106465,7 +108303,7 @@ arp aCA aDQ aZr -aac +mSf baz aFX bTV @@ -106659,7 +108497,7 @@ aaa aaa aaa aQQ -aau +aal bMX bMY bMY @@ -106916,7 +108754,7 @@ aaa aaa aaa aQU -aau +aal bgV bgV bgV @@ -106926,7 +108764,7 @@ bMZ bMZ bMZ bNx -aau +aal aQQ aaa aaa @@ -107177,7 +109015,7 @@ aaa aaa aaa aaa -aau +aal aaS bgV bgV @@ -107430,16 +109268,16 @@ aaa aaa aaa aQQ -aau +aal bgU bgU bgU bgU aaS -aau +aal aaa aaa -aau +aal aaa aQQ aaa @@ -107477,7 +109315,7 @@ aaa aaa aaa aaa -aau +aal aij acU ajB @@ -107697,7 +109535,7 @@ bgU bgU bgU bgU -aau +aal aQQ aaa aaa @@ -107734,7 +109572,7 @@ aaa aaa aaa aaa -aau +aal aij ajF ajR @@ -107954,7 +109792,7 @@ bMZ bMZ bMZ bNx -aau +aal aQQ aaa aaa @@ -108203,15 +110041,15 @@ aaa aQQ aaa aaa -aau +aal aaa -aau +aal aaS bgV bgV bgV bgV -aau +aal aQQ aaa aaa @@ -108249,7 +110087,7 @@ aaa aaa aaa aaa -aau +aal aij ajG ajG @@ -108261,11 +110099,11 @@ ajG ajB aUj aij -aau +aal aaa -aau -aau -aau +aal +aal +aal aaa aaa aaa @@ -108462,14 +110300,14 @@ aaa aaa aaa aaa -aau +aal aaS -aau +aal aaa -aau -aau +aal +aal aaa -aau +aal aaa aaa aaa @@ -108506,7 +110344,7 @@ aaa aaa aaa aaa -aau +aal aij bjv bjE @@ -108518,7 +110356,7 @@ aDT aOW aUr aij -aau +aal aaa aaa aaa @@ -108719,9 +110557,9 @@ aQQ aQQ aQQ aQQ -aau -aau -aau +aal +aal +aal aQQ aQQ aQQ @@ -109022,15 +110860,15 @@ aaa aaa aaa aaa -aau +aal aaa aaa -aau -aau -aau +aal +aal +aal aaa -aau -aau +aal +aal aaa aaa aaa diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 11546d788fe..764e2035073 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -17,6 +17,10 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/plating, /area/maintenance/starboard) +"aae" = ( +/obj/effect/mapping_helpers/dead_body_placer, +/turf/open/floor/plasteel/dark, +/area/medical/morgue) "aaf" = ( /obj/structure/lattice, /turf/open/space, @@ -327,6 +331,22 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/security/prison) +"aaU" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/structure/sign/warning/deathsposal{ + pixel_y = 32 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "aaV" = ( /obj/effect/decal/cleanable/cobweb, /obj/effect/decal/cleanable/dirt, @@ -334,6 +354,11 @@ /area/janitor) "aaW" = ( /obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/obj/structure/sign/warning/nosmoking{ + pixel_x = -28 + }, +/obj/structure/closet/radiation, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) "aaX" = ( @@ -392,7 +417,7 @@ areastring = "/area/maintenance/disposal/incinerator"; dir = 1; name = "Incinerator APC"; - pixel_y = 25 + pixel_y = 23 }, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) @@ -1443,7 +1468,7 @@ dir = 1; name = "Prisoner Education Chamber APC"; areastring = "/area/security/execution/education"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -1579,7 +1604,7 @@ /area/security/execution/education) "adn" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -2234,6 +2259,13 @@ }, /turf/open/floor/plating, /area/crew_quarters/fitness/recreation) +"aeD" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/obj/structure/window/reinforced, +/obj/structure/closet/secure_closet/atmospherics, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "aeE" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2547,7 +2579,7 @@ name = "Prison Wing APC"; areastring = "/area/security/prison"; pixel_x = 1; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -3220,12 +3252,12 @@ /area/ai_monitored/security/armory) "agb" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/e_gun/advtaser, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, @@ -3465,7 +3497,7 @@ dir = 1; name = "Recreation Area APC"; areastring = "/area/crew_quarters/fitness/recreation"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -4107,7 +4139,7 @@ name = "Armory APC"; areastring = "/area/ai_monitored/security/armory"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -4845,6 +4877,11 @@ }, /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness/recreation) +"aiT" = ( +/obj/effect/landmark/start/atmospheric_technician, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "aiU" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/effect/turf_decal/tile/neutral{ @@ -6219,7 +6256,6 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/fitness/recreation) "alk" = ( -/obj/machinery/vr_sleeper, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -6770,7 +6806,7 @@ dir = 8; name = "Brig Control APC"; areastring = "/area/security/warden"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable/yellow, /turf/open/floor/plasteel/showroomfloor, @@ -8206,7 +8242,7 @@ dir = 2; name = "Disposal APC"; areastring = "/area/maintenance/disposal"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/effect/turf_decal/stripes/line{ @@ -8792,6 +8828,13 @@ /obj/item/assembly/flash/handheld, /turf/open/floor/plasteel, /area/security/main) +"apX" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/reagent_dispensers/fueltank, +/obj/item/storage/toolbox/emergency, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/turf/open/floor/plasteel, +/area/maintenance/disposal/incinerator) "apY" = ( /obj/structure/table, /obj/item/folder/red, @@ -9367,7 +9410,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "arg" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/warden, @@ -9987,7 +10030,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "aso" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/dark, @@ -10006,7 +10049,7 @@ /area/security/warden) "asq" = ( /obj/effect/landmark/start/warden, -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/cable/yellow{ icon_state = "1-4" @@ -11275,6 +11318,17 @@ }, /turf/open/floor/plating, /area/maintenance/port/fore) +"auQ" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/maintenance{ + name = "Incinerator Access"; + req_access_txt = "24" + }, +/turf/open/floor/plating, +/area/maintenance/starboard) "auU" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -12497,7 +12551,7 @@ name = "Brig APC"; areastring = "/area/security/brig"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/machinery/button/flasher{ @@ -13019,7 +13073,7 @@ dir = 1; name = "Vault APC"; areastring = "/area/security/nuke_storage"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -13451,7 +13505,7 @@ dir = 1; name = "Mining APC"; areastring = "/area/quartermaster/miningoffice"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -13875,7 +13929,7 @@ dir = 1; name = "Fore Maintenance APC"; areastring = "/area/maintenance/fore"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plating, /area/maintenance/fore) @@ -14529,7 +14583,7 @@ /area/security/detectives_office) "aBo" = ( /obj/effect/landmark/start/detective, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -14639,7 +14693,7 @@ dir = 1; name = "Dormitories APC"; areastring = "/area/crew_quarters/dorms"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -14974,7 +15028,7 @@ /obj/item/storage/backpack/duffelbag/syndie/hitman, /obj/item/card/id/silver/reaper, /obj/item/lazarus_injector, -/obj/item/gun/energy/e_gun/advtaser, +/obj/item/gun/energy/disabler, /obj/item/gun/ballistic/revolver/russian, /obj/item/ammo_box/a357, /obj/item/clothing/neck/stethoscope, @@ -15130,7 +15184,7 @@ dir = 8; name = "Detective APC"; areastring = "/area/security/detectives_office"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -16118,7 +16172,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningoffice) "aEw" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/shaft_miner, @@ -16195,7 +16249,7 @@ dir = 4; name = "Warehouse APC"; areastring = "/area/quartermaster/warehouse"; - pixel_x = 27 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -16385,7 +16439,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "aEW" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/structure/cable/yellow{ @@ -16464,7 +16518,7 @@ dir = 2; name = "Restrooms APC"; areastring = "/area/crew_quarters/toilet/restrooms"; - pixel_y = -26 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -17039,7 +17093,7 @@ dir = 2; name = "Fore Primary Hallway APC"; areastring = "/area/hallway/primary/fore"; - pixel_y = -27 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/machinery/light, @@ -17730,7 +17784,7 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/fore) "aHv" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel/dark, /area/hallway/primary/fore) "aHw" = ( @@ -18193,7 +18247,7 @@ dir = 2; name = "Storage Wing APC"; areastring = "/area/construction/storage_wing"; - pixel_y = -27 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -18534,7 +18588,7 @@ dir = 1; name = "Law Office APC"; areastring = "/area/lawoffice"; - pixel_y = 24 + pixel_y = 23 }, /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-21" @@ -18988,7 +19042,7 @@ /area/security/courtroom) "aKf" = ( /obj/effect/landmark/start/lawyer, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/item/radio/intercom{ @@ -20624,7 +20678,7 @@ dir = 1; name = "Quartermaster's Office APC"; areastring = "/area/quartermaster/qm"; - pixel_y = 30 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -21153,7 +21207,7 @@ dir = 4; name = "Garden APC"; areastring = "/area/hydroponics/garden"; - pixel_x = 27; + pixel_x = 24; pixel_y = 2 }, /obj/structure/cable/yellow{ @@ -21181,7 +21235,7 @@ dir = 8; name = "Engine Room APC"; areastring = "/area/engine/engineering"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -21362,7 +21416,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel, @@ -22004,7 +22058,7 @@ dir = 2; name = "Upload APC"; areastring = "/area/ai_monitored/turret_protected/ai_upload"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -22573,7 +22627,7 @@ /area/quartermaster/storage) "aRI" = ( /obj/structure/disposalpipe/segment, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel, @@ -22610,7 +22664,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "aRL" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -23080,7 +23134,7 @@ dir = 2; name = "Auxillary Base Construction APC"; areastring = "/area/construction/mining/aux_base"; - pixel_y = -24 + pixel_y = -23 }, /obj/effect/turf_decal/tile/yellow, /obj/effect/turf_decal/tile/yellow{ @@ -23422,7 +23476,7 @@ name = "Locker Room APC"; areastring = "/area/crew_quarters/locker"; pixel_x = -1; - pixel_y = -26 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/effect/turf_decal/tile/neutral{ @@ -23834,7 +23888,7 @@ name = "Security Post - Cargo Bay APC"; areastring = "/area/security/checkpoint/supply"; pixel_x = 1; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -24000,7 +24054,7 @@ dir = 2; name = "AI Upload Access APC"; areastring = "/area/ai_monitored/turret_protected/ai_upload_foyer"; - pixel_y = -27 + pixel_y = -23 }, /obj/machinery/light/small{ dir = 8 @@ -24130,7 +24184,7 @@ name = "Courtroom APC"; areastring = "/area/security/courtroom"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -24371,7 +24425,7 @@ /obj/machinery/requests_console{ announcementConsole = 0; department = "Engineering"; - departmentType = 4; + departmentType = 3; name = "Engineering RC" }, /turf/closed/wall, @@ -24699,7 +24753,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aVP" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/effect/landmark/start/depsec/supply, /turf/open/floor/plasteel, @@ -25113,7 +25167,7 @@ /obj/machinery/requests_console{ announcementConsole = 1; department = "Chief Engineer's Desk"; - departmentType = 3; + departmentType = 4; name = "Chief Engineer RC"; pixel_y = 32 }, @@ -26080,7 +26134,7 @@ dir = 4; name = "CE Office APC"; areastring = "/area/crew_quarters/heads/chief"; - pixel_x = 28 + pixel_x = 24 }, /obj/structure/cable/yellow, /obj/structure/cable/yellow{ @@ -26589,7 +26643,7 @@ dir = 8; name = "Tech Storage APC"; areastring = "/area/storage/tech"; - pixel_x = -27 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -27226,7 +27280,7 @@ name = "Cargo Bay APC"; areastring = "/area/quartermaster/storage"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/machinery/light, @@ -27655,7 +27709,7 @@ dir = 1; name = "Auxiliary Tool Storage APC"; areastring = "/area/storage/tools"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -27993,7 +28047,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bbC" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/depsec/engineering, @@ -28139,7 +28193,7 @@ dir = 8; name = "Cargo Office APC"; areastring = "/area/quartermaster/office"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -28192,7 +28246,7 @@ /area/quartermaster/office) "bbU" = ( /obj/effect/landmark/start/cargo_technician, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/brown, @@ -28595,7 +28649,7 @@ dir = 8; name = "Engineering Security APC"; areastring = "/area/security/checkpoint/engineering"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -28704,7 +28758,7 @@ dir = 1; name = "Customs APC"; areastring = "/area/security/checkpoint/customs"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -29570,7 +29624,7 @@ dir = 1; name = "AI Chamber APC"; areastring = "/area/ai_monitored/turret_protected/ai"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-4" @@ -29659,7 +29713,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "beO" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/structure/cable/yellow{ icon_state = "4-8" }, @@ -30866,7 +30920,7 @@ dir = 4; name = "Central Maintenance APC"; areastring = "/area/maintenance/central"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow, /turf/open/floor/plating, @@ -31287,7 +31341,7 @@ dir = 1; name = "Starboard Hallway APC"; areastring = "/area/hallway/primary/starboard"; - pixel_y = 26 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -31536,7 +31590,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "bin" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/status_display/ai{ @@ -31570,7 +31624,7 @@ /turf/open/floor/plating, /area/maintenance/starboard/fore) "bir" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/status_display/evac{ @@ -31697,7 +31751,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "biI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/structure/cable/yellow{ @@ -31735,7 +31789,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "biL" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel, @@ -31836,7 +31890,7 @@ areastring = "/area/vacant_room/commissary"; dir = 4; name = "Vacant Commissary APC"; - pixel_x = 27; + pixel_x = 24; pixel_y = 2 }, /obj/structure/cable/yellow, @@ -31900,13 +31954,13 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bja" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/dark, /area/bridge) "bjb" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/dark, @@ -31915,7 +31969,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bjd" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/cable/yellow{ @@ -31924,7 +31978,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "bje" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/dark, @@ -32478,7 +32532,7 @@ /area/quartermaster/sorting) "bki" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/cargo_technician, /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -32570,7 +32624,7 @@ dir = 4; name = "Delivery Office APC"; areastring = "/area/quartermaster/sorting"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -33878,7 +33932,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/extinguisher_cabinet{ @@ -33980,7 +34034,7 @@ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance{ - req_one_access_txt = "12;25;46" + req_one_access_txt = "12;22;25;37;38;46" }, /turf/open/floor/plating, /area/maintenance/starboard) @@ -34274,7 +34328,6 @@ /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/aisat_interior"; enabled = 1; - icon_state = "control_standby"; name = "Antechamber Turret Control"; pixel_x = 30; req_access_txt = "65" @@ -34343,7 +34396,7 @@ dir = 4; name = "MiniSat Antechamber APC"; areastring = "/area/ai_monitored/turret_protected/aisat_interior"; - pixel_x = 29 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -34588,7 +34641,7 @@ name = "Port Hallway APC"; areastring = "/area/hallway/primary/port"; pixel_x = -1; - pixel_y = 26 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -34719,7 +34772,7 @@ /area/crew_quarters/heads/hop) "bon" = ( /obj/effect/landmark/start/head_of_personnel, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/structure/cable/yellow{ @@ -34741,7 +34794,7 @@ dir = 8; name = "Bridge APC"; areastring = "/area/bridge"; - pixel_x = -27 + pixel_x = -25 }, /obj/structure/cable/yellow, /obj/machinery/camera{ @@ -35157,10 +35210,10 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bpl" = ( -/obj/structure/cable{ +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/structure/cable/cyan{ icon_state = "0-4" }, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/engine/break_room) "bpm" = ( @@ -35168,10 +35221,10 @@ id = "transittube"; name = "Transit Tube Blast Door" }, -/obj/structure/cable{ +/obj/effect/turf_decal/delivery, +/obj/structure/cable/cyan{ icon_state = "4-8" }, -/obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/engine/break_room) "bpn" = ( @@ -35181,7 +35234,7 @@ /turf/open/floor/plasteel/dark, /area/aisat) "bpp" = ( -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -35242,29 +35295,18 @@ dir = 4 }, /obj/structure/lattice/catwalk, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "4-8" }, /obj/structure/transit_tube/horizontal, /turf/open/space, /area/space/nearstation) -"bpx" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/transit_tube/crossing/horizontal, -/turf/open/space, -/area/space/nearstation) "bpy" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "4-8" }, /obj/structure/transit_tube/horizontal, @@ -35275,12 +35317,12 @@ dir = 4 }, /obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/structure/transit_tube/junction/flipped{ dir = 8 }, +/obj/structure/cable/cyan{ + icon_state = "4-8" + }, /turf/open/space, /area/space/nearstation) "bpA" = ( @@ -35288,7 +35330,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "4-8" }, /turf/open/space, @@ -35301,7 +35343,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "4-8" }, /turf/open/space, @@ -35313,19 +35355,19 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/structure/transit_tube/station{ dir = 4 }, +/obj/structure/cable/cyan{ + icon_state = "4-8" + }, /turf/open/floor/plasteel/dark, /area/aisat) "bpD" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -36068,7 +36110,7 @@ dir = 8; name = "Captain's Quarters APC"; areastring = "/area/crew_quarters/heads/captain/private"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -36438,18 +36480,18 @@ name = "MiniSat Access"; req_one_access_txt = "32;19" }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, /area/engine/break_room) "brL" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, +/obj/structure/cable/cyan{ + icon_state = "4-8" + }, /turf/open/floor/plasteel/dark, /area/engine/break_room) "brM" = ( @@ -36457,24 +36499,21 @@ dir = 4 }, /obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/structure/window/reinforced{ dir = 8 }, /obj/structure/transit_tube/curved{ dir = 4 }, +/obj/structure/cable/cyan{ + icon_state = "4-8" + }, /turf/open/space, /area/space/nearstation) "brN" = ( /obj/structure/window/reinforced{ dir = 4 }, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/structure/table/glass, /obj/item/phone{ pixel_x = -3; @@ -36487,6 +36526,9 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, +/obj/structure/cable/cyan{ + icon_state = "4-8" + }, /turf/open/floor/plasteel/dark, /area/engine/break_room) "brO" = ( @@ -36521,7 +36563,7 @@ dir = 2; name = "MiniSat Exterior APC"; areastring = "/area/aisat"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -36635,7 +36677,7 @@ dir = 2; name = "MiniSat Foyer APC"; areastring = "/area/ai_monitored/turret_protected/aisat/foyer"; - pixel_y = -29 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/machinery/camera/motion{ @@ -37492,7 +37534,7 @@ /obj/item/radio/intercom{ pixel_y = -28 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/blue, @@ -37533,7 +37575,7 @@ dir = 1; name = "Head of Personnel APC"; areastring = "/area/crew_quarters/heads/hop"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/carpet, /area/crew_quarters/heads/hop) @@ -38133,7 +38175,7 @@ dir = 4 }, /obj/machinery/door/airlock/maintenance{ - req_one_access_txt = "12;25;46" + req_one_access_txt = "12;22;25;37;38;46" }, /turf/open/floor/plating, /area/maintenance/starboard) @@ -38752,16 +38794,16 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "bwn" = ( -/obj/machinery/computer/card{ - dir = 1 - }, /obj/structure/cable/yellow{ icon_state = "1-2" }, +/obj/machinery/computer/card{ + dir = 4 + }, /turf/open/floor/wood, /area/crew_quarters/heads/hop) "bwo" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/head_of_personnel, /obj/structure/cable/yellow{ icon_state = "1-2" @@ -39124,7 +39166,7 @@ dir = 1; name = "Bar APC"; areastring = "/area/crew_quarters/bar"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -39310,7 +39352,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/grimy, @@ -39335,7 +39377,7 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bxr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/grimy, @@ -39650,7 +39692,7 @@ dir = 2; name = "Port Maintenance APC"; areastring = "/area/maintenance/port"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -39678,7 +39720,7 @@ /turf/open/floor/wood, /area/library) "bxV" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/librarian, @@ -40029,7 +40071,7 @@ dir = 1; name = "Theatre APC"; areastring = "/area/crew_quarters/theatre"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -40064,7 +40106,7 @@ dir = 2; name = "MiniSat Maint APC"; areastring = "/area/ai_monitored/storage/satellite"; - pixel_y = -26 + pixel_y = -23 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -40208,7 +40250,7 @@ dir = 1; name = "Atmospherics APC"; areastring = "/area/engine/atmos"; - pixel_y = 28 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -40393,7 +40435,7 @@ /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bzo" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/grimy, @@ -40434,7 +40476,7 @@ /obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel/grimy, /area/tcommsat/computer) "bzt" = ( @@ -40442,7 +40484,7 @@ dir = 4; name = "Telecomms Control Room APC"; areastring = "/area/tcommsat/computer"; - pixel_x = 26 + pixel_x = 24 }, /obj/machinery/computer/telecomms/server{ dir = 8; @@ -40983,7 +41025,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bAE" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/atmospheric_technician, @@ -40995,7 +41037,7 @@ }, /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = 30 }, @@ -41303,7 +41345,7 @@ /turf/open/floor/wood, /area/library) "bBs" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/wood, @@ -41973,7 +42015,7 @@ /turf/open/floor/wood, /area/vacant_room/office) "bCN" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/wood, @@ -42001,7 +42043,7 @@ dir = 2; name = "Auxiliary Restrooms APC"; areastring = "/area/crew_quarters/toilet/auxiliary"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/effect/decal/cleanable/dirt, @@ -42239,7 +42281,7 @@ dir = 1; name = "Command Hallway APC"; areastring = "/area/hallway/secondary/command"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -44796,7 +44838,7 @@ dir = 4; name = "Gateway APC"; areastring = "/area/gateway"; - pixel_x = 28 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -45150,7 +45192,7 @@ /turf/closed/wall/r_wall, /area/space/nearstation) "bJg" = ( -/obj/machinery/telecomms/message_server, +/obj/machinery/telecomms/message_server/preset, /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "bJh" = ( @@ -45274,7 +45316,7 @@ /turf/open/floor/carpet, /area/vacant_room/office) "bJw" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/carpet, @@ -45315,7 +45357,7 @@ /area/library) "bJB" = ( /obj/effect/landmark/start/librarian, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/wood, @@ -46147,7 +46189,7 @@ dir = 8; name = "E.V.A. Storage APC"; areastring = "/area/ai_monitored/storage/eva"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -46722,7 +46764,7 @@ dir = 4; name = "Telecomms Server Room APC"; areastring = "/area/tcommsat/server"; - pixel_x = 25 + pixel_x = 24 }, /obj/machinery/light/small{ dir = 4 @@ -46839,7 +46881,7 @@ /turf/open/floor/plasteel/white/corner, /area/hallway/secondary/entry) "bMC" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/vacant_room/office) "bMD" = ( @@ -47453,7 +47495,7 @@ dir = 8; name = "Telecomms Storage APC"; areastring = "/area/storage/tcom"; - pixel_x = -28 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -47852,7 +47894,7 @@ dir = 4; name = "Nanotrasen Corporate Showroom APC"; areastring = "/area/bridge/showroom/corporate"; - pixel_x = 28 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "1-8" @@ -48965,7 +49007,7 @@ /turf/open/floor/wood, /area/library) "bRi" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/library) "bRj" = ( @@ -49330,7 +49372,7 @@ dir = 2; name = "Kitchen APC"; areastring = "/area/crew_quarters/kitchen"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /turf/open/floor/plasteel/cafeteria{ @@ -49707,7 +49749,7 @@ /turf/open/floor/wood, /area/library) "bSy" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -49905,7 +49947,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/dark/visible{ - icon_state = "manifold-2"; dir = 8 }, /turf/open/floor/plasteel/kitchen_coldroom, @@ -49969,7 +50010,7 @@ name = "Starboard Maintenance APC"; areastring = "/area/maintenance/starboard"; pixel_x = -1; - pixel_y = 26 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -50024,7 +50065,7 @@ "bTj" = ( /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = 30 }, @@ -50116,7 +50157,7 @@ /turf/open/floor/wood, /area/library) "bTx" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/airalarm{ @@ -50351,7 +50392,7 @@ dir = 1; name = "Central Primary Hallway APC"; areastring = "/area/hallway/primary/central"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -50776,7 +50817,7 @@ dir = 8; name = "Port Quarter Solar APC"; areastring = "/area/maintenance/solars/port/aft"; - pixel_x = -26; + pixel_x = -25; pixel_y = 3 }, /obj/structure/cable/yellow{ @@ -51146,15 +51187,15 @@ /turf/open/floor/plasteel, /area/hydroponics) "bVx" = ( -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 10 - }, /obj/effect/turf_decal/tile/green{ dir = 1 }, /obj/effect/turf_decal/tile/green{ dir = 4 }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 1 + }, /turf/open/floor/plasteel, /area/hydroponics) "bVy" = ( @@ -51179,7 +51220,7 @@ /obj/machinery/door/airlock{ name = "Service Hall"; req_access_txt = "null"; - req_one_access_txt = "25;26;35;28" + req_one_access_txt = "25;26;35;28;22;37;46;38" }, /obj/structure/cable/yellow{ icon_state = "1-2" @@ -51833,7 +51874,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/botanist, @@ -52514,6 +52555,7 @@ /obj/effect/turf_decal/tile/green{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/hydroponics) "bYl" = ( @@ -52892,7 +52934,7 @@ dir = 8; name = "Medical Security Checkpoint APC"; areastring = "/area/security/checkpoint/medical"; - pixel_x = -24 + pixel_x = -25 }, /obj/machinery/airalarm{ pixel_y = 28 @@ -53153,7 +53195,7 @@ /obj/machinery/door/airlock{ name = "Service Hall"; req_access_txt = "null"; - req_one_access_txt = "25;26;35;28" + req_one_access_txt = "25;26;35;28;22;37;46;38" }, /turf/open/floor/plating, /area/maintenance/starboard) @@ -53167,17 +53209,6 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/closed/wall, /area/maintenance/disposal/incinerator) -"bZD" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Incinerator Access"; - req_access_txt = "12" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating, -/area/maintenance/starboard) "bZE" = ( /turf/closed/wall, /area/maintenance/disposal/incinerator) @@ -53595,17 +53626,6 @@ }, /turf/open/floor/plasteel/white, /area/science/research) -"cau" = ( -/obj/structure/table, -/obj/item/paper/pamphlet/gateway, -/obj/effect/turf_decal/tile/purple{ - dir = 1 - }, -/obj/effect/turf_decal/tile/purple{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/science/research) "cav" = ( /obj/structure/chair, /obj/effect/landmark/start/assistant, @@ -54002,18 +54022,6 @@ }, /turf/open/floor/plasteel, /area/maintenance/disposal/incinerator) -"caZ" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/obj/structure/sign/warning/deathsposal{ - pixel_y = 32 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cba" = ( /obj/machinery/power/smes{ capacity = 9e+006; @@ -54540,7 +54548,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "cbR" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/button/door{ desc = "A remote control switch for the medbay foyer."; id = "MedbayFoyer"; @@ -54704,7 +54712,7 @@ /area/security/checkpoint/science/research) "ccm" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/depsec/science, @@ -54840,7 +54848,7 @@ dir = 2; name = "Hydroponics APC"; areastring = "/area/hydroponics"; - pixel_y = -28 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/effect/turf_decal/stripes/line{ @@ -54878,6 +54886,9 @@ pixel_y = 2 }, /obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, /turf/open/floor/plasteel, /area/hydroponics) "ccA" = ( @@ -54893,14 +54904,12 @@ pixel_y = 5 }, /obj/item/watertank, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ - dir = 5 - }, /obj/item/grenade/chem_grenade/antiweed, /obj/structure/table/glass, /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel, /area/hydroponics) "ccB" = ( @@ -55213,7 +55222,7 @@ dir = 2; name = "Medbay Storage APC"; areastring = "/area/medical/storage"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/effect/turf_decal/tile/blue{ @@ -56382,7 +56391,7 @@ dir = 1; name = "Sleeper Room APC"; areastring = "/area/medical/sleeper"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -56748,7 +56757,7 @@ dir = 8; name = "Security Post - Research Division APC"; areastring = "/area/security/checkpoint/science/research"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable/yellow, /obj/effect/turf_decal/tile/red{ @@ -56819,13 +56828,6 @@ icon_state = "platingdmg2" }, /area/maintenance/starboard/aft) -"cgu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/reagent_dispensers/fueltank, -/obj/item/storage/toolbox/emergency, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "cgv" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/general/visible{ @@ -57788,7 +57790,7 @@ dir = 1; name = "Medbay Central APC"; areastring = "/area/medical/medbay/central"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -58046,7 +58048,7 @@ dir = 1; name = "Research Division APC"; areastring = "/area/science/research"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -59055,9 +59057,6 @@ /turf/open/floor/plasteel/dark, /area/medical/surgery) "cld" = ( -/obj/machinery/sleeper{ - dir = 4 - }, /obj/effect/turf_decal/tile/blue{ dir = 1 }, @@ -59068,6 +59067,7 @@ /obj/effect/turf_decal/tile/blue{ dir = 8 }, +/obj/machinery/stasis, /turf/open/floor/plasteel/white, /area/medical/sleeper) "cle" = ( @@ -59108,9 +59108,6 @@ /turf/open/floor/plasteel/white, /area/medical/sleeper) "clh" = ( -/obj/machinery/sleeper{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -59124,6 +59121,7 @@ /obj/effect/turf_decal/tile/blue{ dir = 8 }, +/obj/machinery/stasis, /turf/open/floor/plasteel/white, /area/medical/sleeper) "cli" = ( @@ -60116,8 +60114,10 @@ }, /area/maintenance/port/aft) "cnl" = ( -/obj/structure/mineral_door/wood{ - name = "The Gobbetting Barmaid" +/obj/machinery/door/airlock/wood{ + doorClose = 'sound/effects/doorcreaky.ogg'; + doorOpen = 'sound/effects/doorcreaky.ogg'; + name = "The Gobetting Barmaid" }, /turf/open/floor/wood, /area/maintenance/port/aft) @@ -60213,7 +60213,7 @@ dir = 1; name = "Cryogenics APC"; areastring = "/area/medical/cryo"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -60854,14 +60854,6 @@ /obj/machinery/rnd/production/techfab/department/service, /turf/open/floor/plasteel, /area/hallway/secondary/service) -"cox" = ( -/obj/structure/mineral_door/wood{ - name = "The Gobbetting Barmaid" - }, -/turf/open/floor/wood{ - icon_state = "wood-broken6" - }, -/area/maintenance/port/aft) "coy" = ( /obj/structure/table, /obj/item/clothing/gloves/color/latex, @@ -60895,7 +60887,7 @@ dir = 4; name = "Surgery APC"; areastring = "/area/medical/surgery"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -61062,7 +61054,7 @@ dir = 4; name = "CMO's Office APC"; areastring = "/area/crew_quarters/heads/cmo"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -61919,7 +61911,7 @@ dir = 8; name = "Chemistry APC"; areastring = "/area/medical/chemistry"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/closet/secure_closet/chemical{ pixel_x = -3 @@ -62022,7 +62014,7 @@ dir = 2; name = "Research Lab APC"; areastring = "/area/science/lab"; - pixel_y = -26 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/structure/table, @@ -62271,7 +62263,7 @@ dir = 2; name = "Experimentation Lab APC"; areastring = "/area/science/explab"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /turf/open/floor/plasteel/white, @@ -63555,7 +63547,7 @@ dir = 1; name = "Toxins Storage APC"; areastring = "/area/science/storage"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -64027,7 +64019,7 @@ dir = 1; name = "Port Quarter Maintenance APC"; areastring = "/area/maintenance/port/aft"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plating, /area/maintenance/port/aft) @@ -64045,7 +64037,7 @@ dir = 8; name = "Patient Room A APC"; areastring = "/area/medical/patients_rooms/room_a"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -64207,7 +64199,7 @@ dir = 1; name = "Genetics Lab APC"; areastring = "/area/medical/genetics"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -65179,7 +65171,7 @@ dir = 8; name = "Patient Room B APC"; areastring = "/area/medical/patients_rooms/room_b"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -65504,7 +65496,7 @@ dir = 2; name = "RD Office APC"; areastring = "/area/crew_quarters/heads/hor"; - pixel_y = -27 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/machinery/light_switch{ @@ -67078,7 +67070,7 @@ dir = 4; name = "Medbay Aft APC"; areastring = "/area/medical/medbay/aft"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -67341,7 +67333,7 @@ dir = 4; name = "Mech Bay APC"; areastring = "/area/science/robotics/mechbay"; - pixel_x = 28 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -67364,7 +67356,6 @@ /area/science/nanite) "cAr" = ( /obj/machinery/computer/nanite_chamber_control{ - icon_state = "computer"; dir = 8 }, /obj/effect/turf_decal/bot, @@ -68340,7 +68331,7 @@ dir = 4; name = "Toxins Lab APC"; areastring = "/area/science/mixing"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -68619,7 +68610,7 @@ dir = 1; name = "Robotics Lab APC"; areastring = "/area/science/robotics/lab"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -68818,7 +68809,7 @@ dir = 1; name = "Virology APC"; areastring = "/area/medical/virology"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-4" @@ -69128,7 +69119,7 @@ dir = 4; name = "Morgue APC"; areastring = "/area/medical/morgue"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -69788,7 +69779,7 @@ areastring = "/area/science/mixing/chamber"; dir = 4; name = "Toxins Chamber APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -71511,7 +71502,7 @@ dir = 1; name = "Research Division Server Room APC"; areastring = "/area/science/server"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -72820,7 +72811,7 @@ dir = 1; name = "Departure Lounge APC"; areastring = "/area/hallway/secondary/exit/departure_lounge"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -73485,7 +73476,7 @@ dir = 1; name = "Starboard Quarter Solar APC"; areastring = "/area/maintenance/solars/starboard/aft"; - pixel_y = 24 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -74227,7 +74218,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "cNa" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -74661,7 +74652,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "cNR" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel, @@ -75071,7 +75062,7 @@ lighting = 3; name = "Chapel Office APC"; areastring = "/area/chapel/office"; - pixel_y = -25 + pixel_y = -23 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -78137,6 +78128,9 @@ dir = 1 }, /obj/structure/table, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 5 + }, /turf/open/floor/plasteel, /area/hydroponics) "dbF" = ( @@ -78402,7 +78396,7 @@ dir = 1; name = "Xenobiology APC"; areastring = "/area/science/xenobiology"; - pixel_y = 27 + pixel_y = 23 }, /obj/structure/cable/yellow{ icon_state = "0-2" @@ -79229,7 +79223,7 @@ dir = 4; name = "Test Chamber Maintenance APC"; areastring = "/area/maintenance/department/science/xenobiology"; - pixel_x = 26 + pixel_x = 24 }, /turf/open/floor/plating, /area/maintenance/department/science/xenobiology) @@ -80223,18 +80217,6 @@ /obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/open/space, /area/space/nearstation) -"dgS" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/structure/lattice/catwalk, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/transit_tube/horizontal, -/obj/machinery/atmospherics/pipe/simple/orange/visible, -/turf/open/space, -/area/space/nearstation) "dha" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/simple/green/visible{ @@ -80611,7 +80593,7 @@ dir = 2; name = "Tool Storage APC"; areastring = "/area/storage/primary"; - pixel_y = -27 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/item/wrench, @@ -81515,7 +81497,7 @@ dir = 4; name = "Port Bow Maintenance APC"; areastring = "/area/maintenance/port/fore"; - pixel_x = 26 + pixel_x = 24 }, /turf/open/floor/plating{ icon_state = "platingdmg2" @@ -81726,7 +81708,7 @@ dir = 2; name = "Starboard Bow Maintenance APC"; areastring = "/area/maintenance/starboard/fore"; - pixel_y = -28 + pixel_y = -23 }, /obj/structure/cable/yellow{ icon_state = "0-8" @@ -81950,7 +81932,7 @@ dir = 2; name = "Starboard Quarter Maintenance APC"; areastring = "/area/maintenance/starboard/aft"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable/yellow, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -82879,10 +82861,6 @@ }, /turf/open/floor/plasteel, /area/science/misc_lab/range) -"etr" = ( -/obj/machinery/vr_sleeper, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/recreation) "eFN" = ( /obj/structure/bodycontainer/crematorium{ id = "crematoriumChapel"; @@ -82911,6 +82889,18 @@ }, /turf/open/floor/plating, /area/maintenance/starboard/aft) +"fcn" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/lattice/catwalk, +/obj/structure/cable/cyan{ + icon_state = "4-8" + }, +/obj/structure/transit_tube/horizontal, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/space, +/area/space/nearstation) "fdr" = ( /obj/structure/closet/firecloset, /turf/open/floor/plating, @@ -83186,11 +83176,6 @@ }, /turf/open/floor/plasteel/white, /area/science/research) -"ieW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "ifN" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -83294,6 +83279,12 @@ }, /turf/open/floor/plating, /area/maintenance/solars/port/aft) +"jHw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall, +/area/hydroponics) "jKK" = ( /obj/machinery/door/airlock/external{ req_access_txt = "13" @@ -83374,7 +83365,7 @@ areastring = "/area/hallway/secondary/service"; dir = 1; name = "Service Hall APC"; - pixel_y = 25 + pixel_y = 23 }, /obj/machinery/airalarm{ dir = 8; @@ -83451,6 +83442,19 @@ }, /turf/open/floor/plasteel, /area/science/misc_lab/range) +"lkf" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/hydroponics) "lnO" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -83541,6 +83545,16 @@ }, /turf/open/floor/plasteel, /area/science/mixing) +"mrv" = ( +/obj/machinery/door/airlock/wood{ + doorClose = 'sound/effects/doorcreaky.ogg'; + doorOpen = 'sound/effects/doorcreaky.ogg'; + name = "The Gobetting Barmaid" + }, +/turf/open/floor/wood{ + icon_state = "wood-broken6" + }, +/area/maintenance/port/aft) "msD" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -83704,6 +83718,16 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/science/misc_lab/range) +"ofy" = ( +/obj/effect/turf_decal/tile/purple{ + dir = 1 + }, +/obj/effect/turf_decal/tile/purple{ + dir = 4 + }, +/obj/machinery/vending/modularpc, +/turf/open/floor/plasteel/white, +/area/science/research) "ogE" = ( /obj/structure/closet/firecloset, /turf/open/floor/plating, @@ -83771,6 +83795,18 @@ "pcn" = ( /turf/open/floor/plasteel, /area/science/misc_lab/range) +"pgY" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/hydroponics) "pmZ" = ( /obj/structure/sign/poster/official/random{ pixel_y = 32 @@ -83896,16 +83932,6 @@ }, /turf/open/floor/plasteel/white, /area/science/misc_lab/range) -"qbK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/portable_atmospherics/canister, -/obj/effect/turf_decal/delivery, -/obj/structure/window/reinforced, -/obj/structure/sign/warning/nosmoking{ - pixel_x = -28 - }, -/turf/open/floor/plasteel, -/area/maintenance/disposal/incinerator) "qcZ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/structure/cable/yellow{ @@ -83938,6 +83964,14 @@ }, /turf/open/floor/plasteel, /area/science/misc_lab/range) +"qkD" = ( +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hydroponics) "qom" = ( /obj/structure/cable/yellow{ icon_state = "1-2" @@ -84211,6 +84245,23 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel, /area/crew_quarters/locker) +"tQN" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/tile/green, +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/plasteel, +/area/hydroponics) "tVY" = ( /obj/structure/closet/crate, /obj/item/target/alien, @@ -84273,6 +84324,17 @@ /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/engine/storage_shared) +"uGa" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/lattice/catwalk, +/obj/structure/cable/cyan{ + icon_state = "4-8" + }, +/obj/structure/transit_tube/crossing/horizontal, +/turf/open/space, +/area/space/nearstation) "uGW" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -84325,13 +84387,6 @@ }, /turf/open/floor/plasteel, /area/maintenance/department/science) -"vlx" = ( -/obj/machinery/vr_sleeper, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/crew_quarters/fitness/recreation) "vwi" = ( /obj/structure/girder, /obj/structure/grille, @@ -101982,7 +102037,7 @@ cjv diG dux cnl -cox +mrv dux diI diK @@ -109708,7 +109763,7 @@ ctA cCj cCj cDY -cCj +aae cCj cCe cHJ @@ -112765,7 +112820,7 @@ bVk bWx bXV bZj -cat +ofy ccd ccd ceN @@ -113022,7 +113077,7 @@ aYX aXR bXW bZk -cau +cat cce ccd qBh @@ -119957,7 +120012,7 @@ bKe bRW bST bUm -bVu +pgY bWT bYj bWT @@ -120214,11 +120269,11 @@ bQI bRX bST bUn -bVt -bWQ +lkf +qkD bYk -bWQ -caL +qkD +tQN dbE bST diB @@ -120733,7 +120788,7 @@ bST bST bST caQ -bST +jHw bST cfg pCp @@ -121693,9 +121748,9 @@ acP afz agz dBY -vlx -vlx -etr +ahl +ahl +ahg alk alk anK @@ -123561,9 +123616,9 @@ bYr avs bZE mKO -qbK -ieW -cgu +aaW +aeD +apX amV bZC arF @@ -124329,11 +124384,11 @@ alq alq bXb bYu -bZD +auQ caY ccI ced -aaW +aiT aju apP ciZ @@ -124587,7 +124642,7 @@ aut bXc apc bZE -caZ +aaU ccJ cee cgx @@ -128181,7 +128236,7 @@ bPu bPu bTl bUF -bKD +bCi bXo bMj bZI @@ -128675,7 +128730,7 @@ aaa aaa aaa aaf -bpw +uGa aaf aaf ack @@ -129446,7 +129501,7 @@ dgO dgO dgw dgO -dgS +fcn dgO dgO dgw @@ -129703,7 +129758,7 @@ aaa aaa aaf aaf -bpx +uGa aaf aaf aaf @@ -130474,7 +130529,7 @@ aaa aaa aaf aaf -bpx +uGa aaf aaf aaf @@ -132273,7 +132328,7 @@ aaa aaa aaf aaf -bpx +uGa aaf aaf aaa @@ -134072,7 +134127,7 @@ aaa aaa aaf aaf -bpx +uGa aaf aaf aaa diff --git a/_maps/map_files/Mining/Lavaland.dmm b/_maps/map_files/Mining/Lavaland.dmm index a265cdb3c77..635dc97931c 100644 --- a/_maps/map_files/Mining/Lavaland.dmm +++ b/_maps/map_files/Mining/Lavaland.dmm @@ -78,7 +78,6 @@ /area/lavaland/surface/outdoors) "ao" = ( /obj/machinery/computer/shuttle/labor/one_way{ - icon_state = "computer"; dir = 4 }, /turf/open/floor/plasteel, @@ -285,7 +284,6 @@ dir = 4 }, /obj/machinery/computer/mech_bay_power_console{ - icon_state = "computer"; dir = 1 }, /turf/open/floor/plasteel, @@ -366,7 +364,6 @@ /area/mine/eva) "bh" = ( /obj/machinery/computer/secure_data{ - icon_state = "computer"; dir = 1 }, /turf/open/floor/plasteel, @@ -494,7 +491,6 @@ /area/mine/eva) "bw" = ( /obj/machinery/computer/security/labor{ - icon_state = "computer"; dir = 1 }, /turf/open/floor/plasteel, @@ -509,13 +505,13 @@ /turf/open/floor/plasteel, /area/mine/laborcamp) "by" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/mine/laborcamp) "bz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -525,7 +521,7 @@ name = "Labor Camp Backroom"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -534,12 +530,12 @@ /obj/machinery/power/apc{ dir = 1; name = "Labor Camp APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -630,7 +626,7 @@ name = "Labor Camp Monitoring"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -640,7 +636,7 @@ name = "Labor Camp Maintenance"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-10" }, /turf/open/floor/plating, @@ -661,7 +657,7 @@ /turf/open/floor/plasteel, /area/mine/production) "bQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -673,7 +669,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -686,7 +682,7 @@ /turf/open/floor/plasteel, /area/mine/production) "bS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/mining/glass{ @@ -699,13 +695,13 @@ /turf/open/floor/plasteel, /area/mine/eva) "bT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown{ @@ -720,7 +716,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -774,8 +770,8 @@ /turf/open/floor/plasteel, /area/mine/laborcamp/security) "cc" = ( -/obj/structure/chair/office/dark, -/obj/structure/cable{ +/obj/structure/chair/office, +/obj/structure/cable/yellow{ icon_state = "1-4" }, /mob/living/simple_animal/bot/secbot/beepsky{ @@ -800,23 +796,23 @@ c_tag = "Labor Camp Monitoring"; network = list("labor") }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, /area/mine/laborcamp/security) "ce" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "5-6" }, /turf/open/floor/plating, /area/mine/laborcamp) "cf" = ( /obj/machinery/power/terminal, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -832,7 +828,6 @@ /area/mine/laborcamp) "ci" = ( /obj/machinery/computer/prisoner{ - icon_state = "computer"; dir = 1 }, /turf/open/floor/plasteel, @@ -867,7 +862,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -933,10 +928,10 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-9" }, /turf/open/floor/plating, @@ -957,7 +952,7 @@ /area/mine/production) "cE" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -1046,13 +1041,13 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/mine/living_quarters) "cT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -1066,7 +1061,7 @@ /area/mine/living_quarters) "cU" = ( /obj/machinery/portable_atmospherics/canister/oxygen, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -1082,10 +1077,10 @@ /obj/machinery/power/apc{ dir = 8; name = "Mining Station Starboard Wing APC"; - pixel_x = -27; + pixel_x = -25; pixel_y = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/light{ @@ -1101,10 +1096,10 @@ /area/mine/production) "cY" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -1165,14 +1160,14 @@ /turf/open/floor/circuit, /area/mine/maintenance) "dh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Mining Communications APC"; pixel_x = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel/dark, @@ -1255,7 +1250,7 @@ /turf/open/floor/plating, /area/mine/living_quarters) "dp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1302,7 +1297,7 @@ /turf/open/floor/plasteel, /area/mine/production) "dx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -1311,7 +1306,7 @@ /turf/open/floor/circuit, /area/mine/maintenance) "dy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1387,13 +1382,13 @@ /turf/open/floor/plasteel/white, /area/mine/living_quarters) "dF" = ( +/obj/machinery/power/port_gen/pacman{ + anchored = 1 + }, /obj/structure/cable, /obj/structure/cable{ icon_state = "1-4" }, -/obj/machinery/power/port_gen/pacman{ - anchored = 1 - }, /turf/open/floor/plating, /area/mine/living_quarters) "dG" = ( @@ -1406,7 +1401,7 @@ /turf/open/floor/plating, /area/mine/living_quarters) "dH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/binary/pump/on, @@ -1494,7 +1489,7 @@ name = "Mining Station Communications"; req_access_txt = "48" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1512,14 +1507,14 @@ /turf/open/floor/plasteel/white, /area/mine/living_quarters) "dS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance{ name = "Mining Station Maintenance"; req_access_txt = "48" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1575,7 +1570,7 @@ /area/mine/living_quarters) "eb" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/brown{ @@ -1621,9 +1616,9 @@ dir = 1; name = "Mining Station Port Wing APC"; pixel_x = 1; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -1636,7 +1631,7 @@ /turf/open/floor/plasteel, /area/mine/living_quarters) "ei" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1706,7 +1701,7 @@ /turf/open/floor/plasteel, /area/mine/living_quarters) "eq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -1718,14 +1713,14 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/mine/living_quarters) "es" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1734,26 +1729,26 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/mine/living_quarters) "eu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /turf/open/floor/plasteel, /area/mine/living_quarters) "ev" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1765,7 +1760,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden/layer1{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -1788,7 +1783,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1800,7 +1795,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown{ @@ -1818,7 +1813,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1834,7 +1829,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1846,7 +1841,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown{ @@ -1859,7 +1854,7 @@ /area/mine/production) "eC" = ( /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -3722,7 +3717,7 @@ /obj/machinery/atmospherics/pipe/layer_manifold{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -3762,6 +3757,9 @@ }, /turf/open/floor/plasteel/freezer, /area/mine/living_quarters) +"tY" = ( +/turf/closed/mineral/random/labormineral/volcanic, +/area/lavaland/surface/outdoors/explored) "vb" = ( /obj/machinery/door/window/southleft, /obj/machinery/shower{ @@ -3842,7 +3840,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -3881,7 +3879,7 @@ /turf/open/floor/plasteel/freezer, /area/mine/living_quarters) "EG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -3966,7 +3964,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4033,7 +4031,7 @@ /obj/machinery/atmospherics/pipe/layer_manifold{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -4046,7 +4044,7 @@ /area/mine/maintenance) "Uh" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4073,7 +4071,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/brown, @@ -4104,7 +4102,7 @@ area_type = /area/lavaland/surface/outdoors; dir = 8; dwidth = 3; - height = 5; + height = 10; id = "mining_away"; name = "lavaland mine"; width = 7 @@ -13657,7 +13655,7 @@ aD aT an aD -aD +tY aj aj aj @@ -13913,9 +13911,9 @@ an an an an -aD -aD -aD +tY +tY +tY aj aj ai @@ -14429,8 +14427,8 @@ an an an an -an -aD +aj +aw aj aj cM @@ -14684,10 +14682,10 @@ an an an an -an -an -aD -aD +aj +aj +aw +aw aj aj cM @@ -14939,12 +14937,12 @@ an an an an -an -an -an -an -aD -aD +ab +aj +aj +aj +aw +aw aj aj cM @@ -15195,11 +15193,11 @@ an an an an -an -an -an -an -an +ab +aj +aj +aj +aj aD aD aj @@ -15452,14 +15450,14 @@ an an an an -an -an -an -an -aD -aD aj aj +aj +ab +aD +aD +ab +ab ab cM cW @@ -15708,16 +15706,16 @@ aj an an an -an -an +aj +aj +aw aD aD aD -aD -aj -aj -aj -aj +ab +ab +ab +ab cM cM cM @@ -15963,22 +15961,22 @@ aj aj aj aj -aj -aj -aD -aD -aD -aD -aj -aj -aj -aj -aj -aj -aj -aj ab ab +aw +aw +aw +aD +ab +ab +ab +ab +ab +ab +ab +ab +aj +aj cR dZ rP @@ -16225,17 +16223,17 @@ aj aj aj aj -aj -aj -aj +ab +ab +ab +ab +ab +ab +ab +ab +ab ab aj -aj -aj -aj -aj -aj -ab cR ek ew @@ -16481,17 +16479,17 @@ aj aj aj aj -aj -aj -aj -aj ab -aj ab -aj -aj -aj -aj +ab +ab +ab +ab +ab +ab +ab +ab +ab aj cR cR @@ -16738,8 +16736,10 @@ aj aj aj aj -aj -aj +ab +ab +ab +ab ab ab ab @@ -16748,9 +16748,7 @@ ab ab ab aj -aj -aj -aj +ab cR ey cR @@ -17268,7 +17266,7 @@ aj cR BT cR -ab +aj aj aj aj @@ -17525,7 +17523,7 @@ aj cR BT cR -ab +aj aj aj aj @@ -17778,11 +17776,11 @@ ab ab ab aj -ab +aj br ez br -ab +aj aj aj aj @@ -18035,11 +18033,11 @@ ab ab aj aj -ab +aj br ez br -ab +aj aj aj aj @@ -18296,7 +18294,7 @@ ab br ez br -ab +aj aj aj aj @@ -18554,7 +18552,7 @@ br UQ br ab -ab +aj aj aj aj diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm index 94950c84062..7ebfb6721b5 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -2,12 +2,37 @@ "aaa" = ( /turf/open/space/basic, /area/space) +"aab" = ( +/obj/effect/mapping_helpers/dead_body_placer, +/turf/open/floor/plasteel/dark, +/area/medical/morgue) +"aac" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/structure/closet/radiation, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "aad" = ( /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating{ icon_state = "platingdmg3" }, /area/maintenance/department/science) +"aae" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow, +/obj/structure/closet/secure_closet/atmospherics, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "abf" = ( /obj/structure/bed, /turf/open/floor/plating, @@ -97,9 +122,6 @@ }, /area/ai_monitored/turret_protected/ai) "acj" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, /obj/effect/landmark/start/ai/secondary, /obj/item/radio/intercom{ anyai = 1; @@ -112,13 +134,16 @@ dir = 1; pixel_y = 26 }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "ack" = ( /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/camera/motion{ @@ -129,23 +154,23 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, /obj/machinery/status_display/ai{ pixel_y = 32 }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "acl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 1; name = "AI Chamber APC"; areastring = "/area/ai_monitored/turret_protected/ai"; - pixel_y = 24 + pixel_y = 23 }, /obj/effect/landmark/start/ai/secondary, /obj/item/radio/intercom{ @@ -186,26 +211,26 @@ /turf/open/floor/circuit, /area/ai_monitored/turret_protected/ai) "acp" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /obj/machinery/door/firedoor/heavy, /obj/machinery/door/airlock/command/glass{ name = "AI Core"; req_access_txt = "65" }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel/white, /area/ai_monitored/turret_protected/ai) "acq" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, /obj/machinery/turretid{ control_area = "/area/ai_monitored/turret_protected/ai"; name = "AI Chamber turret control"; pixel_x = 5; pixel_y = -24 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plasteel/white, /area/ai_monitored/turret_protected/ai) "acr" = ( @@ -358,43 +383,22 @@ /obj/machinery/atmospherics/components/unary/outlet_injector/on, /turf/open/floor/plating/airless, /area/ai_monitored/turret_protected/AIsatextAS) -"acG" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, +"acI" = ( /obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/plasteel/white, -/area/ai_monitored/turret_protected/ai) -"acH" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/plasteel/white, -/area/ai_monitored/turret_protected/ai) -"acI" = ( /obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, /turf/open/floor/plasteel/white{ heat_capacity = 1e+006 }, /area/ai_monitored/turret_protected/ai) "acJ" = ( +/obj/machinery/door/firedoor/heavy, /obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/machinery/door/firedoor/heavy, /turf/open/floor/plasteel/white, /area/ai_monitored/turret_protected/ai) "acK" = ( @@ -404,12 +408,12 @@ /turf/open/floor/plasteel/white, /area/ai_monitored/turret_protected/ai) "acL" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, /obj/machinery/ai_slipper{ uses = 8 }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plasteel/white, /area/ai_monitored/turret_protected/ai) "acM" = ( @@ -428,12 +432,6 @@ "acP" = ( /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/AIsatextAP) -"acQ" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/closed/wall/r_wall, -/area/ai_monitored/turret_protected/AIsatextAP) "acR" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel/dark, @@ -461,7 +459,6 @@ /area/ai_monitored/turret_protected/AIsatextAP) "acX" = ( /obj/machinery/computer/monitor, -/obj/structure/cable/yellow, /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAP) "acY" = ( @@ -484,9 +481,6 @@ /area/ai_monitored/turret_protected/ai) "adb" = ( /obj/machinery/door/firedoor, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, /obj/machinery/door/airlock/command/glass{ name = "AI Core"; req_access_txt = "65" @@ -501,6 +495,9 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai) "adc" = ( @@ -550,7 +547,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAP) "adi" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plating, @@ -562,20 +559,20 @@ "adk" = ( /obj/structure/table, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, /obj/machinery/power/apc{ dir = 8; name = "MiniSat Antechamber APC"; areastring = "/area/ai_monitored/turret_protected/aisat_interior"; - pixel_x = -24 + pixel_x = -25 }, /obj/machinery/recharger, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "adl" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/cable/yellow{ @@ -593,7 +590,7 @@ /turf/open/floor/plasteel/grimy, /area/ai_monitored/turret_protected/aisat_interior) "adn" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/grimy, @@ -614,7 +611,7 @@ /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAS) "adq" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plating, @@ -788,10 +785,10 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "adN" = ( @@ -949,7 +946,7 @@ /area/security/prison) "aen" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -966,14 +963,14 @@ /area/security/prison) "aep" = ( /obj/item/cultivator, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, /area/security/prison) "aeq" = ( /obj/machinery/hydroponics/constructable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/seeds/glowshroom, @@ -988,10 +985,10 @@ /area/security/prison) "aer" = ( /obj/item/reagent_containers/glass/bucket, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -999,7 +996,7 @@ "aes" = ( /obj/structure/easel, /obj/item/canvas/nineteenXnineteen, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/poster/official/random{ @@ -1008,10 +1005,10 @@ /turf/open/floor/plasteel/dark, /area/security/prison) "aet" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -1107,7 +1104,7 @@ /turf/open/floor/plasteel/dark, /area/security/prison) "aeH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -1161,12 +1158,12 @@ req_one_access_txt = "65" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "aeP" = ( @@ -1232,14 +1229,14 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 }, -/obj/structure/cable/yellow{ - icon_state = "0-4" - }, /obj/machinery/power/apc{ dir = 8; name = "MiniSat Port Maintenance APC"; areastring = "/area/ai_monitored/turret_protected/AIsatextAP"; - pixel_x = -24 + pixel_x = -25 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAP) @@ -1256,9 +1253,6 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /obj/machinery/airalarm{ pixel_y = 22 }, @@ -1267,6 +1261,9 @@ dir = 2; network = list("minisat") }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAP) "afb" = ( @@ -1284,7 +1281,7 @@ req_access_txt = "65" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -1302,39 +1299,36 @@ /obj/item/twohanded/required/kirbyplants/photosynthetic{ pixel_y = 10 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /obj/effect/turf_decal/tile/blue{ dir = 1 }, /obj/effect/turf_decal/tile/blue{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "aff" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, /obj/effect/turf_decal/tile/blue{ dir = 1 }, /obj/effect/turf_decal/tile/blue{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "afg" = ( /obj/item/twohanded/required/kirbyplants/photosynthetic{ pixel_y = 10 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /obj/machinery/camera/motion{ c_tag = "MiniSat Foyer"; dir = 2; @@ -1344,15 +1338,18 @@ /obj/effect/turf_decal/tile/blue{ dir = 4 }, -/turf/open/floor/plasteel/dark, -/area/ai_monitored/turret_protected/aisat_interior) -"afh" = ( /obj/structure/cable/yellow{ icon_state = "4-8" }, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/turret_protected/aisat_interior) +"afh" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "afi" = ( @@ -1360,12 +1357,12 @@ name = "MiniSat Maintenance"; req_access_txt = "65" }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAS) "afj" = ( @@ -1381,9 +1378,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, /obj/machinery/airalarm{ pixel_y = 22 }, @@ -1392,6 +1386,9 @@ dir = 2; network = list("minisat") }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAS) "afl" = ( @@ -1402,15 +1399,15 @@ /area/ai_monitored/turret_protected/AIsatextAS) "afm" = ( /obj/structure/reagent_dispensers/fueltank, -/obj/structure/cable/yellow{ - icon_state = "0-8" - }, /obj/machinery/power/apc{ dir = 4; name = "MiniSat Starboard Maintenance APC"; areastring = "/area/ai_monitored/turret_protected/AIsatextAS"; pixel_x = 24 }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, /turf/open/floor/plating, /area/ai_monitored/turret_protected/AIsatextAS) "afn" = ( @@ -1573,7 +1570,7 @@ /turf/open/floor/plasteel/dark, /area/security/prison) "afH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -1844,7 +1841,7 @@ /turf/closed/wall, /area/security/prison) "agB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/poddoor/preopen{ @@ -1970,7 +1967,7 @@ /turf/open/floor/plasteel, /area/security/prison) "agM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -2033,7 +2030,7 @@ /area/space/nearstation) "agT" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -2084,7 +2081,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aha" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -2197,7 +2194,7 @@ name = "Long-Term Cell 1"; req_access_txt = "2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -2231,7 +2228,7 @@ "ahu" = ( /obj/structure/table/glass, /obj/item/flashlight/lamp, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -2246,7 +2243,7 @@ /turf/open/floor/plasteel/white, /area/security/execution/transfer) "ahv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -2267,10 +2264,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -2365,7 +2362,7 @@ /turf/open/floor/plasteel, /area/security/prison) "ahG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -2387,10 +2384,10 @@ /turf/open/floor/plasteel, /area/security/prison) "ahH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -2402,7 +2399,7 @@ /obj/machinery/light{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -2412,9 +2409,9 @@ dir = 1; name = "Prison Wing APC"; pixel_x = 1; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -2493,16 +2490,16 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/security/execution/transfer) "ahV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -2514,10 +2511,10 @@ /obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, @@ -2526,7 +2523,7 @@ /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -2541,13 +2538,13 @@ /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, /area/security/execution/transfer) "ahZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -2556,7 +2553,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aia" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ @@ -2565,23 +2562,23 @@ /turf/open/floor/plasteel, /area/security/prison) "aib" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel, /area/security/prison) "aic" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/security/prison) "aid" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -2729,7 +2726,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -2786,7 +2783,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aiG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -2838,7 +2835,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "aiN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, @@ -2853,7 +2850,7 @@ name = "Armory APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -2934,10 +2931,10 @@ /turf/open/floor/plasteel/dark, /area/security/execution/transfer) "aja" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/red, @@ -2953,7 +2950,7 @@ name = "Prisoner Transfer Centre"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/red, @@ -2986,7 +2983,7 @@ /turf/open/floor/plasteel, /area/security/prison) "aje" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable, @@ -3059,7 +3056,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "aji" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -3302,7 +3299,7 @@ name = "Crematorium"; req_access_txt = "2;27" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -3323,7 +3320,7 @@ id = "Prison Gate"; name = "prison blast door" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/delivery, @@ -3423,7 +3420,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "ajS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -3443,13 +3440,13 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "ajU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 8; name = "Security Office APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, /obj/effect/turf_decal/tile/red{ @@ -3568,7 +3565,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "akj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/light/small{ @@ -3582,7 +3579,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "akk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3594,7 +3591,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "akl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3612,7 +3609,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "akm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3624,7 +3621,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "akn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3633,7 +3630,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "ako" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3646,7 +3643,7 @@ /obj/machinery/door/airlock/public/glass{ name = "space-bridge access" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -3661,7 +3658,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "akq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/light/small{ @@ -3728,10 +3725,10 @@ /turf/open/floor/plasteel/dark, /area/security/processing/cremation) "aky" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, @@ -3743,10 +3740,10 @@ /obj/machinery/power/apc{ dir = 1; name = "Crematorium APC"; - pixel_y = 24 + pixel_y = 23 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -3829,7 +3826,7 @@ /turf/open/floor/plasteel, /area/security/brig) "akG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -3886,12 +3883,12 @@ /area/security/brig) "akL" = ( /obj/structure/rack, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/e_gun/advtaser, -/obj/item/gun/energy/e_gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, @@ -3915,7 +3912,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "akO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -3935,7 +3932,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "akQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/newscaster{ @@ -3966,13 +3963,13 @@ /area/security/main) "akT" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/crew_quarters/heads/hos) "akU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -4007,7 +4004,7 @@ /area/crew_quarters/heads/hos) "akZ" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/preopen{ @@ -4033,7 +4030,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "ale" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -4101,7 +4098,7 @@ /turf/open/floor/plasteel/dark, /area/security/processing/cremation) "aln" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -4189,7 +4186,7 @@ /turf/open/floor/plasteel, /area/security/brig) "alv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -4252,7 +4249,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/security/armory) "alB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -4304,7 +4301,7 @@ /turf/open/floor/plasteel/dark, /area/security/main) "alI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -4315,7 +4312,7 @@ /area/crew_quarters/heads/hos) "alK" = ( /obj/structure/disposalpipe/segment, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/carpet, @@ -4334,7 +4331,7 @@ /area/crew_quarters/heads/hos) "alN" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable, @@ -4392,13 +4389,13 @@ /area/maintenance/department/security/brig) "alW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, /area/security/processing/cremation) "alX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/dark, @@ -4420,7 +4417,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "ama" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -4433,7 +4430,7 @@ /turf/open/floor/plasteel/white, /area/security/brig) "amb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -4448,7 +4445,7 @@ icon_state = "right"; name = "Brig Infirmary" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -4458,20 +4455,20 @@ /turf/open/floor/plasteel/white, /area/security/brig) "amd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, /turf/open/floor/plasteel, /area/security/brig) "ame" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -4480,7 +4477,7 @@ /turf/open/floor/plasteel, /area/security/brig) "amf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc/highcap/ten_k{ @@ -4501,7 +4498,7 @@ /turf/closed/wall/r_wall, /area/security/warden) "amh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -4515,7 +4512,7 @@ name = "Armory"; req_access_txt = "3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -4532,10 +4529,10 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "amj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -4549,10 +4546,10 @@ name = "Armory"; req_access_txt = "3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -4569,13 +4566,13 @@ /turf/open/floor/plasteel/dark, /area/security/warden) "aml" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/closed/wall/r_wall, /area/security/warden) "amm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light{ @@ -4607,7 +4604,7 @@ /turf/open/floor/plasteel, /area/security/main) "amo" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/security_officer, @@ -4624,7 +4621,7 @@ /turf/open/floor/plasteel, /area/security/main) "amq" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/disposalpipe/segment{ @@ -4637,7 +4634,7 @@ /turf/open/floor/plasteel, /area/security/main) "amr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -4654,7 +4651,7 @@ /turf/open/floor/plasteel, /area/security/main) "ams" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -4670,7 +4667,7 @@ name = "Head of Security"; req_access_txt = "58" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -4683,16 +4680,16 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "amu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -4701,7 +4698,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "amv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -4714,7 +4711,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/carpet, @@ -4786,7 +4783,7 @@ name = "Crematorium Maintenance"; req_one_access_txt = "2;27" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -4828,7 +4825,7 @@ /turf/open/floor/plasteel/dark, /area/security/processing/cremation) "amL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4837,7 +4834,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "amM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -4894,7 +4891,7 @@ /turf/open/floor/plasteel, /area/security/brig) "amQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -4918,9 +4915,9 @@ /obj/machinery/power/apc{ dir = 8; name = "Brig Control APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/reagent_dispensers/peppertank{ @@ -4978,13 +4975,13 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "ana" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/closed/wall/r_wall, /area/security/warden) "anb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -5016,7 +5013,7 @@ /turf/open/floor/plasteel, /area/security/main) "anf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -5027,19 +5024,19 @@ /turf/open/floor/plasteel, /area/security/main) "ang" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "anh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, /area/crew_quarters/heads/hos) "ani" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/carpet, @@ -5068,7 +5065,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "anp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/robot_debris{ @@ -5082,7 +5079,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "anr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -5093,7 +5090,7 @@ "ans" = ( /obj/item/wirecutters, /obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -5102,7 +5099,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "ant" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -5115,10 +5112,10 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -5148,7 +5145,7 @@ name = "Brig Infirmary Maintenance"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -5172,13 +5169,13 @@ /turf/open/floor/plasteel, /area/security/brig) "anz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/security/brig) "anA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -5189,20 +5186,20 @@ /turf/open/floor/plasteel, /area/security/brig) "anB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/security/warden) "anC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/showroomfloor, @@ -5250,7 +5247,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "anK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable, @@ -5261,7 +5258,7 @@ /turf/open/floor/plating, /area/security/warden) "anL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -5277,14 +5274,14 @@ /turf/open/floor/plasteel, /area/security/main) "anM" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/security_officer, /turf/open/floor/plasteel, /area/security/main) "anN" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/structure/disposalpipe/segment, @@ -5292,7 +5289,7 @@ /turf/open/floor/plasteel, /area/security/main) "anO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -5318,7 +5315,7 @@ /area/security/main) "anQ" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -5327,7 +5324,7 @@ /turf/open/floor/plating, /area/crew_quarters/heads/hos) "anR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -5342,7 +5339,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "anS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/keycard_auth{ @@ -5357,7 +5354,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "anT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -5369,7 +5366,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "anU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/camera{ @@ -5389,15 +5386,15 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hos) "anV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 2; name = "Head of Security's Office APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/red{ @@ -5410,7 +5407,7 @@ /area/crew_quarters/heads/hos) "anW" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable, @@ -5444,7 +5441,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "aoe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -5453,7 +5450,7 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -5465,7 +5462,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -5474,13 +5471,13 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/department/security/brig) "aoi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -5489,7 +5486,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "aoj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -5555,20 +5552,20 @@ name = "Brig Control"; req_access_txt = "3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/door/firedoor, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aot" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/red{ @@ -5580,13 +5577,13 @@ /turf/open/floor/plasteel, /area/security/main) "aou" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/security/main) "aov" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -5598,7 +5595,7 @@ /turf/open/floor/plasteel, /area/security/main) "aow" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -5607,7 +5604,7 @@ /turf/open/floor/plasteel, /area/security/main) "aox" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -5617,10 +5614,10 @@ /turf/open/floor/plasteel, /area/security/main) "aoy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/light{ @@ -5713,10 +5710,10 @@ }, /area/maintenance/department/security/brig) "aoL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -5743,14 +5740,14 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "aoP" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/dark, /area/security/brig) "aoQ" = ( /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -5781,7 +5778,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aoT" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/warden, /turf/open/floor/plasteel/showroomfloor, /area/security/warden) @@ -5821,7 +5818,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "aoZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable, @@ -5890,7 +5887,7 @@ /turf/open/floor/plasteel, /area/security/main) "apf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -5916,7 +5913,7 @@ /turf/open/floor/plasteel, /area/security/main) "apg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -5929,7 +5926,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "aph" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -5941,12 +5938,12 @@ /obj/machinery/power/apc{ dir = 1; name = "Fore Maintenance APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/disposalpipe/segment{ @@ -5955,7 +5952,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "apj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -5967,7 +5964,7 @@ /turf/open/floor/plating, /area/maintenance/fore) "apk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -6059,7 +6056,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "apu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6068,7 +6065,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "apv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6079,7 +6076,7 @@ }, /area/maintenance/department/crew_quarters/dorms) "apw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6119,19 +6116,19 @@ /turf/open/floor/plasteel, /area/security/brig) "apI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/closed/wall/r_wall, /area/security/warden) "apJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -6139,10 +6136,10 @@ /area/security/warden) "apK" = ( /obj/structure/table/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/window/brigdoor{ @@ -6164,10 +6161,10 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "apL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -6179,7 +6176,7 @@ name = "Brig Control"; req_access_txt = "3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -6188,13 +6185,13 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "apN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall/r_wall, /area/security/warden) "apO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/closed/wall/r_wall, @@ -6210,7 +6207,7 @@ /turf/open/floor/plasteel, /area/security/main) "apQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -6284,7 +6281,7 @@ /turf/closed/wall, /area/crew_quarters/dorms) "aqa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/solar{ @@ -6304,7 +6301,7 @@ /turf/open/space, /area/solar/port) "aqc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/solar{ @@ -6314,7 +6311,7 @@ /turf/open/floor/plasteel/airless/solarpanel, /area/solar/port) "aqd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/solar{ @@ -6357,7 +6354,7 @@ /turf/open/floor/plasteel, /area/security/brig) "aqo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -6530,7 +6527,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "aqE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -6545,17 +6542,17 @@ /turf/open/space/basic, /area/space/nearstation) "aqH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/closed/wall/r_wall, /area/bridge) "aqI" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -6565,13 +6562,13 @@ /turf/open/floor/plating, /area/bridge) "aqJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall/r_wall, /area/bridge) "aqK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/closed/wall/r_wall, @@ -6613,9 +6610,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Vault APC"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/circuit/green{ @@ -6642,9 +6639,9 @@ /obj/machinery/power/apc{ dir = 8; name = "Gateway APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -6654,7 +6651,7 @@ /area/gateway) "aqR" = ( /obj/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -6667,7 +6664,7 @@ name = "Gateway Chamber"; req_access_txt = "62" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -6728,22 +6725,22 @@ /area/maintenance/department/crew_quarters/dorms) "ara" = ( /obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, /obj/structure/cable{ icon_state = "2-8" }, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/cable{ - icon_state = "1-2" - }, /turf/open/space, /area/solar/port) "arc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -6946,7 +6943,7 @@ /turf/open/space/basic, /area/space/nearstation) "arG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/closed/wall/r_wall, @@ -7130,7 +7127,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green{ @@ -7197,7 +7194,7 @@ /turf/open/floor/plasteel, /area/gateway) "arZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -7224,10 +7221,10 @@ /turf/open/floor/plasteel, /area/gateway) "asb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7236,7 +7233,7 @@ }, /area/maintenance/department/crew_quarters/dorms) "asc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance{ @@ -7246,7 +7243,7 @@ /area/maintenance/department/crew_quarters/dorms) "asd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -7259,7 +7256,7 @@ /area/crew_quarters/dorms) "ase" = ( /obj/effect/landmark/event_spawn, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -7273,7 +7270,7 @@ "asf" = ( /obj/effect/landmark/start/assistant, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -7289,7 +7286,7 @@ /obj/machinery/newscaster{ pixel_x = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/blue{ @@ -7321,7 +7318,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "asm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light{ @@ -7334,7 +7331,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "asn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -7344,7 +7341,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "aso" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -7353,7 +7350,7 @@ }, /area/maintenance/department/security/brig) "asr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -7389,7 +7386,7 @@ /turf/open/floor/plasteel, /area/security/brig) "asx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light, @@ -7556,16 +7553,16 @@ /turf/open/floor/plasteel, /area/bridge) "asP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/closed/wall/r_wall, /area/bridge) "asQ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/keycard_auth{ @@ -7588,7 +7585,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "asR" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/dark, @@ -7597,10 +7594,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "asT" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/button/door{ @@ -7617,7 +7614,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "asU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/closed/wall/r_wall, @@ -7660,7 +7657,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green{ @@ -7685,7 +7682,7 @@ /obj/machinery/light_switch{ pixel_x = -20 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -7694,7 +7691,7 @@ /turf/open/floor/plasteel, /area/gateway) "atb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -7703,7 +7700,7 @@ /turf/open/floor/plasteel, /area/gateway) "atc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/landmark/event_spawn, @@ -7810,7 +7807,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "atp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green, @@ -7819,7 +7816,7 @@ /turf/open/floor/circuit/green, /area/maintenance/department/security/brig) "atv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -7831,7 +7828,7 @@ id = "Cell 1"; name = "Cell 1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -7841,10 +7838,10 @@ /turf/open/floor/plasteel, /area/security/brig) "atx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -7852,19 +7849,19 @@ /turf/open/floor/plating, /area/security/brig) "aty" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/closed/wall, /area/security/brig) "atz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/spawner/structure/window/reinforced, @@ -7876,7 +7873,7 @@ id = "Cell 2"; name = "Cell 2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -7886,7 +7883,7 @@ /turf/open/floor/plasteel, /area/security/brig) "atB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall, @@ -7896,7 +7893,7 @@ id = "Cell 3"; name = "Cell 3" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red, @@ -7906,10 +7903,10 @@ /turf/open/floor/plasteel, /area/security/brig) "atD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/spawner/structure/window/reinforced, @@ -7923,7 +7920,7 @@ name = "Brig"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -7937,10 +7934,10 @@ /turf/open/floor/plasteel, /area/security/brig) "atF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/spawner/structure/window/reinforced, @@ -7981,7 +7978,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "atK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -8026,7 +8023,7 @@ /obj/machinery/computer/monitor{ name = "Bridge Power Monitoring Console" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/purple{ @@ -8056,7 +8053,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "atR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -8099,7 +8096,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "atW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow, @@ -8166,7 +8163,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, @@ -8178,7 +8175,7 @@ dir = 1 }, /obj/machinery/light, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/dark, @@ -8204,7 +8201,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/nuke_storage) "auf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -8287,7 +8284,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "auo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8296,7 +8293,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "aup" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/grille/broken, @@ -8307,7 +8304,7 @@ /area/maintenance/department/crew_quarters/dorms) "auq" = ( /obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8451,7 +8448,7 @@ /turf/closed/wall, /area/crew_quarters/heads/captain) "auJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -8482,7 +8479,7 @@ /turf/closed/wall/r_wall, /area/bridge) "auN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/airalarm{ @@ -8498,7 +8495,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "auO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/purple{ @@ -8510,10 +8507,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "auP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/purple{ @@ -8588,7 +8585,7 @@ /obj/machinery/door/airlock/vault{ req_access_txt = "53" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -8614,7 +8611,7 @@ name = "Gateway Access"; req_access_txt = "62" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -8747,7 +8744,7 @@ /turf/open/floor/plating, /area/crew_quarters/fitness/recreation) "avn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -8902,7 +8899,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "avD" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -8917,7 +8914,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "avF" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, @@ -9075,7 +9072,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "avT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -9171,7 +9168,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -9183,7 +9180,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -9196,7 +9193,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -9205,7 +9202,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -9215,10 +9212,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -9407,9 +9404,9 @@ dir = 1; name = "Fitness Room APC"; areastring = "/area/crew_quarters/fitness/recreation"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel, @@ -9418,10 +9415,10 @@ /obj/machinery/light{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -9442,7 +9439,7 @@ /turf/open/floor/plasteel/dark, /area/security/brig) "awI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -9453,10 +9450,10 @@ /turf/open/floor/plating, /area/security/brig) "awJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -9467,10 +9464,10 @@ /turf/open/floor/plating, /area/security/brig) "awK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -9490,7 +9487,7 @@ name = "Brig"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -9503,7 +9500,7 @@ /turf/open/floor/plasteel, /area/security/brig) "awM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable, @@ -9600,7 +9597,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/heads/captain) "awT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -9653,7 +9650,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "awZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -9688,7 +9685,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "axd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -9743,7 +9740,7 @@ /turf/closed/wall/r_wall, /area/hallway/primary/central) "axm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -9828,7 +9825,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "axA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -9925,7 +9922,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/heads/captain) "axR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -9941,9 +9938,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Captain's Office APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/carpet, @@ -9994,7 +9991,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "axY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -10082,7 +10079,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "ayh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10206,7 +10203,7 @@ /obj/structure/chair{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/assistant, @@ -10231,7 +10228,7 @@ name = "Port Solar Control"; track = 0 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -10243,13 +10240,13 @@ /turf/open/floor/plating, /area/maintenance/solars/port) "ayC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Port Solar APC"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plating, /area/maintenance/solars/port) @@ -10390,7 +10387,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "ayX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment, @@ -10400,10 +10397,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "ayY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -10435,7 +10432,7 @@ /turf/open/floor/carpet, /area/crew_quarters/heads/captain) "azd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10452,10 +10449,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "aze" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10464,7 +10461,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "azf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -10477,7 +10474,7 @@ /obj/structure/fireaxecabinet{ pixel_y = -32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10489,7 +10486,7 @@ /obj/machinery/light{ light_color = "#e8eaff" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10498,7 +10495,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "azi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/requests_console{ @@ -10514,10 +10511,10 @@ /turf/open/floor/plasteel/dark, /area/bridge) "azj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/holopad, @@ -10536,7 +10533,7 @@ c_tag = "Bridge Central"; dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10548,7 +10545,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/newscaster{ @@ -10557,7 +10554,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "azm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10569,16 +10566,16 @@ /turf/open/floor/plasteel/dark, /area/bridge) "azn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -10591,7 +10588,7 @@ areastring = "/area/bridge"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/blue, @@ -10611,7 +10608,7 @@ /area/bridge) "azq" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10720,7 +10717,7 @@ /obj/structure/chair{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/camera{ @@ -10761,10 +10758,10 @@ /turf/open/space, /area/solar/port) "azL" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ icon_state = "0-4" }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/port) "azN" = ( @@ -10773,15 +10770,6 @@ }, /turf/open/floor/plating, /area/maintenance/solars/port) -"azP" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/open/floor/plating, -/area/maintenance/solars/port) "azQ" = ( /obj/structure/cable{ icon_state = "2-8" @@ -10789,10 +10777,10 @@ /turf/open/floor/plating, /area/maintenance/solars/port) "azR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -10802,7 +10790,7 @@ name = "Port Solar Access"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -10830,9 +10818,9 @@ /obj/machinery/power/apc{ dir = 8; name = "Fore Primary Hallway APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/red{ @@ -10844,7 +10832,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "aAc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10857,7 +10845,7 @@ /area/hallway/primary/fore) "aAd" = ( /obj/machinery/light, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -10869,7 +10857,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "aAe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -10990,7 +10978,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aAu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11023,7 +11011,7 @@ /turf/open/floor/carpet, /area/crew_quarters/heads/captain) "aAz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11055,7 +11043,7 @@ name = "AI Upload Access"; req_access_txt = "16" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -11075,7 +11063,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, @@ -11085,7 +11073,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/button/door{ @@ -11131,7 +11119,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aAK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -11181,7 +11169,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/fitness/recreation) "aAU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -11221,7 +11209,7 @@ }, /area/maintenance/department/security/brig) "aBc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11286,7 +11274,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aBl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -11322,7 +11310,7 @@ name = "Bridge"; req_access_txt = "19" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11380,7 +11368,7 @@ /area/ai_monitored/turret_protected/ai_upload) "aBv" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/blue{ @@ -11392,7 +11380,7 @@ /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/ai_upload) "aBw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -11408,9 +11396,9 @@ dir = 1; name = "Upload APC"; areastring = "/area/ai_monitored/turret_protected/ai_upload"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/blue{ @@ -11424,7 +11412,7 @@ /area/ai_monitored/turret_protected/ai_upload) "aBy" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -11521,7 +11509,7 @@ name = "Central Hall APC"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/disposalpipe/segment, @@ -11532,7 +11520,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aBJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -11663,7 +11651,7 @@ /obj/machinery/light{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -11674,15 +11662,15 @@ /area/crew_quarters/fitness/recreation) "aCa" = ( /obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, /obj/structure/cable{ icon_state = "1-4" }, /obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable{ - icon_state = "1-2" - }, /turf/open/space, /area/solar/port) "aCc" = ( @@ -11702,7 +11690,7 @@ /turf/open/floor/wood, /area/lawoffice) "aCg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -11712,7 +11700,7 @@ /area/maintenance/department/security/brig) "aCh" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -11924,7 +11912,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aCz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment, @@ -11932,7 +11920,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aCA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -11941,7 +11929,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aCB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -11950,7 +11938,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aCC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/camera{ @@ -11972,7 +11960,7 @@ /turf/closed/wall/r_wall, /area/crew_quarters/heads/captain) "aCE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -12078,7 +12066,7 @@ /turf/closed/wall/r_wall, /area/ai_monitored/turret_protected/ai_upload) "aCO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -12101,7 +12089,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aCQ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/head_of_personnel, @@ -12115,7 +12103,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aCT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -12124,7 +12112,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aCU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12141,7 +12129,7 @@ name = "Head of Personnel"; req_access_txt = "57" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12153,10 +12141,10 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aCW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/junction/flip{ @@ -12168,7 +12156,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aCX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12182,10 +12170,10 @@ /area/hallway/primary/central) "aCY" = ( /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -12289,7 +12277,7 @@ }, /area/crew_quarters/dorms) "aDl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -12299,7 +12287,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aDm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -12358,13 +12346,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "aDw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Tool Storage APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -12377,7 +12365,7 @@ }, /area/storage/primary) "aDx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -12438,7 +12426,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aDG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -12455,7 +12443,7 @@ name = "Captain's Office"; req_access_txt = "20" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12467,10 +12455,10 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aDI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -12541,7 +12529,7 @@ /turf/open/floor/plasteel/dark, /area/bridge) "aDP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -12564,7 +12552,7 @@ name = "Head of Personnel"; req_access_txt = "57" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12573,7 +12561,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hop) "aDR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail{ @@ -12586,7 +12574,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aDS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12598,10 +12586,10 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aDT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -12613,7 +12601,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aDU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12625,7 +12613,7 @@ /turf/open/floor/wood, /area/crew_quarters/heads/hop) "aDV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -12634,22 +12622,22 @@ /turf/open/floor/carpet, /area/crew_quarters/heads/hop) "aDW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/carpet, /area/crew_quarters/heads/hop) "aDX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -12663,7 +12651,7 @@ name = "Head of Personnel APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/carpet, @@ -12672,7 +12660,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aEa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -12737,7 +12725,7 @@ /turf/closed/wall, /area/maintenance/department/cargo) "aEk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -12795,7 +12783,7 @@ name = "Detective's Office APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/grimy, @@ -12834,7 +12822,7 @@ }, /area/storage/primary) "aEu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -12889,7 +12877,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/captain) "aEB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -13033,7 +13021,7 @@ /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-24" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/wood, @@ -13058,13 +13046,13 @@ /obj/machinery/computer/card{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, /area/crew_quarters/heads/hop) "aEQ" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/button/flasher{ id = "hopflash"; pixel_x = 38; @@ -13123,7 +13111,7 @@ pixel_x = -24 }, /obj/item/storage/toolbox, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/airalarm{ @@ -13215,7 +13203,7 @@ "aFk" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/spawner/lootdrop/minor/bowler_or_that, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -13224,7 +13212,7 @@ }, /area/maintenance/department/security/brig) "aFm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13241,7 +13229,7 @@ dir = 1 }, /obj/effect/landmark/start/detective, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13250,7 +13238,7 @@ /turf/open/floor/carpet, /area/security/detectives_office) "aFp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13288,7 +13276,7 @@ }, /area/storage/primary) "aFt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13343,7 +13331,7 @@ }, /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -13382,7 +13370,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aFE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -13398,7 +13386,7 @@ name = "Starboard Emergency Storage APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -13410,7 +13398,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/restrooms) "aFH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13419,7 +13407,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/restrooms) "aFI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13428,7 +13416,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/restrooms) "aFJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -13439,7 +13427,7 @@ name = "Unisex Showers"; req_access_txt = "0" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13448,7 +13436,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/restrooms) "aFL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light{ @@ -13463,7 +13451,7 @@ /obj/machinery/shower{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -13507,13 +13495,13 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aFU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/sorting/mail{ @@ -13530,7 +13518,7 @@ name = "Detective Maintenance"; req_access_txt = "4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13542,7 +13530,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "aFW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -13570,7 +13558,7 @@ /turf/open/floor/carpet, /area/security/detectives_office) "aGa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/grimy, @@ -13768,7 +13756,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aGv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/bot, @@ -13801,7 +13789,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aGA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13831,7 +13819,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/restrooms) "aGG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13857,7 +13845,7 @@ /obj/machinery/shower{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -13918,7 +13906,7 @@ /obj/machinery/door/airlock/public/glass{ name = "Primary Tool Storage" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -13973,7 +13961,7 @@ name = "bridge blast door" }, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -14026,7 +14014,7 @@ /area/bridge) "aHf" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -14072,17 +14060,17 @@ "aHi" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/hallway/primary/central) "aHj" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -14090,7 +14078,7 @@ "aHk" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -14104,7 +14092,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aHm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -14117,14 +14105,14 @@ req_access_txt = "0" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/storage/emergency/starboard) "aHo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light{ @@ -14180,13 +14168,13 @@ /turf/open/floor/plating, /area/hallway/secondary/exit/departure_lounge) "aHC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/junction{ @@ -14227,7 +14215,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aHI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14351,7 +14339,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aHT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/junction, @@ -14394,7 +14382,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aHX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14406,7 +14394,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aHY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14482,7 +14470,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aIe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -14521,7 +14509,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/dorms) "aIi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14547,10 +14535,10 @@ /obj/machinery/power/apc{ dir = 4; name = "Dormitory Bathrooms APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -14590,14 +14578,14 @@ req_access_txt = "12" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/department/security/brig) "aIH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14621,46 +14609,46 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aIN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hallway/primary/central) "aIO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aIP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/hallway/primary/central) "aIQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aIR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, /turf/open/floor/plasteel, /area/hallway/primary/central) "aIS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -14669,10 +14657,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aIT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -14682,10 +14670,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aIV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -14694,35 +14682,35 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aIW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aIX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/observer_start, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aIY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -14750,10 +14738,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -14763,7 +14751,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -14776,7 +14764,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -14790,30 +14778,30 @@ /obj/machinery/door/airlock/public/glass{ name = "Dormitory" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/central) "aJh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel, /area/hallway/primary/central) "aJi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/hallway/primary/central) "aJj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14822,7 +14810,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJk" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14835,7 +14823,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -14845,7 +14833,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14860,7 +14848,7 @@ name = "Unisex Restrooms"; req_access_txt = "0" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14869,7 +14857,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/restrooms) "aJo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -14882,7 +14870,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aJq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -14900,7 +14888,7 @@ }, /area/maintenance/department/cargo) "aJr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -14914,7 +14902,7 @@ }, /area/maintenance/department/cargo) "aJs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -14926,7 +14914,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aJt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -14941,10 +14929,10 @@ }, /area/maintenance/department/cargo) "aJv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -14991,9 +14979,9 @@ dir = 1; name = "Departure Lounge APC"; areastring = "/area/hallway/secondary/exit/departure_lounge"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -15042,7 +15030,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -15056,7 +15044,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -15121,7 +15109,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -15195,7 +15183,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aJY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -15279,13 +15267,13 @@ dir = 6 }, /obj/effect/decal/cleanable/oil, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/department/cargo) "aKn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -15343,7 +15331,7 @@ /turf/open/floor/plating, /area/hallway/secondary/exit/departure_lounge) "aKD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -15360,7 +15348,7 @@ }, /area/hallway/secondary/exit/departure_lounge) "aKE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -15371,7 +15359,7 @@ }, /area/hallway/secondary/exit/departure_lounge) "aKG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/red{ @@ -15411,7 +15399,7 @@ /obj/machinery/door/airlock/public/glass{ name = "Art Storage" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -15431,7 +15419,7 @@ /obj/machinery/door/airlock/public/glass{ name = "Cafeteria" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15448,7 +15436,7 @@ id_tag = "Potty1"; name = "Unisex Restrooms" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15466,7 +15454,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -15507,7 +15495,7 @@ /area/storage/eva) "aLc" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -15536,7 +15524,7 @@ req_access_txt = "31" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -15547,7 +15535,7 @@ /area/maintenance/department/cargo) "aLj" = ( /obj/effect/spawner/lootdrop/grille_or_trash, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -15623,7 +15611,7 @@ /turf/open/floor/plasteel, /area/storage/art) "aLy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -15675,7 +15663,7 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/cafeteria) "aLC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -15704,7 +15692,7 @@ /turf/open/floor/plasteel/freezer, /area/crew_quarters/toilet/auxiliary) "aLF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -15714,7 +15702,7 @@ /obj/structure/urinal{ pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/button/door{ @@ -15799,9 +15787,9 @@ /obj/machinery/power/apc{ dir = 8; name = "Teleporter APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/airalarm{ @@ -15813,26 +15801,26 @@ /turf/open/floor/plasteel, /area/teleporter) "aLX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, /area/teleporter) "aLY" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/teleporter) "aLZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -16017,7 +16005,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -16028,7 +16016,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -16039,7 +16027,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -16056,7 +16044,7 @@ /obj/structure/sign/poster/official/random{ pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -16074,7 +16062,7 @@ c_tag = "Cargo Warehouse"; dir = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -16085,7 +16073,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -16099,10 +16087,10 @@ dir = 4; name = "Cargo Warehouse APC"; areastring = "/area/quartermaster/warehouse"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/decal/cleanable/dirt, @@ -16115,7 +16103,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aMx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -16127,7 +16115,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aMy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -16152,7 +16140,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aMB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -16164,7 +16152,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aMC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -16277,7 +16265,7 @@ /turf/open/floor/plasteel, /area/storage/art) "aMW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -16298,7 +16286,7 @@ "aMX" = ( /obj/structure/table, /obj/item/airlock_painter, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -16347,7 +16335,7 @@ /obj/machinery/power/apc{ dir = 2; name = "Cafeteria APC"; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/cafeteria) @@ -16374,7 +16362,7 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 2; name = "Auxiliary Restrooms APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/item/soap/nanotrasen, /obj/machinery/shower{ @@ -16403,7 +16391,7 @@ /obj/item/crowbar, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -16411,7 +16399,7 @@ }, /area/maintenance/department/crew_quarters/bar) "aNj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -16484,7 +16472,7 @@ /turf/open/floor/plasteel, /area/teleporter) "aNv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/corner{ @@ -16558,7 +16546,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/supply) "aNE" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/depsec/supply, @@ -16644,7 +16632,7 @@ /obj/structure/sign/poster/official/random{ pixel_x = -32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -16667,7 +16655,7 @@ /turf/open/floor/plasteel, /area/quartermaster/warehouse) "aNR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -16784,7 +16772,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "aOm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -16870,10 +16858,10 @@ }, /area/maintenance/department/crew_quarters/bar) "aOx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -16883,7 +16871,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aOy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16892,7 +16880,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aOz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16901,7 +16889,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aOA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/spawner/lootdrop/maintenance, @@ -16964,7 +16952,7 @@ /area/teleporter) "aOF" = ( /obj/structure/chair/stool, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -16977,7 +16965,7 @@ /area/teleporter) "aOG" = ( /obj/structure/chair/stool, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -16987,7 +16975,7 @@ /turf/open/floor/plasteel, /area/teleporter) "aOH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -16997,7 +16985,7 @@ /turf/open/floor/plasteel, /area/teleporter) "aOI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -17015,7 +17003,7 @@ id = "teleshutter"; name = "Teleporter Shutters" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -17025,7 +17013,7 @@ /turf/open/floor/plasteel, /area/teleporter) "aOK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -17038,10 +17026,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aOL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -17051,7 +17039,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aOM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -17064,13 +17052,13 @@ /area/hallway/primary/central) "aON" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/security/checkpoint/supply) "aOO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/table, @@ -17168,7 +17156,7 @@ "aOY" = ( /obj/effect/spawner/lootdrop/maintenance, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -17325,9 +17313,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Bar Maintenance APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -17341,7 +17329,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aPG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -17456,7 +17444,7 @@ /obj/machinery/power/apc{ dir = 8; name = "Security Post - Cargo APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/closet/secure_closet/security/cargo, /obj/effect/turf_decal/tile/red{ @@ -17536,7 +17524,7 @@ req_access_txt = "31" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -17712,7 +17700,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -17721,7 +17709,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -17730,10 +17718,10 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -17747,7 +17735,7 @@ }, /area/maintenance/department/crew_quarters/bar) "aQI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17761,7 +17749,7 @@ "aQJ" = ( /obj/structure/closet, /obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17773,7 +17761,7 @@ /area/maintenance/department/crew_quarters/bar) "aQK" = ( /obj/structure/grille, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17783,7 +17771,7 @@ /area/maintenance/department/crew_quarters/bar) "aQL" = ( /obj/structure/grille/broken, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17793,7 +17781,7 @@ /area/maintenance/department/crew_quarters/bar) "aQM" = ( /obj/item/reagent_containers/glass/bucket, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17802,7 +17790,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17811,13 +17799,13 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17826,7 +17814,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -17838,10 +17826,10 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -17858,7 +17846,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -17903,7 +17891,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aQX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/broken_bottle, @@ -17924,18 +17912,18 @@ /obj/item/stack/sheet/metal/fifty, /obj/item/stack/sheet/metal/fifty, /obj/item/crowbar, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 2; name = "EVA Storage APC"; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/plasteel, /area/storage/eva) "aRa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -18038,9 +18026,9 @@ /obj/machinery/power/apc/highcap/fifteen_k{ dir = 4; name = "Delivery Office APC"; - pixel_x = 28 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -18060,7 +18048,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/delivery, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -18268,14 +18256,14 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/central) "aRJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aRK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -18289,7 +18277,7 @@ name = "Hydroponics Maintenance"; req_access_txt = "35" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -18300,7 +18288,7 @@ /turf/closed/wall, /area/crew_quarters/kitchen) "aRO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -18327,7 +18315,7 @@ /turf/open/floor/wood, /area/crew_quarters/bar) "aRR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/chair/wood/normal{ @@ -18339,7 +18327,7 @@ }, /area/crew_quarters/bar) "aRS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -18348,7 +18336,7 @@ /turf/open/floor/wood, /area/crew_quarters/bar) "aRT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -18361,7 +18349,7 @@ name = "Bar Storage Maintenance"; req_access_txt = "25" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -18370,7 +18358,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aRV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -18379,10 +18367,10 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aRW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/chair, @@ -18394,7 +18382,7 @@ name = "EVA Maintenance"; req_access_txt = "18" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -18472,7 +18460,7 @@ "aSh" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -18488,7 +18476,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -18512,7 +18500,7 @@ name = "Cargo Maintenance APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/disposalpipe/segment, @@ -18532,14 +18520,14 @@ name = "Disposal APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/disposal) "aSu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -18577,7 +18565,7 @@ /turf/open/floor/grass, /area/hallway/secondary/exit/departure_lounge) "aSz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -18592,7 +18580,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "aSB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -18641,7 +18629,7 @@ req_access_txt = "28" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -18706,7 +18694,7 @@ }, /area/crew_quarters/bar) "aSO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -18733,7 +18721,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aSS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -18742,10 +18730,10 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aST" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -18754,7 +18742,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aSV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -18857,7 +18845,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -18874,7 +18862,7 @@ departmentType = 2; pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -18889,7 +18877,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -18961,16 +18949,16 @@ /turf/open/floor/plating, /area/quartermaster/storage) "aTu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/maintenance/department/cargo) "aTv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -18979,10 +18967,10 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aTw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/junction/yjunction{ @@ -18994,7 +18982,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aTx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -19010,7 +18998,7 @@ name = "Disposal Access"; req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -19022,7 +19010,7 @@ /turf/open/floor/plating, /area/maintenance/disposal) "aTz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -19034,7 +19022,7 @@ /turf/open/floor/plating, /area/maintenance/disposal) "aTA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -19046,7 +19034,7 @@ /turf/open/floor/plating, /area/maintenance/disposal) "aTB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -19058,7 +19046,7 @@ /turf/open/floor/plating, /area/maintenance/disposal) "aTC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/solar{ @@ -19078,7 +19066,7 @@ /turf/open/space, /area/solar/starboard) "aTE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/solar{ @@ -19164,7 +19152,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "aTR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -19222,7 +19210,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) "aTY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -19268,7 +19256,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/department/crew_quarters/bar) "aUd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -19465,7 +19453,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aUC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -19474,20 +19462,20 @@ /area/maintenance/department/cargo) "aUD" = ( /obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, /obj/structure/cable{ icon_state = "2-8" }, /obj/structure/cable{ icon_state = "2-4" }, -/obj/structure/cable{ - icon_state = "1-2" - }, /turf/open/space, /area/solar/starboard) "aUG" = ( /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -19505,7 +19493,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -19520,7 +19508,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -19531,7 +19519,7 @@ }, /area/hallway/primary/central) "aUK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -19540,10 +19528,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aUL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment, @@ -19553,7 +19541,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aUM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -19564,7 +19552,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aUN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19576,7 +19564,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aUO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -19586,7 +19574,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/bar) "aUP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -19632,7 +19620,7 @@ /turf/open/floor/plasteel, /area/hydroponics) "aUT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/vending/wardrobe/hydro_wardrobe, @@ -19643,7 +19631,7 @@ name = "Hydroponics APC"; pixel_y = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, @@ -19661,7 +19649,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/crew_quarters/kitchen) "aUY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/showroomfloor, @@ -19708,7 +19696,7 @@ name = "Bar Storage"; req_access_txt = "25" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -19836,7 +19824,7 @@ name = "Theatre Maintenance"; req_access_txt = "46" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -19994,7 +19982,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aVE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -20144,7 +20132,7 @@ /obj/machinery/power/apc{ dir = 2; name = "Kitchen APC"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /turf/open/floor/plasteel/showroomfloor, @@ -20190,14 +20178,14 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/bar) "aWe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/crew_quarters/bar) "aWf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/requests_console{ @@ -20216,7 +20204,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/bar) "aWg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -20228,7 +20216,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/item/radio/intercom{ @@ -20263,7 +20251,7 @@ name = "Theatre APC"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/red{ @@ -20279,7 +20267,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aWo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/start/mime, @@ -20299,7 +20287,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aWp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -20321,7 +20309,7 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -20343,7 +20331,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/theatre) "aWr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -20667,7 +20655,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Bar APC"; - pixel_x = 27 + pixel_x = 24 }, /obj/structure/cable, /turf/open/floor/plasteel/dark, @@ -21160,7 +21148,7 @@ /obj/machinery/door/airlock{ name = "Service Access"; req_access_txt = "0"; - req_one_access_txt = "25; 26; 28; 35" + req_one_access_txt = "22;25;26;28;35;37;38;46" }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -21316,7 +21304,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aYo" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -21329,7 +21317,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "aYp" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/cargo_technician, @@ -21899,7 +21887,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "aZv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -21911,7 +21899,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "aZw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -22037,7 +22025,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "aZJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22054,7 +22042,7 @@ name = "Security Checkpoint"; req_access_txt = "1" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22073,7 +22061,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "aZL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -22083,10 +22071,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "aZM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -22124,9 +22112,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Custodial Closet APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/decal/cleanable/dirt, @@ -22359,7 +22347,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "bav" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ @@ -22367,12 +22355,12 @@ name = "Cargo Office APC"; areastring = "/area/quartermaster/office"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /turf/open/floor/plasteel, /area/quartermaster/office) "baw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -22390,7 +22378,7 @@ /turf/open/floor/plasteel, /area/quartermaster/office) "baA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment, @@ -22400,7 +22388,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "baB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -22415,18 +22403,18 @@ /obj/machinery/power/apc{ dir = 2; name = "Cargo Bay APC"; - pixel_y = -24 + pixel_y = -23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel, /area/quartermaster/storage) "baD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light, @@ -22439,7 +22427,7 @@ /turf/open/floor/plasteel, /area/quartermaster/storage) "baE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/sorting/mail{ @@ -22468,7 +22456,7 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard) "baI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/solar{ @@ -22557,7 +22545,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "baS" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/turf_decal/tile/red, @@ -22582,7 +22570,7 @@ dir = 2; name = "Security Checkpoint APC"; pixel_x = 1; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/effect/turf_decal/tile/red, @@ -22595,7 +22583,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "baV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22634,7 +22622,7 @@ pixel_x = -25; req_access_txt = "26" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/dirt, @@ -22644,7 +22632,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -22657,7 +22645,7 @@ departmentType = 1; pixel_x = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -22851,7 +22839,7 @@ name = "Cargo Office Maintenance"; req_access_txt = "50" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22891,7 +22879,7 @@ name = "Quartermaster"; req_access_txt = "41" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22912,7 +22900,7 @@ /area/quartermaster/miningdock) "bbJ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -22934,7 +22922,7 @@ /area/quartermaster/miningdock) "bbL" = ( /obj/machinery/power/smes, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -22943,18 +22931,15 @@ /obj/machinery/power/terminal{ dir = 8 }, -/obj/structure/cable{ - icon_state = "0-2" - }, /obj/machinery/light/small{ dir = 1 }, +/obj/structure/cable{ + icon_state = "0-2" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard) "bbO" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, @@ -22962,6 +22947,9 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard) "bbP" = ( @@ -23028,7 +23016,7 @@ "bbX" = ( /obj/structure/janitorialcart, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -23247,7 +23235,7 @@ }, /area/maintenance/department/cargo) "bcz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23273,7 +23261,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "bcB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -23322,7 +23310,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bcE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23361,10 +23349,10 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bcH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23372,13 +23360,13 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "bcI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/department/cargo) "bcJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ @@ -23388,10 +23376,10 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard) "bcK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -23516,7 +23504,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -23649,7 +23637,7 @@ }, /area/maintenance/department/cargo) "bdB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -23658,7 +23646,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "bdC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -23667,7 +23655,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "bdD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -23679,7 +23667,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "bdE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -23688,14 +23676,14 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "bdF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Quartermaster APC"; areastring = "/area/quartermaster/qm"; - pixel_x = -24 + pixel_x = -25 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 @@ -23709,7 +23697,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "bdG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -23738,11 +23726,11 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bdK" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/shaft_miner, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -23768,7 +23756,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bdQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -23782,12 +23770,12 @@ }, /area/maintenance/department/cargo) "bdR" = ( -/obj/structure/cable, /obj/machinery/power/apc{ dir = 8; name = "Starboard Solar APC"; - pixel_x = -24 + pixel_x = -25 }, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/maintenance/solars/starboard) "bdS" = ( @@ -23854,7 +23842,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bec" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -24198,7 +24186,7 @@ /turf/open/floor/plasteel, /area/quartermaster/qm) "beK" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/landmark/start/quartermaster, @@ -24222,7 +24210,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "beN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -24242,7 +24230,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "beR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/spawner/lootdrop/maintenance, @@ -24256,15 +24244,15 @@ /area/maintenance/department/cargo) "beU" = ( /obj/structure/lattice/catwalk, +/obj/structure/cable{ + icon_state = "1-2" + }, /obj/structure/cable{ icon_state = "1-4" }, /obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable{ - icon_state = "1-2" - }, /turf/open/space, /area/solar/starboard) "beY" = ( @@ -24305,14 +24293,14 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bfc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bfd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -24325,7 +24313,7 @@ /obj/machinery/door/airlock/public/glass{ name = "Central Access" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -24335,7 +24323,7 @@ /area/hallway/secondary/entry) "bff" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -24344,7 +24332,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bfg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -24353,10 +24341,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bfh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment, @@ -24368,7 +24356,7 @@ name = "Custodial Closet"; req_access_txt = "26" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -24482,9 +24470,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Mech Bay APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/dark, @@ -24500,7 +24488,7 @@ /area/science/robotics/mechbay) "bfy" = ( /obj/machinery/mech_bay_recharge_port, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/status_display/evac{ @@ -24513,7 +24501,7 @@ /area/science/robotics/mechbay) "bfA" = ( /obj/machinery/computer/mech_bay_power_console, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/dark, @@ -24604,7 +24592,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bfF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/landmark/start/shaft_miner, @@ -24689,7 +24677,7 @@ /obj/machinery/door/airlock/public/glass{ name = "Lounge" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -24734,7 +24722,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bgg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -24956,7 +24944,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "bgF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/corner{ @@ -24971,7 +24959,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "bgH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/circuit/green, @@ -24980,7 +24968,7 @@ /turf/open/floor/circuit/green, /area/science/robotics/mechbay) "bgJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light{ @@ -24993,13 +24981,13 @@ /turf/open/floor/circuit/green, /area/science/robotics/mechbay) "bgK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 8; name = "Mining Dock APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/turf_decal/tile/brown{ dir = 1 @@ -25007,7 +24995,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bgL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -25041,7 +25029,7 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/lounge) "bgW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -25069,10 +25057,10 @@ /turf/open/floor/plasteel/grimy, /area/crew_quarters/lounge) "bgZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/sorting/mail{ @@ -25082,7 +25070,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bha" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25094,7 +25082,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bhb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25106,7 +25094,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bhc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -25193,10 +25181,10 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "bhl" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -25208,7 +25196,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "bhm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25223,13 +25211,13 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "bhn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25238,7 +25226,7 @@ /turf/open/floor/circuit, /area/science/robotics/mechbay) "bho" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25251,7 +25239,7 @@ name = "Mech Bay Maintenance"; req_access_txt = "29" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25260,10 +25248,10 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "bhq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -25276,7 +25264,7 @@ name = "Mining Maintenance"; req_access_txt = "48" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -25288,10 +25276,10 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "bhs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -25311,7 +25299,7 @@ /area/quartermaster/miningdock) "bht" = ( /obj/structure/closet/secure_closet/miner, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -25350,7 +25338,7 @@ /turf/open/floor/plasteel, /area/quartermaster/miningdock) "bhz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -25365,7 +25353,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -25391,7 +25379,7 @@ /turf/open/floor/carpet, /area/crew_quarters/lounge) "bhH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -25417,7 +25405,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "bhK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -25490,7 +25478,7 @@ /turf/open/floor/plasteel, /area/science/robotics/mechbay) "bhS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -25527,13 +25515,13 @@ /area/crew_quarters/lounge) "bic" = ( /obj/effect/landmark/start/assistant, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/carpet, /area/crew_quarters/lounge) "bid" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/carpet, @@ -25542,7 +25530,7 @@ /obj/structure/chair/comfy/beige{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/grimy, @@ -25692,7 +25680,7 @@ /turf/open/floor/plasteel/dark, /area/science/robotics/mechbay) "bix" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/robot_debris{ @@ -25701,7 +25689,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "biy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -25710,10 +25698,10 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "biz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -25725,7 +25713,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "biC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -25749,7 +25737,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -25809,7 +25797,7 @@ dir = 2; name = "Lounge APC"; areastring = "/area/crew_quarters/lounge"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /turf/open/floor/plasteel/grimy, @@ -25841,7 +25829,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/sign/departments/examroom{ @@ -25970,7 +25958,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/purple, @@ -26049,7 +26037,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -26059,7 +26047,7 @@ /turf/open/floor/circuit/telecomms, /area/science/xenobiology) "bjD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -26071,7 +26059,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -26080,7 +26068,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -26142,7 +26130,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, @@ -26152,9 +26140,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Morgue APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -26361,11 +26349,7 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/aft) "bks" = ( -/obj/structure/table, -/obj/item/wrench, -/obj/item/stack/cable_coil, -/obj/item/electronics/apc, -/obj/item/electronics/airlock, +/obj/machinery/vending/modularpc, /turf/open/floor/plasteel/dark, /area/hallway/primary/aft) "bkt" = ( @@ -26397,7 +26381,7 @@ /turf/open/floor/plating, /area/science/robotics/lab) "bkw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -26513,7 +26497,7 @@ "bkY" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/freezer, @@ -26531,9 +26515,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Port Emergency Storage APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/freezer, @@ -26566,7 +26550,7 @@ /turf/open/floor/plasteel/dark, /area/medical/morgue) "blf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -26890,10 +26874,10 @@ dir = 2; sortType = 14 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -26912,9 +26896,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Robotics Lab APC"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/green{ @@ -27019,7 +27003,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bmd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating{ @@ -27027,7 +27011,7 @@ }, /area/maintenance/department/engine) "bme" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance, @@ -27036,13 +27020,13 @@ }, /area/maintenance/department/engine) "bmf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/department/engine) "bmg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance{ @@ -27053,7 +27037,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bmh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/freezer, @@ -27065,10 +27049,10 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/freezer, @@ -27078,10 +27062,10 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/freezer, @@ -27135,7 +27119,7 @@ areastring = "/area/security/checkpoint/medical"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/camera{ @@ -27154,7 +27138,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/medical) "bmt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -27311,7 +27295,7 @@ /area/science/robotics/lab) "bmP" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -27481,7 +27465,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bnu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -27498,7 +27482,7 @@ req_access_txt = "0"; req_one_access_txt = "5;9" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -27563,7 +27547,7 @@ name = "Medbay Security Post"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -27640,6 +27624,15 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/aft) +"bnK" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/engine, +/area/engine/engineering) "bnL" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -27704,7 +27697,7 @@ /area/science/robotics/lab) "bnR" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -27846,7 +27839,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "boq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -27893,7 +27886,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "box" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -27977,7 +27970,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "boF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28367,7 +28360,7 @@ /area/hallway/secondary/entry) "bpu" = ( /obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -28419,7 +28412,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bpA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -28455,7 +28448,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bpE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -28464,7 +28457,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bpF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -28481,7 +28474,7 @@ opacity = 1; req_access_txt = "6" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28490,7 +28483,7 @@ /turf/open/floor/plasteel/dark, /area/medical/morgue) "bpH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28499,14 +28492,14 @@ /turf/open/floor/plasteel/dark, /area/medical/morgue) "bpI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel/dark, /area/medical/morgue) "bpJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light{ @@ -28519,10 +28512,10 @@ /turf/open/floor/plasteel/dark, /area/medical/morgue) "bpK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -28539,7 +28532,7 @@ /area/engine/engineering) "bpM" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/grunge{ @@ -28556,10 +28549,10 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/blue{ @@ -28571,7 +28564,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bpO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -28762,7 +28755,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -28771,7 +28764,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -28780,7 +28773,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -28805,13 +28798,13 @@ name = "Server Room APC"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/dark, /area/science/server) "bqm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -28992,7 +28985,7 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/disposalpipe/segment, @@ -29010,7 +29003,7 @@ id = "xenobio5"; name = "containment blast door" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -29021,10 +29014,10 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/engine, @@ -29035,7 +29028,7 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/disposalpipe/segment, @@ -29053,7 +29046,7 @@ id = "xenobio6"; name = "containment blast door" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -29064,10 +29057,10 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/engine, @@ -29077,7 +29070,7 @@ req_access_txt = "0"; req_one_access_txt = "12; 55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29091,7 +29084,7 @@ areastring = "/area/hallway/secondary/entry"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -29145,10 +29138,10 @@ /area/medical/genetics) "bqX" = ( /obj/machinery/holopad, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -29158,7 +29151,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bqY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -29168,7 +29161,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bqZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -29187,7 +29180,7 @@ /obj/effect/mapping_helpers/airlock/unres{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -29200,7 +29193,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -29212,13 +29205,13 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "brc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -29235,7 +29228,7 @@ name = "Medbay APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/light{ @@ -29254,7 +29247,7 @@ /obj/machinery/power/apc{ dir = 8; name = "Medbay APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/turf_decal/tile/blue{ dir = 1 @@ -29479,7 +29472,7 @@ /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "brx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -29566,14 +29559,14 @@ /turf/open/floor/plasteel/dark, /area/science/server) "brE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/science/server) "brF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/dark, @@ -29712,7 +29705,7 @@ dir = 8; layer = 2.9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -29743,7 +29736,7 @@ dir = 8; layer = 2.9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -29777,7 +29770,7 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "bsm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/camera{ @@ -29843,7 +29836,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bst" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -29883,7 +29876,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bsy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -30087,9 +30080,9 @@ /obj/machinery/power/apc{ dir = 4; name = "Research Lab APC"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/white, @@ -30134,7 +30127,7 @@ /turf/open/floor/plasteel/dark, /area/science/robotics/lab) "bsX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -30225,7 +30218,7 @@ name = "Server Room"; req_access_txt = "30" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -30344,7 +30337,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "btx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -30376,7 +30369,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "btB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -30389,29 +30382,29 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "btF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/landmark/blobstart, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -30456,7 +30449,7 @@ /turf/open/floor/plating, /area/hallway/secondary/entry) "btN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/cyan/hidden{ @@ -30466,7 +30459,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "btO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/maintenance{ @@ -30478,7 +30471,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "btP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -30490,10 +30483,10 @@ /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -30534,7 +30527,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "btW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -30706,7 +30699,7 @@ /turf/open/floor/plasteel, /area/science/lab) "bus" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/camera{ @@ -30750,7 +30743,7 @@ /area/hallway/primary/aft) "buv" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -30778,7 +30771,7 @@ /area/science/explab) "bux" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -30897,7 +30890,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -30909,7 +30902,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -30921,7 +30914,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -30930,13 +30923,13 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -30945,7 +30938,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -30972,7 +30965,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple, @@ -30986,7 +30979,7 @@ /area/maintenance/department/engine) "bvb" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -30999,7 +30992,7 @@ name = "Genetics"; req_access_txt = "9" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -31036,19 +31029,19 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bvg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bvh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/junction/flip{ @@ -31061,7 +31054,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, @@ -31070,7 +31063,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, @@ -31080,7 +31073,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, @@ -31179,7 +31172,7 @@ /turf/open/floor/plasteel, /area/science/lab) "bvz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -31227,7 +31220,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -31316,9 +31309,9 @@ /obj/machinery/power/apc/highcap/ten_k{ dir = 1; name = "Research Division APC"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -31344,7 +31337,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bvN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -31506,7 +31499,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "bwf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -31539,7 +31532,7 @@ dir = 1 }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -31569,7 +31562,7 @@ /area/maintenance/department/engine) "bwt" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -31622,7 +31615,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bwy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -31684,7 +31677,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bwC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -31863,7 +31856,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -31876,7 +31869,7 @@ /turf/open/floor/plasteel/white, /area/science/lab) "bxe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail{ @@ -31890,7 +31883,7 @@ /turf/open/floor/plasteel/white, /area/science/lab) "bxf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31905,10 +31898,10 @@ /turf/open/floor/plasteel/white, /area/science/lab) "bxg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31921,7 +31914,7 @@ /area/science/lab) "bxh" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -31939,7 +31932,7 @@ /turf/open/floor/plasteel, /area/science/lab) "bxi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -31957,7 +31950,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bxj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/holopad, @@ -31969,7 +31962,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bxm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -31982,13 +31975,13 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bxn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -31998,7 +31991,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -32017,7 +32010,7 @@ name = "research shutters" }, /obj/machinery/door/firedoor/heavy, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/delivery, @@ -32034,7 +32027,7 @@ name = "Research Division Access"; req_access_txt = "47" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -32043,7 +32036,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bxr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -32053,7 +32046,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bxs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -32072,7 +32065,7 @@ name = "Research Division Access"; req_access_txt = "47" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -32081,10 +32074,10 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bxu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -32094,7 +32087,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bxv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -32106,11 +32099,11 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bxw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -32122,7 +32115,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -32131,7 +32124,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bxy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -32141,7 +32134,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bxz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -32151,7 +32144,7 @@ /area/science/explab) "bxA" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -32265,7 +32258,7 @@ dir = 8; layer = 2.9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -32302,7 +32295,7 @@ dir = 8; layer = 2.9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -32335,7 +32328,7 @@ dir = 8; layer = 2.9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -32373,7 +32366,7 @@ /area/maintenance/department/engine) "byc" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -32426,7 +32419,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "byi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -32476,7 +32469,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bym" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -32534,7 +32527,7 @@ id = "cmoshutters"; name = "Privacy shutters" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -32544,9 +32537,9 @@ /obj/machinery/power/apc{ dir = 8; name = "Chemistry APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -32560,7 +32553,7 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "byx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -32612,7 +32605,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -32624,7 +32617,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -32644,11 +32637,11 @@ /area/science/lab) "byG" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/purple, @@ -32720,7 +32713,7 @@ /area/hallway/primary/aft) "byM" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/navbeacon{ @@ -32881,7 +32874,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -32983,7 +32976,7 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/disposalpipe/segment, @@ -33001,7 +32994,7 @@ name = "Containment Pen #1"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -33012,7 +33005,7 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable, @@ -33024,7 +33017,7 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/disposalpipe/segment, @@ -33037,7 +33030,7 @@ }, /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/engine, @@ -33048,7 +33041,7 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/disposalpipe/segment, @@ -33066,7 +33059,7 @@ name = "Containment Pen #3"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, @@ -33077,7 +33070,7 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/cable, @@ -33120,7 +33113,7 @@ "bzD" = ( /obj/structure/chair/stool, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light/small{ @@ -33170,7 +33163,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bzJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -33209,7 +33202,7 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bzN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/green, @@ -33229,9 +33222,6 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/zone2) "bzP" = ( -/obj/machinery/sleeper{ - dir = 4 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -33252,6 +33242,7 @@ network = list("ss13","medbay"); dir = 4 }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/sleeper) "bzQ" = ( @@ -33327,7 +33318,7 @@ /area/crew_quarters/heads/cmo) "bzZ" = ( /obj/machinery/suit_storage_unit/cmo, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -33360,7 +33351,7 @@ /area/crew_quarters/heads/cmo) "bAb" = ( /obj/machinery/computer/med_data, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -33397,7 +33388,7 @@ pixel_x = 38; req_access_txt = "40" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -33423,7 +33414,7 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "bAf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -33499,7 +33490,7 @@ req_one_access_txt = "7;29" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -33511,13 +33502,13 @@ id = "rdprivacy"; name = "Privacy shutters" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/crew_quarters/heads/hor) "bAp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -33527,10 +33518,10 @@ req_one_access_txt = "0" }, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -33548,10 +33539,10 @@ id = "rdprivacy"; name = "Privacy shutters" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -33563,10 +33554,10 @@ id = "rdprivacy"; name = "Privacy shutters" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -33591,7 +33582,7 @@ /area/hallway/primary/aft) "bAw" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -33634,7 +33625,7 @@ /area/science/explab) "bAD" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -33688,7 +33679,7 @@ /area/hallway/secondary/entry) "bAM" = ( /obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/extinguisher, @@ -33749,7 +33740,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bAT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -33792,7 +33783,7 @@ name = "Virology Exterior Airlock"; req_access_txt = "39" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/doorButtons/access_button{ @@ -33857,13 +33848,13 @@ /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bBg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/blue{ @@ -33875,7 +33866,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "bBh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -33895,10 +33886,10 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/blue{ @@ -33913,7 +33904,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/blue{ @@ -33934,10 +33925,10 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/computer/security/telescreen/cmo{ @@ -33957,7 +33948,7 @@ name = "Chemistry Lab Maintenance"; req_access_txt = "5; 33" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -33984,7 +33975,7 @@ name = "RD Office APC"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/purple{ @@ -33996,7 +33987,7 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/heads/hor) "bBr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -34100,7 +34091,7 @@ /area/security/checkpoint/science) "bBz" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -34180,7 +34171,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bBI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -34247,13 +34238,13 @@ /turf/open/floor/plasteel/dark, /area/science/mixing) "bBQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Toxins Lab APC"; - pixel_y = 25 + pixel_y = 23 }, /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -34392,7 +34383,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bCc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/purple{ @@ -34401,7 +34392,7 @@ /turf/open/floor/plasteel/white, /area/medical/genetics) "bCd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, @@ -34410,9 +34401,9 @@ /obj/machinery/power/apc{ dir = 4; name = "Genetics APC"; - pixel_x = 27 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/purple, @@ -34434,7 +34425,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bCg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -34477,9 +34468,6 @@ /turf/open/floor/plasteel, /area/medical/sleeper) "bCj" = ( -/obj/machinery/sleeper{ - dir = 4 - }, /obj/effect/turf_decal/tile/blue{ dir = 1 }, @@ -34490,6 +34478,7 @@ /obj/effect/turf_decal/tile/blue{ dir = 8 }, +/obj/machinery/stasis, /turf/open/floor/plasteel, /area/medical/sleeper) "bCl" = ( @@ -34574,7 +34563,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -34636,7 +34625,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "bCv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/sorting/mail{ @@ -34646,7 +34635,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/blue{ @@ -34662,7 +34651,7 @@ name = "CMO Maintenance"; req_access_txt = "40" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -34674,7 +34663,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bCx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -34689,10 +34678,10 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bCy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/sorting/mail{ @@ -34703,7 +34692,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bCz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -34715,7 +34704,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bCA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -34730,7 +34719,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bCB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -34739,7 +34728,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -34753,7 +34742,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -34812,7 +34801,7 @@ id = "rdprivacy"; name = "Privacy shutters" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -34825,7 +34814,7 @@ network = list("ss13","rd") }, /obj/item/book/manual/wiki/security_space_law, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -34839,10 +34828,10 @@ /area/security/checkpoint/science) "bCL" = ( /obj/effect/landmark/start/depsec/science, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -34904,7 +34893,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -34927,7 +34916,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "bDa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -35022,7 +35011,7 @@ "bDj" = ( /obj/item/trash/candy, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -35077,7 +35066,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bDp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -35113,7 +35102,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/blue{ @@ -35168,7 +35157,7 @@ dir = 4; name = "CMO's Office APC"; areastring = "/area/crew_quarters/heads/cmo"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable, /obj/effect/turf_decal/tile/blue{ @@ -35183,7 +35172,7 @@ /turf/closed/wall, /area/medical/exam_room) "bDz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -35245,7 +35234,7 @@ /obj/machinery/recharger{ pixel_y = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -35258,10 +35247,10 @@ /area/security/checkpoint/science) "bDH" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -35326,14 +35315,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/engine, /area/science/storage) "bDQ" = ( /obj/machinery/door/firedoor/heavy, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -35349,7 +35338,7 @@ /turf/open/floor/plasteel/dark, /area/science/storage) "bDR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -35364,13 +35353,13 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bDS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -35379,7 +35368,7 @@ /turf/open/floor/plasteel/dark, /area/science/explab) "bDT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -35398,7 +35387,7 @@ name = "Toxins Lab"; req_access_txt = "8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -35423,7 +35412,7 @@ /turf/open/floor/plasteel/dark, /area/science/mixing) "bDV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -35435,7 +35424,7 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "bDW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -35444,13 +35433,13 @@ /turf/open/floor/plasteel/white, /area/science/mixing) "bDX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, /area/science/mixing) "bDY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -35460,10 +35449,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/white, @@ -35587,7 +35576,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bEo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -35596,14 +35585,14 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bEp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating, /area/maintenance/department/engine) "bEq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -35626,7 +35615,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bEt" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -35849,7 +35838,7 @@ /turf/open/floor/plasteel/white, /area/crew_quarters/heads/cmo) "bEI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/closet, @@ -35865,7 +35854,7 @@ /turf/open/floor/plasteel/dark, /area/medical/exam_room) "bEJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -35882,7 +35871,7 @@ /turf/open/floor/plasteel/dark, /area/medical/exam_room) "bEK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/button/door{ @@ -35904,7 +35893,7 @@ name = "Personal Examination Room"; req_access_txt = "40" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -35913,11 +35902,11 @@ /turf/open/floor/plasteel/dark, /area/medical/exam_room) "bEM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -36059,10 +36048,10 @@ /area/security/checkpoint/science) "bEX" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/red, @@ -36078,7 +36067,7 @@ pixel_x = 24 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/closet/secure_closet/security/science, @@ -36127,7 +36116,7 @@ /turf/open/floor/engine, /area/science/storage) "bFd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/engine, @@ -36191,7 +36180,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/white, @@ -36211,7 +36200,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -36350,7 +36339,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bFG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -36401,7 +36390,7 @@ name = "Virology Interior Airlock"; req_access_txt = "39" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/doorButtons/access_button{ @@ -36490,7 +36479,7 @@ /area/medical/exam_room) "bFW" = ( /obj/effect/decal/remains/human, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -36508,7 +36497,7 @@ /turf/open/floor/plasteel/dark, /area/medical/exam_room) "bFY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -36531,7 +36520,7 @@ name = "Research Security Post"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -36605,7 +36594,7 @@ /turf/open/floor/engine, /area/science/storage) "bGi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/camera{ @@ -36823,7 +36812,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -36936,7 +36925,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bGN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -36992,7 +36981,7 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "bGT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -37002,9 +36991,9 @@ /obj/machinery/power/apc/highcap/five_k{ dir = 1; name = "Virology APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden, @@ -37227,7 +37216,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -37278,7 +37267,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -37320,7 +37309,7 @@ /turf/open/floor/engine, /area/science/storage) "bHv" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/sign/poster/random{ @@ -37382,9 +37371,9 @@ areastring = "/area/science/mixing/chamber"; dir = 4; name = "Toxins Chamber APC"; - pixel_x = 26 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -37781,7 +37770,7 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/navbeacon{ @@ -37795,7 +37784,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/navbeacon{ @@ -37808,7 +37797,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -37820,7 +37809,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -37830,24 +37819,24 @@ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bIA" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bIC" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/navbeacon{ @@ -37857,7 +37846,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bID" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -37889,17 +37878,17 @@ name = "Toxins Storage APC"; pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, /area/science/storage) "bIG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, @@ -37907,14 +37896,14 @@ /area/science/storage) "bIH" = ( /obj/machinery/light, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, /area/science/storage) "bII" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/nosmoking{ @@ -37926,7 +37915,7 @@ /turf/open/floor/engine, /area/science/storage) "bIJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/engine, @@ -38290,7 +38279,7 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "bJy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -38307,7 +38296,7 @@ name = "Surgery Maintenance"; req_access_txt = "45" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -38316,10 +38305,10 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bJA" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment, @@ -38329,7 +38318,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bJB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -38480,7 +38469,7 @@ name = "Toxins Storage"; req_access_txt = "24" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -38565,13 +38554,13 @@ /area/chapel/dock) "bKb" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, /area/chapel/dock) "bKc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -38582,7 +38571,7 @@ name = "Monastery Docking Bay APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -38809,7 +38798,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Surgery APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -38822,7 +38811,7 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "bKH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -38838,7 +38827,7 @@ /area/hallway/primary/aft) "bKJ" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -38891,9 +38880,9 @@ /obj/machinery/power/apc{ dir = 8; name = "Atmospherics APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/yellow{ @@ -38912,7 +38901,7 @@ dir = 2; pixel_y = 22 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -38934,7 +38923,7 @@ name = "Head of Security RC"; pixel_y = 30 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -38952,7 +38941,7 @@ /obj/item/radio/intercom{ pixel_y = 26 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light{ @@ -38970,10 +38959,10 @@ /obj/machinery/atmospherics/pipe/simple/yellow/visible{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/yellow{ @@ -39071,7 +39060,7 @@ /area/chapel/dock) "bLo" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -39479,7 +39468,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bMg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -39563,7 +39552,7 @@ /turf/open/space/basic, /area/space/nearstation) "bMs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -39824,7 +39813,7 @@ /turf/open/floor/plasteel/white, /area/medical/surgery) "bMS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -39970,7 +39959,7 @@ /obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -40062,7 +40051,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -40255,10 +40244,10 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bNY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment, @@ -40268,7 +40257,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bNZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -40280,7 +40269,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bOa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -40293,10 +40282,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bOb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -40421,7 +40410,7 @@ dir = 1; name = "Pure to Mix" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -40468,7 +40457,7 @@ /turf/open/floor/plating/asteroid, /area/chapel/asteroid/monastery) "bOx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -40522,7 +40511,7 @@ /turf/open/floor/plating, /area/medical/virology) "bOF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -40534,7 +40523,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bOG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -40543,7 +40532,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bOH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -40556,7 +40545,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bOI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -40568,7 +40557,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bOJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -40752,7 +40741,7 @@ /area/engine/atmos) "bPc" = ( /obj/machinery/atmospherics/pipe/manifold4w/yellow/visible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -40804,7 +40793,7 @@ name = "Chapel"; opacity = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -40853,7 +40842,7 @@ /turf/open/floor/plasteel/dark, /area/maintenance/department/engine) "bPs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -40865,7 +40854,7 @@ /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -40953,7 +40942,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bPH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/holopad, @@ -41044,7 +41033,7 @@ /area/engine/atmos) "bPV" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -41102,7 +41091,7 @@ /turf/open/floor/plating/asteroid, /area/chapel/asteroid/monastery) "bQf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/sand, @@ -41348,7 +41337,7 @@ pixel_x = -25; pixel_y = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -41358,10 +41347,10 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bQC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/navbeacon{ @@ -41391,7 +41380,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bQF" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/atmospheric_technician, @@ -41505,7 +41494,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bQU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -41517,7 +41506,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bQV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -41527,7 +41516,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "bQW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -41542,10 +41531,10 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -41557,7 +41546,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -41636,10 +41625,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/dark, @@ -41648,7 +41637,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -41658,7 +41647,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/corner, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -41668,7 +41657,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -41680,7 +41669,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -41689,7 +41678,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/dark, @@ -41701,7 +41690,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -41754,7 +41743,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/atmospheric_technician, @@ -41776,7 +41765,7 @@ "bRu" = ( /obj/machinery/requests_console{ department = "Atmospherics"; - departmentType = 4; + departmentType = 3; name = "Atmos RC"; pixel_x = 30 }, @@ -41890,7 +41879,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -41900,7 +41889,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -41915,7 +41904,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -41924,7 +41913,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/dark, @@ -42001,13 +41990,13 @@ /turf/open/floor/plasteel/dark, /area/storage/tech) "bRT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, @@ -42017,7 +42006,7 @@ name = "Tech Storage"; req_access_txt = "23" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -42027,7 +42016,7 @@ /turf/open/floor/plasteel/dark, /area/storage/tech) "bRV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -42039,22 +42028,22 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bRW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bRX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, /area/hallway/primary/aft) "bRY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -42063,7 +42052,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bRZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel, @@ -42135,7 +42124,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bSg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/trinary/mixer{ @@ -42271,7 +42260,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -42282,7 +42271,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 6 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /turf/open/floor/plasteel, @@ -42291,7 +42280,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/closed/wall/r_wall, @@ -42306,7 +42295,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -42317,7 +42306,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/item/beacon, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -42329,7 +42318,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -42342,7 +42331,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -42355,7 +42344,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /turf/open/floor/plasteel/dark, @@ -42366,7 +42355,7 @@ /turf/open/floor/plasteel/dark, /area/storage/tech) "bSK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -42405,7 +42394,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "bSO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -42623,20 +42612,20 @@ /obj/machinery/power/terminal{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/light, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/engine/gravity_generator) "bTs" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes{ @@ -42776,7 +42765,7 @@ dir = 2; name = "Tech Storage APC"; areastring = "/area/storage/tech"; - pixel_y = -24 + pixel_y = -23 }, /obj/structure/cable, /obj/structure/closet/crate/solarpanel_small, @@ -42808,7 +42797,7 @@ name = "Engineering"; req_one_access_txt = "10;24" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -43086,25 +43075,25 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 1; name = "Engineering Foyer APC"; - pixel_y = 24 + pixel_y = 23 }, /turf/open/floor/plasteel, /area/engine/break_room) "bUm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -43143,6 +43132,9 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ dir = 6 }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3{ + dir = 6 + }, /turf/open/floor/plasteel, /area/engine/atmos) "bUq" = ( @@ -43150,12 +43142,18 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engine/atmos) "bUr" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 6 }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engine/atmos) "bUs" = ( @@ -43168,12 +43166,13 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3{ + dir = 4 + }, /turf/open/floor/plasteel, /area/engine/atmos) "bUu" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, +/obj/machinery/atmospherics/pipe/manifold/general/visible, /turf/open/floor/plasteel, /area/engine/atmos) "bUv" = ( @@ -43185,7 +43184,7 @@ /area/engine/atmos) "bUw" = ( /obj/machinery/atmospherics/pipe/simple/yellow/visible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/purple/visible{ @@ -43273,7 +43272,7 @@ /obj/machinery/requests_console{ announcementConsole = 1; department = "Chief Engineer's Desk"; - departmentType = 3; + departmentType = 4; name = "Chief Engineer RC"; pixel_x = -32 }, @@ -43359,16 +43358,16 @@ /turf/closed/wall/r_wall, /area/storage/tech) "bUP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/closed/wall, /area/engine/engine_smes) "bUQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/smes/engineering, @@ -43381,10 +43380,10 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "bUR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/smes/engineering, @@ -43401,7 +43400,7 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "bUS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/smes/engineering, @@ -43442,10 +43441,10 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bUW" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/landmark/start/depsec/engineering, @@ -43455,7 +43454,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bUX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43472,7 +43471,7 @@ name = "Engineering Security Post"; req_access_txt = "63" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43491,7 +43490,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bUZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -43504,10 +43503,10 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bVa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/disposalpipe/segment{ @@ -43567,6 +43566,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, /turf/open/floor/plasteel, /area/engine/atmos) "bVf" = ( @@ -43598,7 +43598,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bVj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/yellow/visible, @@ -43754,9 +43754,9 @@ /obj/machinery/power/apc{ dir = 4; name = "CE Office APC"; - pixel_x = 28 + pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/item/clothing/glasses/meson/engine, @@ -43802,7 +43802,7 @@ pixel_y = 7 }, /obj/item/storage/box/lights/mixed, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/airalarm{ @@ -43821,7 +43821,7 @@ /obj/machinery/power/terminal{ dir = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-2" }, /obj/effect/turf_decal/stripes/line{ @@ -43846,9 +43846,9 @@ dir = 8; name = "Engineering Security APC"; areastring = "/area/security/checkpoint/engineering"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/turf_decal/tile/red{ @@ -43860,7 +43860,7 @@ /turf/open/floor/plasteel, /area/security/checkpoint/engineering) "bVP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -43894,7 +43894,7 @@ /turf/open/floor/plasteel, /area/engine/break_room) "bVT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -43922,6 +43922,7 @@ /obj/machinery/atmospherics/components/binary/pump{ name = "Waste to Space" }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, /turf/open/floor/plasteel, /area/engine/atmos) "bVW" = ( @@ -44055,7 +44056,7 @@ /area/crew_quarters/heads/chief) "bWq" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -44138,10 +44139,10 @@ /obj/item/stack/sheet/glass/fifty{ layer = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/light{ @@ -44163,10 +44164,10 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "bWw" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -44175,13 +44176,13 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "bWx" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-4" }, /obj/effect/landmark/start/station_engineer, @@ -44191,7 +44192,7 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "bWy" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on, @@ -44272,7 +44273,7 @@ name = "engineering security door" }, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44301,6 +44302,7 @@ "bWI" = ( /obj/machinery/portable_atmospherics/scrubber, /obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, /turf/open/floor/plasteel, /area/engine/atmos) "bWJ" = ( @@ -44382,7 +44384,7 @@ name = "Chapel"; opacity = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -44409,14 +44411,14 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/department/engine) "bXe" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -44448,7 +44450,7 @@ /turf/open/floor/plasteel, /area/crew_quarters/heads/chief) "bXi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -44497,7 +44499,7 @@ dir = 8; name = "Engine Room APC"; areastring = "/area/engine/engine_smes"; - pixel_x = -26 + pixel_x = -25 }, /obj/structure/cable, /obj/item/stack/sheet/metal/fifty, @@ -44511,13 +44513,13 @@ /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "bXm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/engine/engine_smes) "bXn" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -44535,7 +44537,7 @@ name = "Engine Room"; req_access_txt = "10" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44553,6 +44555,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, /turf/open/floor/plasteel, /area/engine/atmos) "bXs" = ( @@ -44659,7 +44662,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bXD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/cyan/visible{ @@ -44676,7 +44679,7 @@ /obj/machinery/atmospherics/pipe/simple/cyan/visible{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/yellow, @@ -44702,13 +44705,10 @@ /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 9 }, -/obj/machinery/atmospherics/pipe/simple/purple/visible{ - dir = 6 - }, /turf/closed/wall/r_wall, /area/engine/atmos) "bXI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -44762,7 +44762,7 @@ /area/maintenance/department/engine) "bXY" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -44774,10 +44774,10 @@ "bXZ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -44787,15 +44787,15 @@ /turf/open/floor/plating, /area/crew_quarters/heads/chief) "bYa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/door/airlock/command{ @@ -44813,7 +44813,7 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "bYd" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/modular_computer/console/preset/engineering, @@ -44830,7 +44830,7 @@ /area/engine/engine_smes) "bYg" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -44841,7 +44841,7 @@ name = "Power Storage"; req_access_txt = "11" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -44871,7 +44871,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -44917,7 +44917,7 @@ /obj/machinery/atmospherics/pipe/simple/green/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/atmos{ @@ -44949,10 +44949,11 @@ /turf/open/floor/plasteel/chapel, /area/chapel/main/monastery) "bYC" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/station_engineer, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "bYF" = ( @@ -44986,7 +44987,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/yellow{ @@ -44998,7 +44999,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45017,10 +45018,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/sorting/mail{ @@ -45037,10 +45038,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -45058,7 +45059,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45084,7 +45085,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45102,10 +45103,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYP" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -45123,7 +45124,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45141,7 +45142,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45166,7 +45167,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45187,10 +45188,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -45208,13 +45209,16 @@ /obj/effect/turf_decal/tile/yellow{ dir = 4 }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, /turf/open/floor/plasteel, /area/engine/engineering) "bYU" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ @@ -45236,7 +45240,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45246,10 +45250,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, /turf/open/floor/plasteel, /area/engine/engineering) "bYW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45270,7 +45277,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45295,7 +45302,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -45320,12 +45327,9 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bYZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ - icon_state = "2-8" - }, /obj/structure/disposalpipe/sorting/mail/flip{ dir = 8; sortType = 4 @@ -45336,7 +45340,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bZa" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -45377,13 +45381,13 @@ /obj/machinery/power/apc{ dir = 8; name = "Incinerator APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/machinery/airalarm/unlocked{ dir = 2; pixel_y = 22 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -45398,34 +45402,29 @@ /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "bZg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/machinery/power/terminal{ +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, /obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) +"bZh" = ( +/obj/machinery/power/terminal{ + dir = 4 + }, +/obj/structure/cable{ icon_state = "0-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) -"bZh" = ( -/obj/machinery/power/smes, -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 +/obj/structure/cable/yellow{ + icon_state = "4-8" }, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) @@ -45456,7 +45455,7 @@ }, /area/chapel/main/monastery) "bZn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -45508,7 +45507,7 @@ /area/engine/engineering) "bZy" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -45526,7 +45525,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bZB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -45549,7 +45548,7 @@ /area/engine/engineering) "bZE" = ( /obj/machinery/holopad, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -45563,9 +45562,6 @@ /turf/open/floor/plasteel, /area/engine/engineering) "bZG" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/structure/disposalpipe/segment{ dir = 5 }, @@ -45603,6 +45599,7 @@ /obj/machinery/atmospherics/components/unary/outlet_injector/on{ dir = 1 }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, /turf/open/floor/plating/airless, /area/engine/atmos) "bZL" = ( @@ -45643,30 +45640,11 @@ /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "bZP" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) -"bZQ" = ( -/obj/machinery/computer/turbine_computer{ - dir = 8; - id = "incineratorturbine" - }, -/obj/machinery/button/door/incinerator_vent_atmos_main{ - pixel_x = 24; - pixel_y = 6 - }, -/obj/machinery/button/door/incinerator_vent_atmos_aux{ - pixel_x = 24; - pixel_y = -6 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) "bZR" = ( /obj/machinery/atmospherics/pipe/simple/purple/visible{ dir = 5 @@ -45698,10 +45676,6 @@ }, /turf/open/floor/engine/vacuum, /area/maintenance/disposal/incinerator) -"bZV" = ( -/obj/structure/sign/warning/fire, -/turf/closed/wall/r_wall, -/area/maintenance/disposal/incinerator) "bZY" = ( /turf/closed/wall, /area/chapel/office) @@ -45740,24 +45714,27 @@ /turf/open/floor/plasteel, /area/engine/engineering) "cai" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/station_engineer, /turf/open/floor/plasteel, /area/engine/engineering) "caj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/start/station_engineer, /turf/open/floor/plasteel, /area/engine/engineering) "cak" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/start/station_engineer, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, /turf/open/floor/plasteel, /area/engine/engineering) "cal" = ( @@ -45791,22 +45768,22 @@ /turf/open/floor/plasteel, /area/engine/engineering) "caq" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, /obj/effect/turf_decal/stripes/line, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/engine/engineering) "car" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, /obj/machinery/camera{ c_tag = "Engineering Central"; dir = 1 }, /obj/machinery/light, /obj/effect/turf_decal/stripes/line, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/engine/engineering) "cat" = ( @@ -45839,6 +45816,7 @@ "caw" = ( /obj/structure/table, /obj/item/twohanded/rcl/pre_loaded, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "cax" = ( @@ -45848,10 +45826,6 @@ /obj/item/electronics/apc, /obj/item/stock_parts/cell/high/plus, /obj/item/stock_parts/cell/high/plus, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/item/stack/cable_coil, /turf/open/floor/plasteel, /area/engine/engineering) "caz" = ( @@ -45923,32 +45897,19 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) -"caJ" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 6 - }, +/obj/structure/table/glass, +/obj/item/paper_bin, +/obj/item/pen, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "caK" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ - dir = 8 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 +/obj/structure/cable{ + icon_state = "1-4" }, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "caL" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/locked, @@ -45960,7 +45921,7 @@ /turf/open/floor/engine, /area/maintenance/disposal/incinerator) "caM" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{ @@ -45969,7 +45930,7 @@ /turf/open/floor/engine, /area/maintenance/disposal/incinerator) "caN" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/effect/mapping_helpers/airlock/locked, @@ -45977,7 +45938,7 @@ /turf/open/floor/engine, /area/maintenance/disposal/incinerator) "caO" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/igniter/incinerator_atmos, @@ -45988,10 +45949,10 @@ /turf/open/floor/engine/vacuum, /area/maintenance/disposal/incinerator) "caP" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-4" }, /obj/machinery/power/compressor{ @@ -46007,7 +45968,7 @@ /turf/open/floor/engine/vacuum, /area/maintenance/disposal/incinerator) "caQ" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-8" }, /obj/machinery/power/turbine{ @@ -46016,10 +45977,6 @@ }, /turf/open/floor/engine/vacuum, /area/maintenance/disposal/incinerator) -"caR" = ( -/obj/machinery/door/poddoor/incinerator_atmos_main, -/turf/open/floor/engine/vacuum, -/area/maintenance/disposal/incinerator) "caS" = ( /turf/closed/wall, /area/chapel/asteroid/monastery) @@ -46061,13 +46018,13 @@ }, /area/maintenance/department/engine) "cbc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -46092,7 +46049,7 @@ pixel_y = 3 }, /obj/item/book/manual/wiki/engineering_construction, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -46106,6 +46063,7 @@ }, /obj/item/book/manual/wiki/engineering_guide, /obj/structure/table/glass, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "cbh" = ( @@ -46132,15 +46090,15 @@ "cbk" = ( /obj/machinery/door/firedoor, /obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; + id = "SupermatterExternal"; name = "radiation shutters" }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, /obj/effect/turf_decal/bot{ dir = 2 }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plasteel/dark, /area/engine/engineering) "cbl" = ( @@ -46162,14 +46120,12 @@ "cbn" = ( /obj/structure/table, /obj/item/storage/belt/utility, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "cbo" = ( /obj/structure/table, /obj/machinery/cell_charger, -/obj/structure/cable{ - icon_state = "1-2" - }, /turf/open/floor/plasteel, /area/engine/engineering) "cbp" = ( @@ -46211,51 +46167,24 @@ "cby" = ( /turf/open/floor/engine/air, /area/engine/atmos) -"cbz" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating/airless, -/area/maintenance/disposal/incinerator) "cbA" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, /obj/effect/turf_decal/tile/yellow{ dir = 1 }, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) -"cbB" = ( -/obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 4 - }, +/obj/effect/turf_decal/bot, +/obj/machinery/atmospherics/components/unary/tank/toxins, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "cbC" = ( -/obj/machinery/button/ignition/incinerator/atmos{ - pixel_x = 26; - pixel_y = -6 - }, -/obj/machinery/atmospherics/components/trinary/filter/flipped{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 }, +/obj/machinery/meter, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) -"cbE" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8 - }, -/obj/machinery/light/small, -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/open/floor/engine, -/area/maintenance/disposal/incinerator) "cbF" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 8 @@ -46283,7 +46212,7 @@ "cbN" = ( /obj/structure/table/wood, /obj/item/storage/book/bible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -46348,14 +46277,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plasteel, /area/engine/engineering) "cca" = ( /obj/effect/landmark/start/station_engineer, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46364,10 +46293,10 @@ /turf/open/floor/plasteel, /area/engine/engineering) "ccb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -46390,14 +46319,24 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/emitter/anchored{ + dir = 4; + state = 2 + }, /turf/open/floor/plating, /area/engine/engineering) "cce" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, /obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/structure/cable/yellow{ + icon_state = "1-8" }, /turf/open/floor/plating, /area/engine/engineering) @@ -46414,6 +46353,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/reflector/single/anchored{ + dir = 10 + }, /turf/open/floor/plating, /area/engine/engineering) "ccg" = ( @@ -46445,6 +46390,7 @@ /obj/item/storage/toolbox/mechanical{ pixel_x = -2 }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "cck" = ( @@ -46456,9 +46402,6 @@ /obj/item/storage/toolbox/electrical{ pixel_x = -2 }, -/obj/structure/cable{ - icon_state = "1-2" - }, /turf/open/floor/plasteel, /area/engine/engineering) "ccm" = ( @@ -46483,19 +46426,15 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) -"ccq" = ( -/obj/structure/chair/office/dark, -/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister, +/obj/effect/turf_decal/bot, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "ccr" = ( /obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, /turf/open/floor/plasteel/dark, /area/maintenance/disposal/incinerator) "ccs" = ( @@ -46507,7 +46446,7 @@ /turf/open/floor/plating/asteroid, /area/chapel/asteroid/monastery) "ccE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -46577,7 +46516,7 @@ /turf/open/floor/plating, /area/engine/engineering) "ccS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -46592,7 +46531,7 @@ "ccW" = ( /obj/machinery/door/firedoor, /obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; + id = "SupermatterExternal"; name = "radiation shutters" }, /obj/effect/turf_decal/bot{ @@ -46601,29 +46540,28 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "ccX" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/plating, /area/engine/engineering) "ccY" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, /turf/open/floor/plating, /area/engine/engineering) "ccZ" = ( -/obj/structure/particle_accelerator/end_cap, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/engine/engineering) "cda" = ( /obj/effect/landmark/event_spawn, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/engine/engineering) "cdc" = ( @@ -46632,50 +46570,7 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"cdf" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cdg" = ( -/obj/structure/table/glass, -/obj/item/paper_bin, -/obj/item/pen, -/obj/effect/turf_decal/tile/yellow{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) -"cdh" = ( -/obj/structure/table/glass, -/obj/item/storage/toolbox/emergency, -/obj/machinery/atmospherics/pipe/simple/general/visible{ - dir = 5 - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) -"cdi" = ( -/obj/machinery/atmospherics/pipe/manifold4w/general/visible, -/obj/machinery/meter, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel/dark, -/area/maintenance/disposal/incinerator) -"cdj" = ( +"cdk" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, @@ -46683,31 +46578,16 @@ name = "Atmospherics External Access"; req_access_txt = "24" }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - dir = 4 - }, /turf/open/floor/plating, /area/maintenance/disposal/incinerator) -"cdk" = ( +"cdl" = ( /obj/machinery/light/small{ dir = 1 }, /obj/structure/sign/warning/vacuum/external{ pixel_y = 32 }, -/obj/machinery/atmospherics/pipe/simple/general/hidden{ - dir = 9 - }, -/turf/open/floor/plating, -/area/maintenance/disposal/incinerator) -"cdl" = ( -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/obj/machinery/door/airlock/external{ - name = "Atmospherics External Access"; - req_access_txt = "24" - }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, /turf/open/floor/plating, /area/maintenance/disposal/incinerator) "cdm" = ( @@ -46815,9 +46695,6 @@ /area/engine/engineering) "cdL" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -46825,6 +46702,9 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/structure/cable/cyan{ + icon_state = "1-2" + }, /turf/open/floor/plasteel, /area/engine/engineering) "cdM" = ( @@ -46841,15 +46721,8 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) -"cdN" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plasteel, -/area/engine/engineering) "cdO" = ( /obj/effect/turf_decal/stripes/line, -/obj/structure/cable{ - icon_state = "1-4" - }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 9 }, @@ -46865,9 +46738,6 @@ /area/engine/engineering) "cdP" = ( /obj/effect/turf_decal/stripes/line, -/obj/structure/cable{ - icon_state = "2-8" - }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -46875,6 +46745,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "cdQ" = ( @@ -46897,7 +46768,7 @@ dir = 6 }, /obj/machinery/button/door{ - id = "Singularity"; + id = "SupermatterExternal"; name = "Shutters Control"; pixel_x = 25; req_access_txt = "11" @@ -46913,31 +46784,22 @@ /area/engine/engineering) "cdS" = ( /obj/machinery/button/door{ - id = "Singularity"; + id = "SupermatterExternal"; name = "Shutters Control"; pixel_x = -25; req_access_txt = "11" }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/machinery/light{ + dir = 8 + }, /turf/open/floor/plating, /area/engine/engineering) -"cdT" = ( -/obj/machinery/particle_accelerator/control_box, -/obj/structure/cable/yellow, -/turf/open/floor/plating, -/area/engine/engineering) -"cdU" = ( -/obj/structure/particle_accelerator/fuel_chamber, -/turf/open/floor/plating, -/area/engine/engineering) "cdW" = ( /obj/machinery/button/door{ - id = "Singularity"; + id = "SupermatterExternal"; name = "Shutters Control"; pixel_x = 25; req_access_txt = "11" @@ -46945,6 +46807,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" + }, /turf/open/floor/plating, /area/engine/engineering) "cdX" = ( @@ -46952,7 +46818,7 @@ dir = 10 }, /obj/machinery/button/door{ - id = "Singularity"; + id = "SupermatterExternal"; name = "Shutters Control"; pixel_x = -25; req_access_txt = "11" @@ -46961,28 +46827,16 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/structure/reagent_dispensers/watertank, /turf/open/floor/plasteel, /area/engine/engineering) "cdY" = ( /obj/effect/turf_decal/stripes/line, -/obj/structure/cable{ - icon_state = "2-4" - }, -/obj/effect/turf_decal/tile/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 8 - }, -/turf/open/floor/plasteel, -/area/engine/engineering) -"cdZ" = ( -/obj/effect/turf_decal/stripes/line, -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/effect/turf_decal/tile/yellow, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel, /area/engine/engineering) "ceb" = ( @@ -46996,12 +46850,8 @@ /obj/machinery/atmospherics/pipe/simple/general/visible, /turf/open/floor/plating/airless, /area/maintenance/disposal/incinerator) -"ced" = ( -/obj/structure/closet/emcloset/anchored, -/turf/open/floor/plating, -/area/maintenance/disposal/incinerator) "cee" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -47011,7 +46861,7 @@ /turf/open/floor/plasteel, /area/chapel/office) "cef" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/sand, @@ -47023,7 +46873,7 @@ opacity = 1; req_access_txt = "22" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47046,7 +46896,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -47097,9 +46947,6 @@ }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/machinery/door/firedoor, -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -47110,47 +46957,33 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/obj/structure/cable/cyan{ + icon_state = "1-2" + }, /turf/open/floor/plasteel/dark, /area/engine/engineering) "cet" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, +/turf/open/floor/engine, /area/engine/engineering) "ceu" = ( -/obj/item/stack/cable_coil{ - pixel_x = 3; - pixel_y = -7 - }, /obj/item/stack/cable_coil{ pixel_x = 3; pixel_y = -7 }, /obj/item/crowbar, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/plating, /area/engine/engineering) -"cev" = ( -/obj/structure/chair/stool, -/turf/open/floor/plating, -/area/engine/engineering) -"cew" = ( -/obj/structure/particle_accelerator/power_box, -/turf/open/floor/plating, -/area/engine/engineering) "cex" = ( /obj/item/screwdriver, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/engine/engineering) "cey" = ( @@ -47205,7 +47038,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -47214,7 +47047,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, @@ -47286,80 +47119,75 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable/cyan{ + icon_state = "1-2" + }, /turf/open/floor/plasteel/dark, /area/engine/engineering) "ceX" = ( -/obj/machinery/light/small{ - dir = 8; - light_color = "#fff4bc" - }, -/obj/structure/closet/emcloset/anchored, /obj/structure/disposalpipe/segment{ dir = 10 }, -/turf/open/floor/plating, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/engine, /area/engine/engineering) "ceY" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/plating, -/area/engine/engineering) -"cfa" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/engine/engineering) -"cfb" = ( /obj/structure/cable/yellow{ icon_state = "1-2" }, +/turf/open/floor/plating, +/area/engine/engineering) +"cfb" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/machinery/power/emitter/anchored{ + dir = 4; + state = 2 + }, /turf/open/floor/plating, /area/engine/engineering) "cfc" = ( -/obj/structure/particle_accelerator/particle_emitter/left, -/turf/open/floor/plating, -/area/engine/engineering) -"cfd" = ( -/obj/structure/particle_accelerator/particle_emitter/center, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, /turf/open/floor/plating, /area/engine/engineering) "cfe" = ( -/obj/structure/particle_accelerator/particle_emitter/right, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, /turf/open/floor/plating, /area/engine/engineering) "cff" = ( -/obj/structure/cable{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/structure/sign/warning/vacuum/external{ - pixel_x = -32 - }, -/turf/open/floor/plating, +/turf/open/floor/engine, /area/engine/engineering) "cfg" = ( -/obj/machinery/light/small{ - dir = 4; - light_color = "#fff4bc" +/obj/effect/turf_decal/stripes/line{ + dir = 5 }, -/obj/structure/closet/emcloset/anchored, -/turf/open/floor/plating, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 6 + }, +/turf/open/floor/engine, /area/engine/engineering) "cfk" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -47372,7 +47200,7 @@ name = "Chapel Access"; opacity = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -47421,33 +47249,23 @@ /turf/open/floor/plating, /area/engine/engineering) "cfs" = ( -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/engine/engineering) "cfu" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, /obj/effect/turf_decal/stripes/line{ dir = 10 }, /turf/open/floor/plating, /area/engine/engineering) -"cfv" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" - }, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating, -/area/engine/engineering) "cfw" = ( /obj/item/wirecutters, -/obj/structure/cable/yellow{ - icon_state = "2-8" - }, /obj/effect/turf_decal/stripes/line, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/open/floor/plating, /area/engine/engineering) "cfx" = ( @@ -47465,7 +47283,7 @@ /turf/open/floor/plasteel, /area/chapel/main/monastery) "cfD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -47492,9 +47310,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Monastery APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -47583,76 +47401,58 @@ /turf/open/floor/plasteel/dark, /area/engine/engineering) "cfS" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, /obj/effect/turf_decal/stripes/line{ - dir = 1 + dir = 8 }, -/obj/structure/disposaloutlet, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cfT" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cfU" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Port Fore"; - dir = 2; - network = list("engine") +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1{ + dir = 6 }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cfV" = ( -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/layer_manifold/visible{ + dir = 4 + }, +/turf/open/floor/engine, /area/engine/engineering) "cfW" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/effect/spawner/structure/window/plasma/reinforced, /turf/open/floor/plating, /area/engine/engineering) "cfX" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cfY" = ( -/obj/machinery/disposal/deliveryChute, -/obj/structure/disposalpipe/trunk{ - dir = 8 +/obj/structure/disposalpipe/segment{ + dir = 9 }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/engine, /area/engine/engineering) "cgb" = ( /obj/machinery/airalarm{ @@ -47718,7 +47518,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cgp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/item/wrench, @@ -47735,37 +47535,49 @@ name = "Engineering External Access"; req_access_txt = "61" }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plating, /area/engine/engineering) "cgu" = ( -/obj/structure/cable/yellow{ - icon_state = "2-4" +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cgv" = ( -/obj/structure/cable/yellow{ - icon_state = "4-8" +/obj/structure/cable{ + icon_state = "2-4" }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/engine, /area/engine/engineering) "cgw" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-8" }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 4; + name = "Chamber Bypass" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/engine, /area/engine/engineering) "cgx" = ( -/obj/structure/cable/yellow{ - icon_state = "2-8" +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 10 }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cgG" = ( /obj/structure/window/reinforced/fulltile, @@ -47789,8 +47601,8 @@ /area/hydroponics/garden/monastery) "cgL" = ( /obj/structure/closet/cabinet, -/obj/item/clothing/suit/holidaypriest, -/obj/item/clothing/suit/nun, +/obj/item/clothing/suit/chaplainsuit/holidaypriest, +/obj/item/clothing/suit/chaplainsuit/nun, /obj/item/clothing/head/nun_hood, /obj/machinery/button/door{ id = "Cell1"; @@ -47838,41 +47650,49 @@ /obj/structure/sign/warning/vacuum/external{ pixel_x = -32 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plating, /area/engine/engineering) "cgT" = ( /obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/engine, +/area/engine/supermatter) "cgU" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 6 }, -/turf/open/floor/plating/airless, +/obj/effect/landmark/event_spawn, +/turf/open/floor/engine, /area/engine/engineering) "cgV" = ( -/obj/structure/window/plasma/reinforced{ - dir = 4 +/obj/structure/cable{ + icon_state = "1-4" }, -/obj/structure/cable/yellow{ - icon_state = "0-8" +/obj/structure/cable{ + icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ - dir = 8 + dir = 4 }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/engine, /area/engine/engineering) "cgY" = ( /obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 4 }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/engine, +/area/engine/supermatter) "chb" = ( /obj/machinery/camera{ c_tag = "Monastery Kitchen"; @@ -47893,7 +47713,7 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -47905,7 +47725,7 @@ /turf/open/floor/grass, /area/hydroponics/garden/monastery) "chj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/grass, @@ -47987,31 +47807,23 @@ name = "Engineering External Access"; req_access_txt = "61" }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plating, /area/engine/engineering) "chw" = ( -/obj/structure/cable/yellow{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 8 }, -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "chA" = ( -/obj/effect/turf_decal/stripes/line{ +/obj/machinery/atmospherics/pipe/simple/green/visible{ dir = 4 }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/engine, /area/engine/engineering) "chB" = ( /obj/item/seeds/banana, @@ -48159,8 +47971,8 @@ /area/space/nearstation) "cio" = ( /obj/structure/closet/cabinet, -/obj/item/clothing/suit/holidaypriest, -/obj/item/clothing/suit/nun, +/obj/item/clothing/suit/chaplainsuit/holidaypriest, +/obj/item/clothing/suit/chaplainsuit/nun, /obj/item/clothing/head/nun_hood, /obj/machinery/button/door{ id = "Cell2"; @@ -48186,27 +47998,21 @@ /turf/open/floor/plasteel/showroomfloor, /area/chapel/main/monastery) "cir" = ( -/obj/effect/turf_decal/stripes/end{ +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/machinery/light{ - dir = 8 +/obj/machinery/camera/emp_proof{ + dir = 4 }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cit" = ( -/obj/machinery/the_singularitygen/tesla, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"civ" = ( -/obj/effect/turf_decal/stripes/end{ - dir = 4 +/obj/effect/turf_decal/stripes/line{ + dir = 2 }, -/obj/machinery/light{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/engine, +/area/engine/supermatter) "ciy" = ( /obj/item/reagent_containers/glass/bucket, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48226,7 +48032,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "ciD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -48260,22 +48066,21 @@ /turf/open/floor/plasteel/grimy, /area/chapel/main/monastery) "ciG" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/engine, /area/engine/engineering) "ciH" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 2 +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/door/airlock/engineering/glass/critical{ + heat_proof = 1; + name = "Supermatter Chamber"; + req_access_txt = "10" }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/open/floor/engine, +/area/engine/supermatter) "ciI" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/manifold/orange/visible, +/turf/open/floor/engine, /area/engine/engineering) "ciJ" = ( /obj/structure/closet/emcloset, @@ -48307,7 +48112,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "ciR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -48427,16 +48232,15 @@ /turf/open/floor/grass, /area/hydroponics/garden/monastery) "cjs" = ( -/obj/structure/cable/yellow{ - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/obj/machinery/meter, +/turf/open/floor/engine, /area/engine/engineering) "cjt" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" +/obj/machinery/atmospherics/pipe/manifold/orange/visible{ + dir = 8 }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cju" = ( /turf/closed/mineral, @@ -48510,11 +48314,11 @@ /turf/open/floor/carpet, /area/library) "cjR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -48567,7 +48371,7 @@ charge = 5e+006 }, /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -48625,22 +48429,6 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plasteel/dark, /area/library/lounge) -"ckr" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Port Aft"; - dir = 1; - network = list("engine") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) -"cks" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Starboard Aft"; - dir = 1; - network = list("engine") - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "ckt" = ( /obj/effect/spawner/lootdrop/maintenance, /turf/open/floor/plating/asteroid/airless, @@ -48716,7 +48504,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -48736,7 +48524,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -48917,7 +48705,7 @@ /turf/closed/wall/r_wall, /area/tcommsat/computer) "clz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating/airless, @@ -48928,13 +48716,13 @@ name = "Telecommunications External Access"; req_access_txt = "61" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/tcommsat/computer) "clB" = ( -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/closed/wall/r_wall, @@ -48949,7 +48737,7 @@ brightness = 3; dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -48981,7 +48769,7 @@ name = "Telecommunications External Access"; req_access_txt = "61" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -49019,7 +48807,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "clR" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -49034,7 +48822,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-4" }, /turf/open/floor/plasteel, @@ -49043,7 +48831,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "4-8" }, /turf/closed/wall, @@ -49053,7 +48841,7 @@ dir = 9 }, /obj/item/wrench, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -49070,10 +48858,10 @@ /area/tcommsat/computer) "clY" = ( /obj/item/beacon, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49083,7 +48871,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "clZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -49092,7 +48880,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "cma" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49105,19 +48893,19 @@ /turf/open/floor/plating, /area/tcommsat/computer) "cmb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plating, /area/tcommsat/computer) "cmc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49128,7 +48916,7 @@ /area/tcommsat/computer) "cmd" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -49181,7 +48969,7 @@ req_access_txt = "61" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -49191,7 +48979,7 @@ name = "Control Room"; req_access_txt = "19; 61" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -49210,9 +48998,9 @@ dir = 1; name = "Telecomms Monitoring APC"; areastring = "/area/tcommsat/computer"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -49257,7 +49045,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/yellow, /turf/open/floor/plasteel, /area/tcommsat/computer) @@ -49272,7 +49060,7 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "cmp" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply, @@ -49290,7 +49078,7 @@ /turf/open/floor/plating, /area/tcommsat/computer) "cmr" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, @@ -49361,7 +49149,7 @@ name = "Server Room"; req_access_txt = "61" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -49416,7 +49204,7 @@ /turf/closed/wall/r_wall, /area/tcommsat/server) "cmF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -49436,7 +49224,7 @@ /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "cmH" = ( -/obj/machinery/telecomms/message_server, +/obj/machinery/telecomms/message_server/preset, /turf/open/floor/circuit/telecomms/mainframe, /area/tcommsat/server) "cmK" = ( @@ -49709,9 +49497,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Dormitory APC"; - pixel_y = 25 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/sign/poster/official/random{ @@ -49729,7 +49517,7 @@ /obj/machinery/power/apc{ dir = 8; name = "Dormitory Maintenance APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable, /obj/machinery/light/small, @@ -49820,7 +49608,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "cou" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -49843,7 +49631,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -49855,7 +49643,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/camera{ @@ -49868,7 +49656,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "coF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49879,7 +49667,7 @@ }, /area/maintenance/department/crew_quarters/bar) "coG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49891,7 +49679,7 @@ }, /area/maintenance/department/crew_quarters/bar) "coH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49902,7 +49690,7 @@ }, /area/maintenance/department/crew_quarters/bar) "coJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -49935,7 +49723,7 @@ /turf/open/floor/plasteel/dark, /area/hallway/primary/central) "coW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -50440,7 +50228,7 @@ /area/hallway/primary/aft) "cqv" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ @@ -50449,14 +50237,14 @@ /turf/open/floor/plasteel, /area/hallway/primary/aft) "cqw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /turf/open/floor/plasteel, /area/hallway/primary/aft) "cqx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -50546,7 +50334,7 @@ dir = 1 }, /obj/effect/landmark/start/chief_engineer, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel, @@ -50765,7 +50553,7 @@ name = "Chapel Office APC"; pixel_x = 24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/dark, @@ -50805,7 +50593,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "csh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -50835,8 +50623,8 @@ /obj/structure/closet, /obj/item/storage/backpack/cultpack, /obj/item/clothing/head/nun_hood, -/obj/item/clothing/suit/nun, -/obj/item/clothing/suit/holidaypriest, +/obj/item/clothing/suit/chaplainsuit/nun, +/obj/item/clothing/suit/chaplainsuit/holidaypriest, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -50874,7 +50662,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "csr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, @@ -50953,7 +50741,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "csF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/red{ @@ -50969,7 +50757,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "csG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -50985,7 +50773,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "csM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/camera{ @@ -50997,26 +50785,26 @@ /turf/open/floor/plasteel, /area/chapel/office) "csN" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "csO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "csQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -51148,7 +50936,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "ctK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -51160,13 +50948,13 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "ctL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -51419,7 +51207,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cuz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51450,9 +51238,7 @@ /turf/open/floor/grass, /area/hydroponics/garden/monastery) "cuG" = ( -/obj/structure/closet/secure_closet/freezer/fridge{ - req_access = null - }, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/machinery/light/small{ dir = 2 }, @@ -51485,9 +51271,9 @@ /obj/machinery/power/apc{ dir = 8; name = "Garden APC"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/light/small{ @@ -51551,10 +51337,10 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cuV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -51563,14 +51349,14 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cuW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cuX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock{ @@ -51735,7 +51521,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cvu" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -51811,7 +51597,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cvE" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -51821,7 +51607,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cvF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51840,10 +51626,10 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cvH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -51863,7 +51649,7 @@ /area/chapel/main/monastery) "cvI" = ( /obj/machinery/light/small, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51889,7 +51675,7 @@ /area/chapel/main/monastery) "cvJ" = ( /obj/machinery/light/small, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -51912,7 +51698,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -51965,19 +51751,19 @@ /turf/open/floor/plasteel/dark, /area/chapel/main/monastery) "cvX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/closed/wall/mineral/iron, /area/maintenance/department/chapel/monastery) "cvY" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/closed/wall/mineral/iron, /area/maintenance/department/chapel/monastery) "cvZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/closed/wall/mineral/iron, @@ -51986,7 +51772,7 @@ /turf/closed/wall/mineral/iron, /area/maintenance/department/chapel/monastery) "cwc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/maintenance{ @@ -52003,7 +51789,7 @@ /obj/machinery/door/airlock/grunge{ name = "Library" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -52032,7 +51818,7 @@ /area/chapel/main/monastery) "cwm" = ( /obj/machinery/portable_atmospherics/canister/oxygen, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -52041,7 +51827,7 @@ /turf/open/floor/plating, /area/maintenance/department/chapel/monastery) "cwn" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/item/storage/toolbox/mechanical, @@ -52057,12 +51843,12 @@ /obj/machinery/power/apc{ dir = 1; name = "Monastery Maintenance APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -52072,7 +51858,7 @@ /area/maintenance/department/chapel/monastery) "cwp" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -52084,7 +51870,7 @@ /obj/item/twohanded/required/kirbyplants{ icon_state = "plant-22" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -52208,7 +51994,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -52272,7 +52058,7 @@ }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, @@ -52308,7 +52094,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -52357,7 +52143,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -52405,7 +52191,7 @@ /obj/machinery/light/small{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -52441,7 +52227,7 @@ dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -52488,7 +52274,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -53020,7 +52806,7 @@ }, /area/maintenance/department/crew_quarters/dorms) "cBx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53038,7 +52824,7 @@ /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) "cBy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53086,27 +52872,17 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/chapel/office) -"cBQ" = ( -/obj/machinery/power/rad_collector, -/turf/open/floor/plating, -/area/engine/engineering) "cBR" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1, +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 1; + name = "Freezer Bypass" }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cBS" = ( -/obj/structure/cable/yellow{ - icon_state = "1-8" - }, -/obj/structure/cable/yellow{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/simple/green/visible, +/turf/open/floor/engine, /area/engine/engineering) "cBT" = ( /obj/effect/spawner/structure/window/plasma/reinforced, @@ -53118,6 +52894,12 @@ "cCl" = ( /turf/closed/wall/r_wall, /area/science/lab) +"cCp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/engine, +/area/engine/engineering) "cCt" = ( /turf/open/floor/plasteel/white, /area/science/lab) @@ -53136,10 +52918,11 @@ /turf/open/floor/plasteel/white, /area/engine/gravity_generator) "cCI" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light{ + light_color = "#cee5d2" }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "cCO" = ( /obj/structure/disposalpipe/segment{ @@ -53184,7 +52967,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -53193,17 +52976,17 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/department/cargo) "cCZ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plating, @@ -53211,6 +52994,13 @@ "cDa" = ( /turf/closed/wall, /area/quartermaster/warehouse) +"cDy" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/orange/visible, +/turf/open/floor/engine, +/area/engine/engineering) "cDB" = ( /turf/open/floor/plating{ icon_state = "platingdmg3" @@ -53238,6 +53028,16 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) +"cJw" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "cKA" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -53350,24 +53150,33 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/department/engine) -"cZt" = ( -/obj/structure/cable/yellow{ - icon_state = "0-4" +"cYq" = ( +/obj/structure/cable{ + icon_state = "4-8" }, -/obj/structure/window/plasma/reinforced{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) +"cZt" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, /area/engine/engineering) "daY" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/maintenance/disposal) "dbi" = ( -/obj/machinery/vr_sleeper, /turf/open/floor/plasteel, /area/crew_quarters/dorms) "dci" = ( @@ -53380,11 +53189,17 @@ /obj/structure/barricade/wooden, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"dfr" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "dgg" = ( /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -53403,10 +53218,10 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "dgI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -53416,7 +53231,7 @@ /area/maintenance/department/security/brig) "dhz" = ( /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -53436,7 +53251,7 @@ /area/maintenance/department/science) "dmT" = ( /obj/machinery/shieldwallgen/xenobiologyaccess, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/sign/warning/electricshock{ @@ -53444,21 +53259,11 @@ }, /turf/open/floor/plating, /area/science/xenobiology) -"dnS" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "doo" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating{ @@ -53476,7 +53281,7 @@ dir = 1; pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -53493,6 +53298,13 @@ }, /turf/open/floor/plasteel/dark, /area/chapel/office) +"dqb" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 5 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) "dqw" = ( /obj/machinery/door/airlock/maintenance{ req_access_txt = "0"; @@ -53532,7 +53344,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating{ @@ -53572,16 +53384,16 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "dye" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /obj/structure/sign/departments/science{ pixel_y = 32 }, @@ -53608,7 +53420,7 @@ }, /area/maintenance/department/engine) "dJm" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/research/glass{ @@ -53620,7 +53432,7 @@ "dKs" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -53635,13 +53447,6 @@ "dMB" = ( /turf/open/floor/plasteel, /area/quartermaster/sorting) -"dMG" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "dMI" = ( /obj/item/clothing/suit/apron/surgical, /turf/open/floor/plating{ @@ -53656,7 +53461,7 @@ /area/maintenance/department/science) "dNr" = ( /obj/structure/cable, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/sign/warning{ @@ -53675,12 +53480,6 @@ }, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) -"dUv" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "dVI" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 4; @@ -53706,18 +53505,30 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, /area/engine/engineering) -"dZj" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 +"dWO" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 }, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/caution, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"dYQ" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 5 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"dZj" = ( +/obj/machinery/atmospherics/components/binary/pump, +/turf/open/floor/engine, /area/engine/engineering) "eaw" = ( /obj/structure/closet, @@ -53765,7 +53576,7 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -53800,18 +53611,33 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "elk" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/lawoffice) "emV" = ( /turf/open/space, /area/space/nearstation) +"eoo" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "epJ" = ( /obj/structure/sign/poster/contraband/random{ pixel_y = 32 }, /turf/open/floor/carpet, /area/maintenance/department/crew_quarters/dorms) +"eqg" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/turf/open/floor/engine, +/area/engine/engineering) "eqD" = ( /obj/structure/sign/poster/contraband/random{ pixel_x = -32 @@ -53827,7 +53653,7 @@ req_access_txt = "10" }, /obj/effect/turf_decal/delivery, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -53848,6 +53674,10 @@ }, /turf/open/floor/plating, /area/maintenance/department/science) +"evB" = ( +/obj/effect/spawner/structure/window/plasma/reinforced, +/turf/open/floor/plating, +/area/engine/engineering) "ezF" = ( /obj/structure/table/wood, /obj/item/paper_bin, @@ -53858,7 +53688,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, @@ -53880,27 +53710,27 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "eCw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/department/cargo) "eCK" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/department/cargo) "eDC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel, @@ -53917,6 +53747,11 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) +"eGh" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "eHI" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/plasteel, @@ -53927,6 +53762,16 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"eJU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 10 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) "eLt" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/tile/neutral{ @@ -53967,6 +53812,19 @@ /obj/item/gavelhammer, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"ePB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "ePU" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -53992,7 +53850,7 @@ /area/science/xenobiology) "eQZ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -54027,10 +53885,13 @@ }, /turf/open/floor/plating, /area/engine/engineering) -"eWi" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plasteel/dark, -/area/engine/engineering) +"eWo" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 5 + }, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/engine/supermatter) "eXo" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/engine, @@ -54062,11 +53923,15 @@ /obj/item/stack/cable_coil/cut/random, /turf/open/floor/plating, /area/maintenance/department/cargo) +"fbC" = ( +/obj/machinery/atmospherics/components/trinary/filter, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "fdQ" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -54121,11 +53986,25 @@ }, /turf/open/floor/plasteel, /area/construction/mining/aux_base) +"fhE" = ( +/obj/machinery/camera/emp_proof{ + c_tag = "Engine Containment Port Aft"; + dir = 1; + network = list("engine") + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/engine, +/area/engine/engineering) "fhM" = ( /obj/item/storage/secure/safe{ pixel_x = -22 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -54159,6 +54038,12 @@ }, /turf/open/floor/plasteel, /area/science/explab) +"flQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "fmh" = ( /turf/open/floor/wood, /area/maintenance/department/engine) @@ -54182,7 +54067,7 @@ /turf/open/space/basic, /area/space/nearstation) "fow" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/red{ @@ -54194,13 +54079,33 @@ /turf/open/floor/plasteel, /area/security/checkpoint/customs) "fpT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/department/engine) +"fsA" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"ftb" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/engine, +/area/engine/engineering) "ftp" = ( /turf/open/floor/plating{ icon_state = "platingdmg1" @@ -54216,7 +54121,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/wood, @@ -54229,10 +54134,10 @@ /area/engine/atmos) "fvb" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/plating, @@ -54244,6 +54149,17 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) +"fwi" = ( +/obj/machinery/camera/emp_proof{ + c_tag = "Engine Containment Starboard Fore"; + dir = 2; + network = list("engine") + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) "fwl" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -54258,45 +54174,60 @@ /area/science/mixing) "fwI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/maintenance/department/cargo) -"fwR" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plasteel/dark, -/area/engine/engineering) "fyF" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 5 +/obj/structure/cable{ + icon_state = "1-2" }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/button/door{ + dir = 1; + id = "Supermatter"; + name = "Shielding Control"; + pixel_x = -25; + req_access_txt = "11" + }, +/turf/open/floor/engine, /area/engine/engineering) "fyO" = ( -/turf/open/space/basic, -/area/engine/engineering) +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/engine/supermatter) "fzu" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, /obj/item/clothing/gloves/color/black, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/maintenance/department/engine) "fAx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"fBp" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, +/turf/closed/wall/r_wall, +/area/engine/atmos) "fBt" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -54326,15 +54257,35 @@ }, /turf/open/floor/plasteel/dark, /area/science/mixing) -"fFv" = ( -/obj/structure/lattice, +"fBJ" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible, /turf/open/space/basic, +/area/space) +"fDm" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8 + }, +/obj/machinery/light/small, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/open/floor/engine, +/area/maintenance/disposal/incinerator) +"fEl" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"fFv" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, /area/engine/engineering) "fIu" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/vr_sleeper, /turf/open/floor/plasteel, /area/crew_quarters/dorms) "fIN" = ( @@ -54365,7 +54316,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "fQf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -54413,6 +54364,13 @@ }, /turf/open/floor/plasteel, /area/crew_quarters/kitchen) +"gbu" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Supermatter Mix Pump" + }, +/turf/open/floor/plasteel, +/area/engine/atmos) "gdJ" = ( /obj/structure/table/glass, /obj/item/folder/blue, @@ -54457,7 +54415,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -54469,7 +54427,7 @@ /turf/open/floor/plating, /area/chapel/office) "giO" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -54489,7 +54447,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment{ @@ -54505,6 +54463,13 @@ }, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"gkz" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Freezer Return" + }, +/turf/open/floor/engine, +/area/engine/engineering) "gkR" = ( /obj/item/twohanded/required/kirbyplants/random, /obj/structure/extinguisher_cabinet{ @@ -54556,7 +54521,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -54623,7 +54588,7 @@ }, /area/hallway/secondary/exit/departure_lounge) "gpI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark/telecomms, @@ -54632,10 +54597,10 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -54722,6 +54687,16 @@ }, /turf/open/floor/plasteel/dark, /area/science/explab) +"gEI" = ( +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 4; + name = "Hot to Cold Loop" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "gFo" = ( /obj/structure/window/reinforced, /obj/structure/table/glass, @@ -54776,23 +54751,23 @@ /area/medical/chemistry) "gHZ" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/maintenance/department/engine) "gIC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -54819,7 +54794,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/spawner/lootdrop/maintenance, @@ -54886,7 +54861,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "gUb" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plating, @@ -54907,6 +54882,15 @@ /obj/structure/grille, /turf/open/space/basic, /area/space/nearstation) +"ham" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/supermatter) "heC" = ( /obj/machinery/power/apc/highcap/five_k{ dir = 8; @@ -54993,6 +54977,19 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"hqF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" + }, +/obj/machinery/camera/emp_proof{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "hsW" = ( /obj/effect/turf_decal/tile/blue{ dir = 1 @@ -55011,10 +55008,10 @@ name = "containment blast door" }, /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /turf/open/floor/engine, @@ -55041,7 +55038,7 @@ /turf/open/floor/plating, /area/security/execution/transfer) "hwx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55079,21 +55076,18 @@ dir = 1 }, /obj/item/wrench, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/department/engine) "hzd" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, @@ -55101,8 +55095,19 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/solars/port) +"hCE" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1{ + dir = 10 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/engine, +/area/engine/engineering) "hDG" = ( /obj/machinery/door/airlock/engineering{ name = "Auxillary Base Construction"; @@ -55112,6 +55117,13 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plasteel, /area/construction/mining/aux_base) +"hEU" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/turf/open/space/basic, +/area/space/nearstation) "hEX" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -55161,11 +55173,15 @@ }, /turf/open/floor/plasteel, /area/quartermaster/office) +"hMa" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/maintenance/disposal/incinerator) "hOx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55177,6 +55193,18 @@ /obj/item/weldingtool, /turf/open/floor/plating, /area/maintenance/department/cargo) +"hPG" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1{ + dir = 10 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "hPN" = ( /obj/structure/table/glass, /obj/item/clothing/glasses/science, @@ -55200,14 +55228,19 @@ /area/maintenance/department/science) "hQz" = ( /obj/structure/closet/emcloset/anchored, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "1-2" }, /turf/open/floor/plating, /area/tcommsat/computer) "hQC" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/engine, /area/engine/engineering) "hSM" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -55246,7 +55279,7 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "hUJ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55254,6 +55287,25 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"hUX" = ( +/obj/machinery/computer/turbine_computer{ + dir = 8; + id = "incineratorturbine" + }, +/obj/machinery/button/door/incinerator_vent_atmos_main{ + pixel_x = 24; + pixel_y = 6 + }, +/obj/machinery/button/door/incinerator_vent_atmos_aux{ + pixel_x = 24; + pixel_y = -6 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "hVx" = ( /obj/structure/chair{ dir = 4 @@ -55284,7 +55336,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "hZB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -55295,6 +55347,17 @@ }, /turf/open/floor/plating, /area/maintenance/department/engine) +"hZQ" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + dir = 9 + }, +/obj/structure/window/plasma/reinforced/spawner/west, +/obj/machinery/power/rad_collector/anchored, +/turf/open/floor/engine, +/area/engine/supermatter) "iab" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, @@ -55320,11 +55383,18 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "ick" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/dark, /area/library) +"igl" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "igE" = ( /obj/structure/table/reinforced, /obj/machinery/button/door{ @@ -55337,7 +55407,7 @@ dir = 8; layer = 2.9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ @@ -55361,7 +55431,7 @@ /area/science/xenobiology) "ijF" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -55373,6 +55443,12 @@ icon_state = "platingdmg3" }, /area/maintenance/department/science) +"ika" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 10 + }, +/turf/closed/wall/r_wall, +/area/engine/supermatter) "ikB" = ( /obj/structure/closet/secure_closet/medical2, /turf/open/floor/plating, @@ -55381,6 +55457,16 @@ /obj/machinery/processor/slime, /turf/open/floor/plasteel/white, /area/science/xenobiology) +"imB" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "ioj" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -55396,6 +55482,13 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) +"ipH" = ( +/obj/effect/turf_decal/caution, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/supermatter) "iqc" = ( /turf/open/floor/plasteel/stairs/right, /area/maintenance/department/crew_quarters/dorms) @@ -55420,7 +55513,7 @@ name = "Test Chamber"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/green{ @@ -55432,7 +55525,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "iyg" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -55443,7 +55536,12 @@ /area/maintenance/department/engine) "iyJ" = ( /obj/structure/disposalpipe/segment, -/turf/closed/wall/r_wall, +/obj/effect/spawner/structure/window/plasma/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SupermatterExternal"; + name = "radiation shutters" + }, +/turf/open/floor/plating, /area/engine/engineering) "izB" = ( /obj/machinery/door/airlock/external{ @@ -55459,8 +55557,13 @@ luminosity = 2 }, /area/maintenance/department/science) +"izP" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple, +/turf/open/space/basic, +/area/space/nearstation) "iAx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -55469,6 +55572,11 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden, /turf/open/floor/plasteel, /area/engine/engineering) +"iBq" = ( +/obj/machinery/atmospherics/pipe/layer_manifold, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space) "iBJ" = ( /obj/machinery/camera{ c_tag = "Telecomms External Fore"; @@ -55476,7 +55584,7 @@ network = list("tcomms"); start_active = 1 }, -/obj/structure/cable/yellow{ +/obj/structure/cable{ icon_state = "0-2" }, /turf/open/floor/plating/airless, @@ -55492,13 +55600,9 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "iCs" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1, +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/open/floor/engine, /area/engine/engineering) "iCV" = ( /obj/effect/turf_decal/stripes/line{ @@ -55533,7 +55637,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -55549,6 +55653,10 @@ }, /turf/open/floor/plasteel, /area/science/xenobiology) +"iLF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/engine, +/area/engine/engineering) "iPj" = ( /obj/machinery/igniter{ id = "xenoigniter"; @@ -55598,13 +55706,13 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, /area/security/execution/transfer) "iSz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55615,6 +55723,13 @@ }, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"iUE" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/engine/engineering) "iUX" = ( /turf/closed/wall/r_wall, /area/science/mixing/chamber) @@ -55633,6 +55748,23 @@ }, /turf/open/floor/plating, /area/maintenance/department/cargo) +"iYO" = ( +/obj/effect/spawner/structure/window/plasma/reinforced, +/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"jcB" = ( +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/machinery/door/airlock/external{ + name = "Atmospherics External Access"; + req_access_txt = "24" + }, +/turf/open/floor/plating, +/area/maintenance/disposal/incinerator) "jcT" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 @@ -55668,7 +55800,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -55676,6 +55808,13 @@ }, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"jhq" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/turf/open/space/basic, +/area/space/nearstation) "jhD" = ( /obj/structure/sink{ dir = 8; @@ -55698,6 +55837,21 @@ }, /turf/open/floor/wood, /area/lawoffice) +"jkf" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "Filtered Loop to Chamber" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/caution{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "jlb" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55711,7 +55865,7 @@ /obj/machinery/requests_console{ announcementConsole = 0; department = "Engineering"; - departmentType = 4; + departmentType = 3; name = "Engineering RC"; pixel_x = -32 }, @@ -55730,7 +55884,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -55747,7 +55901,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "jtf" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/green, @@ -55760,7 +55914,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "jvi" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/firealarm{ @@ -55799,6 +55953,30 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"jza" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) +"jzi" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/engine, +/area/engine/engineering) "jzz" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/sign/warning/vacuum/external, @@ -55820,21 +55998,11 @@ /turf/open/floor/plating, /area/maintenance/department/cargo) "jBn" = ( -/obj/machinery/camera/emp_proof{ - c_tag = "Engine Containment Starboard Fore"; - dir = 2; - network = list("engine") - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable{ - icon_state = "2-4" - }, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plating/airless, +/obj/effect/landmark/event_spawn, +/turf/open/floor/engine, /area/engine/engineering) "jCv" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -55875,7 +56043,7 @@ /area/maintenance/department/science) "jFO" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/carpet, @@ -55892,15 +56060,34 @@ }, /turf/open/floor/plating, /area/maintenance/department/crew_quarters/dorms) -"jLW" = ( -/obj/machinery/atmospherics/pipe/simple/purple/visible, -/turf/closed/wall/r_wall, -/area/maintenance/disposal/incinerator) +"jMt" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/airalarm/engine{ + pixel_y = 22 + }, +/turf/open/floor/engine, +/area/engine/supermatter) "jMS" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /obj/effect/spawner/xmastree, /turf/open/floor/carpet, /area/library) +"jOe" = ( +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/machinery/door/airlock/engineering/glass/critical{ + heat_proof = 1; + name = "Supermatter Chamber"; + req_access_txt = "10" + }, +/turf/open/floor/engine, +/area/engine/supermatter) "jOB" = ( /turf/open/floor/plating, /area/storage/emergency/starboard) @@ -55929,7 +56116,7 @@ dir = 5 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -55941,7 +56128,7 @@ /obj/machinery/light{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -55956,7 +56143,7 @@ /turf/closed/wall, /area/maintenance/department/engine) "jTh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -56020,6 +56207,16 @@ icon_state = "platingdmg3" }, /area/maintenance/department/engine) +"kbV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) "kfh" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 @@ -56036,6 +56233,19 @@ /obj/item/storage/book/bible, /turf/open/floor/carpet, /area/chapel/office) +"kfS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/obj/machinery/power/emitter/anchored{ + dir = 8; + state = 2 + }, +/turf/open/floor/plating, +/area/engine/engineering) "kgR" = ( /obj/structure/toilet{ dir = 4 @@ -56101,18 +56311,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/engine/engineering) -"knw" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "kpK" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 @@ -56133,6 +56331,14 @@ }, /turf/open/floor/plating, /area/maintenance/department/engine) +"ktM" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/door/airlock/engineering/glass{ + name = "Supermatter Engine"; + req_access_txt = "10" + }, +/turf/open/floor/plating, +/area/engine/engineering) "kvj" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -56162,7 +56368,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "kxj" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/carpet, @@ -56279,7 +56485,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -56319,7 +56525,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "kJo" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -56334,19 +56540,30 @@ icon_state = "platingdmg3" }, /area/maintenance/department/security/brig) -"kJN" = ( -/obj/machinery/field/generator, -/obj/machinery/light{ - dir = 4; - light_color = "#c1caff" - }, -/turf/open/floor/plating, -/area/engine/engineering) "kKI" = ( /obj/effect/spawner/lootdrop/maintenance, /obj/structure/closet, /turf/open/floor/plating, /area/maintenance/department/cargo) +"kMO" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/green/visible{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/caution{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) "kNf" = ( /obj/machinery/door/window/northleft{ base_state = "right"; @@ -56355,7 +56572,7 @@ name = "Containment Pen #4"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/poddoor/preopen{ @@ -56381,7 +56598,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -56414,11 +56631,20 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"kSw" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) "kSF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -56437,16 +56663,49 @@ }, /turf/open/floor/plating, /area/storage/emergency/port) -"kWQ" = ( +"kUj" = ( /obj/structure/cable{ - icon_state = "0-8" + icon_state = "1-2" }, -/obj/machinery/power/emitter/anchored{ - dir = 8; - state = 2 +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/turf/open/floor/plating/airless, +/obj/machinery/button/door{ + id = "Supermatter"; + name = "Shielding Control"; + pixel_x = 25; + req_access_txt = "11" + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/engine, /area/engine/engineering) +"kWQ" = ( +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) +"kXe" = ( +/obj/machinery/door/airlock/external{ + name = "Engineering External Access"; + req_access_txt = "10;13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"lbC" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/turf/open/space/basic, +/area/space/nearstation) "lcU" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -56474,18 +56733,28 @@ }, /turf/open/floor/plating, /area/security/execution/transfer) +"lfH" = ( +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/engine, +/area/engine/engineering) +"lhu" = ( +/obj/machinery/shieldgen, +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/floor/plating, +/area/engine/engineering) "lhA" = ( /obj/machinery/atmospherics/pipe/manifold/general/visible, /turf/open/floor/plasteel/dark, /area/science/xenobiology) "liR" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 }, -/obj/structure/cable{ - icon_state = "1-4" - }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, /area/engine/engineering) "lje" = ( /obj/machinery/atmospherics/pipe/simple/general/hidden, @@ -56530,6 +56799,17 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/aft) +"ltl" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/space, +/area/space/nearstation) +"ltu" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) "lzJ" = ( /obj/structure/closet/crate/bin, /turf/open/floor/carpet, @@ -56544,6 +56824,12 @@ "lAs" = ( /turf/closed/wall, /area/quartermaster/sorting) +"lAK" = ( +/obj/machinery/atmospherics/pipe/manifold/general/visible{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "lAR" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -56556,6 +56842,17 @@ }, /turf/open/floor/plasteel/white, /area/science/explab) +"lBJ" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "Supermatter"; + name = "supermatter shielding" + }, +/obj/item/wrench, +/turf/open/floor/plating, +/area/engine/supermatter) "lBP" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -56572,7 +56869,7 @@ /turf/open/space/basic, /area/space/nearstation) "lFh" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/holopad, @@ -56581,6 +56878,13 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"lFA" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) "lGp" = ( /obj/structure/weightmachine/weightlifter, /turf/open/floor/plasteel/dark, @@ -56597,7 +56901,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "lGS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/green{ @@ -56621,11 +56925,11 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "lIr" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, @@ -56640,7 +56944,7 @@ req_access_txt = "0" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -56650,7 +56954,7 @@ /area/storage/emergency/starboard) "lMU" = ( /obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -56694,22 +56998,22 @@ }, /turf/open/floor/plating, /area/maintenance/department/engine) -"lRY" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "lTC" = ( /obj/item/shard, /obj/effect/turf_decal/stripes/line{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating, /area/maintenance/department/engine) +"lWv" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "lWy" = ( /turf/open/floor/plating, /area/maintenance/department/science) @@ -56735,11 +57039,24 @@ /obj/item/clothing/head/beret, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"lXk" = ( +/obj/machinery/door/airlock/external{ + name = "Engineering External Access"; + req_access_txt = "10;13" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) "mal" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -56782,10 +57099,10 @@ /turf/open/floor/plasteel/white, /area/medical/chemistry) "mci" = ( -/obj/machinery/portable_atmospherics/canister/toxins, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/power/port_gen/pacman, /turf/open/floor/plating, /area/engine/engineering) "mdL" = ( @@ -56801,11 +57118,17 @@ /turf/open/floor/plasteel/white, /area/science/lab) "meF" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"mgX" = ( /obj/structure/cable{ icon_state = "1-2" }, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plating/airless, +/turf/closed/wall/r_wall, /area/engine/engineering) "mlr" = ( /obj/structure/lattice, @@ -56831,9 +57154,9 @@ /turf/open/floor/wood, /area/maintenance/department/crew_quarters/dorms) "mpd" = ( -/obj/structure/lattice, -/turf/open/space, -/area/engine/engineering) +/obj/effect/spawner/structure/window/plasma/reinforced, +/turf/open/floor/plating, +/area/engine/supermatter) "mpy" = ( /obj/structure/table/wood, /obj/item/paper_bin, @@ -56852,9 +57175,13 @@ }, /turf/open/floor/plasteel/white, /area/science/xenobiology) +"mqH" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible, +/turf/open/floor/engine, +/area/engine/engineering) "msX" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/door/poddoor/preopen{ @@ -56874,7 +57201,7 @@ /turf/closed/wall, /area/maintenance/department/security/brig) "mtI" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc/highcap/five_k{ @@ -56902,19 +57229,17 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "mwG" = ( -/obj/structure/cable{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/structure/sign/warning/vacuum/external{ - pixel_x = 32 - }, -/turf/open/floor/plating, +/turf/open/floor/engine, /area/engine/engineering) "mxy" = ( /obj/machinery/power/terminal{ dir = 4 }, -/obj/structure/cable/yellow, +/obj/structure/cable, /turf/open/floor/plating, /area/tcommsat/computer) "myu" = ( @@ -57004,13 +57329,13 @@ /turf/open/floor/plasteel/dark, /area/library/lounge) "mKk" = ( -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-8" }, /turf/open/floor/plating/airless, /area/space/nearstation) "mLB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57035,6 +57360,20 @@ }, /turf/open/floor/plating, /area/science/xenobiology) +"mOH" = ( +/obj/machinery/button/ignition/incinerator/atmos{ + pixel_x = 26; + pixel_y = -6 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "mPh" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57054,7 +57393,7 @@ /turf/open/floor/plating, /area/maintenance/department/science) "mTS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -57062,6 +57401,12 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"mUa" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 6 + }, +/turf/open/floor/engine, +/area/engine/engineering) "mVM" = ( /turf/open/floor/plating/airless, /area/space/nearstation) @@ -57074,6 +57419,15 @@ "mZE" = ( /turf/open/space/basic, /area/space/nearstation) +"mZR" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/portable_atmospherics/canister, +/turf/open/floor/engine, +/area/engine/engineering) "naq" = ( /obj/structure/disposaloutlet{ dir = 4 @@ -57089,6 +57443,12 @@ icon_state = "platingdmg3" }, /area/maintenance/department/science) +"ndP" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/turf/open/space/basic, +/area/space) "nev" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 10 @@ -57101,6 +57461,16 @@ }, /turf/open/floor/plating, /area/maintenance/department/engine) +"nfj" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4; + light_color = "#e8eaff" + }, +/turf/open/floor/engine, +/area/engine/engineering) "nfz" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -57149,6 +57519,13 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/chapel/office) +"nmx" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 8 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "nnf" = ( /obj/effect/turf_decal/tile/yellow, /obj/effect/turf_decal/tile/yellow{ @@ -57173,8 +57550,14 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, /area/maintenance/department/engine) +"nqj" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "nqV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/general/visible{ @@ -57183,6 +57566,13 @@ /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"nrQ" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Filter to Freezer" + }, +/turf/open/floor/engine, +/area/engine/engineering) "nsy" = ( /obj/structure/table, /obj/item/stack/sheet/metal/fifty, @@ -57199,9 +57589,9 @@ dir = 8; name = "Auxillary Base Construction APC"; areastring = "/area/construction/mining/aux_base"; - pixel_x = -24 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -57216,7 +57606,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -57234,6 +57624,15 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"nwg" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "nxT" = ( /obj/machinery/smartfridge/extract/preloaded, /turf/open/floor/plasteel, @@ -57266,17 +57665,10 @@ }, /area/maintenance/department/science) "nAs" = ( -/obj/structure/cable{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/obj/machinery/door/airlock/external{ - name = "Engineering External Access"; - req_access_txt = "10;13" - }, -/turf/open/floor/plating, +/turf/open/floor/engine, /area/engine/engineering) "nBw" = ( /obj/machinery/computer/crew{ @@ -57316,7 +57708,7 @@ /area/hallway/secondary/exit/departure_lounge) "nEb" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable, @@ -57354,7 +57746,7 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -57380,7 +57772,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "nMG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -57395,7 +57787,7 @@ dir = 2; network = list("tcomms") }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/yellow{ @@ -57406,6 +57798,15 @@ }, /turf/open/floor/plasteel, /area/tcommsat/computer) +"nMP" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 9 + }, +/turf/open/floor/engine, +/area/engine/engineering) "nNJ" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -57436,6 +57837,13 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"nPh" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/cyan{ + icon_state = "1-2" + }, +/turf/open/floor/plasteel, +/area/engine/engineering) "nPA" = ( /obj/item/chair, /turf/open/floor/plating, @@ -57450,6 +57858,18 @@ }, /turf/open/floor/plating, /area/maintenance/department/engine) +"nQt" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) "nSj" = ( /obj/structure/grille/broken, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -57462,6 +57882,12 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/lawoffice) +"nUq" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/visible{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) "nVz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/structure/sign/directions/evac{ @@ -57494,8 +57920,17 @@ /obj/effect/mapping_helpers/airlock/abandoned, /turf/open/floor/plating, /area/maintenance/department/cargo) +"oag" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/supermatter) "obj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57530,6 +57965,10 @@ }, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"oex" = ( +/obj/structure/lattice, +/turf/open/space/basic, +/area/space) "ofN" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/blue, @@ -57539,7 +57978,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "ofX" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57608,7 +58047,7 @@ name = "Server Room"; req_access_txt = "61" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -57658,6 +58097,14 @@ /obj/structure/window/reinforced, /turf/open/floor/plasteel, /area/science/xenobiology) +"ots" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "ous" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/loading_area{ @@ -57733,16 +58180,13 @@ /turf/closed/wall/r_wall, /area/science/xenobiology) "oCn" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/start/lawyer, /turf/open/floor/carpet, /area/lawoffice) "oCX" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, @@ -57750,6 +58194,9 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/solars/starboard) "oDP" = ( @@ -57775,6 +58222,17 @@ icon_state = "platingdmg3" }, /area/maintenance/department/science) +"oEN" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "Supermatter"; + name = "supermatter shielding" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/engine/supermatter) "oEW" = ( /obj/machinery/button/door{ id = "misclab"; @@ -57823,14 +58281,17 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, /area/engine/engineering) "oKa" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/maintenance/two, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -57843,6 +58304,9 @@ }, /turf/open/floor/plasteel/cafeteria, /area/hallway/secondary/exit/departure_lounge) +"oMk" = ( +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "oMN" = ( /turf/open/floor/plasteel/stairs/left, /area/maintenance/department/crew_quarters/dorms) @@ -57858,7 +58322,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "oPx" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57884,7 +58348,7 @@ /area/maintenance/department/cargo) "oSc" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/structure/disposalpipe/segment, @@ -57895,13 +58359,13 @@ /turf/open/floor/engine, /area/science/xenobiology) "oSL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -57913,7 +58377,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/sorting/mail/flip{ @@ -57926,7 +58390,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small{ @@ -57948,7 +58412,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -57979,6 +58443,12 @@ }, /turf/open/floor/plasteel/white, /area/security/execution/transfer) +"oXQ" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, +/turf/open/space, +/area/space/nearstation) "oYj" = ( /obj/effect/turf_decal/loading_area{ dir = 4 @@ -57991,6 +58461,12 @@ }, /turf/open/floor/plating, /area/maintenance/department/engine) +"paI" = ( +/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) "pbm" = ( /obj/machinery/door/airlock/external{ name = "Pod Docking Bay" @@ -58015,7 +58491,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "pdW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -58028,10 +58504,10 @@ /area/science/explab) "pfz" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, @@ -58052,7 +58528,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "pjH" = ( -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "1-2" }, /turf/open/floor/plating/airless, @@ -58067,6 +58543,12 @@ /obj/structure/piano, /turf/open/floor/plasteel/dark, /area/maintenance/department/crew_quarters/dorms) +"pmj" = ( +/obj/structure/lattice, +/obj/structure/lattice, +/obj/structure/grille, +/turf/open/space, +/area/space/nearstation) "pnU" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/on{ dir = 4; @@ -58087,19 +58569,15 @@ }, /turf/open/floor/plasteel/white/corner, /area/hallway/secondary/exit/departure_lounge) -"prQ" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, +"pth" = ( /obj/effect/turf_decal/stripes/corner{ - dir = 8 + dir = 1 }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "pvK" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -58116,7 +58594,7 @@ /turf/open/floor/plasteel/dark, /area/hallway/secondary/exit/departure_lounge) "pwj" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -58131,8 +58609,16 @@ }, /turf/open/space/basic, /area/space/nearstation) +"pAb" = ( +/obj/machinery/power/emitter, +/obj/machinery/light{ + dir = 8; + light_color = "#e8eaff" + }, +/turf/open/floor/plating, +/area/engine/engineering) "pBD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/sign/warning{ @@ -58159,7 +58645,7 @@ /turf/open/floor/plasteel/dark, /area/chapel/office) "pFy" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -58186,11 +58672,30 @@ }, /turf/open/floor/wood, /area/crew_quarters/heads/hop) +"pIh" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 1; + frequency = 1441; + id = "inc_in" + }, +/turf/open/floor/plating/airless, +/area/maintenance/disposal/incinerator) "pKd" = ( /obj/effect/spawner/lootdrop/maintenance/two, /obj/structure/closet/crate, /turf/open/floor/plating, /area/maintenance/department/cargo) +"pKg" = ( +/obj/machinery/camera/emp_proof{ + c_tag = "Engine Containment Starboard Aft"; + dir = 1; + network = list("engine") + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/engine, +/area/engine/engineering) "pMG" = ( /obj/structure/sink{ dir = 8; @@ -58232,7 +58737,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/red{ @@ -58270,16 +58775,22 @@ icon_state = "wood-broken5" }, /area/maintenance/department/engine) +"pWb" = ( +/obj/structure/lattice, +/obj/structure/lattice, +/obj/structure/grille, +/turf/open/space/basic, +/area/space/nearstation) "pWm" = ( /obj/machinery/door/window/southleft{ dir = 4; name = "Test Chamber"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/door/poddoor/preopen{ @@ -58305,7 +58816,7 @@ /area/hydroponics) "pXc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/carpet, @@ -58334,7 +58845,7 @@ areastring = "/area/lawoffice"; dir = 8; name = "Law Office APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable, /turf/open/floor/wood, @@ -58360,14 +58871,9 @@ /turf/open/floor/plasteel/white, /area/medical/virology) "qbp" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/power/emitter/anchored{ - dir = 4; - state = 2 - }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/pipe/simple/general/visible, +/obj/machinery/meter, +/turf/open/floor/engine, /area/engine/engineering) "qbZ" = ( /obj/structure/rack, @@ -58398,7 +58904,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/firedoor, @@ -58437,6 +58943,28 @@ /obj/machinery/iv_drip, /turf/open/floor/plating, /area/maintenance/department/science) +"qqa" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/atmospherics/pipe/manifold/general/hidden{ + dir = 4 + }, +/obj/structure/window/plasma/reinforced/spawner/west, +/obj/machinery/power/rad_collector/anchored, +/turf/open/floor/engine, +/area/engine/supermatter) +"qrw" = ( +/obj/structure/disposalpipe/trunk, +/obj/machinery/disposal/deliveryChute{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/engine, +/area/engine/engineering) "qtA" = ( /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 4 @@ -58468,6 +58996,10 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"qux" = ( +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space) "qxq" = ( /obj/machinery/atmospherics/components/binary/pump/on{ name = "Air Out" @@ -58478,7 +59010,7 @@ /turf/open/floor/plating, /area/tcommsat/computer) "qyF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -58506,21 +59038,29 @@ /turf/open/floor/plasteel/dark, /area/crew_quarters/bar) "qFu" = ( -/obj/machinery/power/port_gen/pacman, -/turf/open/floor/plasteel/dark, +/obj/effect/spawner/structure/window/plasma/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SupermatterExternal"; + name = "radiation shutters" + }, +/turf/open/floor/plating, /area/engine/engineering) +"qFJ" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) "qGu" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/department/security/brig) "qGZ" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/door/poddoor/preopen{ @@ -58529,6 +59069,12 @@ }, /turf/open/floor/plating, /area/crew_quarters/heads/chief) +"qHu" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/supermatter) "qHI" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -58536,7 +59082,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -58564,13 +59110,13 @@ "qMi" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/general/visible, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/door/poddoor/preopen{ @@ -58583,13 +59129,13 @@ /turf/open/floor/plasteel/dark, /area/library/lounge) "qOH" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -58604,18 +59150,8 @@ }, /turf/open/floor/plasteel/dark, /area/maintenance/department/crew_quarters/dorms) -"qQr" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/plating/airless, -/area/engine/engineering) "qQD" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ @@ -58673,11 +59209,15 @@ "qXq" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/department/engine) +"qXu" = ( +/obj/machinery/atmospherics/pipe/simple/purple/visible, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) "qXH" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -58694,13 +59234,13 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/maintenance/department/engine) "qYq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/item/wrench, @@ -58714,7 +59254,7 @@ /turf/open/floor/plasteel/dark, /area/science/xenobiology) "qYS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plasteel/dark/telecomms, @@ -58736,6 +59276,11 @@ }, /turf/open/floor/plating, /area/maintenance/disposal) +"rdn" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1, +/obj/machinery/atmospherics/pipe/manifold/cyan/visible, +/turf/open/floor/engine, +/area/engine/engineering) "reH" = ( /obj/item/reagent_containers/food/drinks/bottle/vodka, /obj/structure/disposalpipe/segment{ @@ -58751,7 +59296,7 @@ "rgn" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -58794,7 +59339,7 @@ /turf/open/floor/plasteel/dark, /area/hallway/secondary/exit/departure_lounge) "riW" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -58832,7 +59377,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "roc" = ( -/obj/structure/cable, +/obj/structure/cable/cyan, /turf/open/floor/plating/airless, /area/space/nearstation) "ros" = ( @@ -58843,15 +59388,8 @@ luminosity = 2 }, /area/maintenance/department/science) -"rqj" = ( -/obj/machinery/power/emitter, -/obj/machinery/light{ - dir = 8 - }, -/turf/open/floor/plating, -/area/engine/engineering) "rrb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -58873,7 +59411,7 @@ /area/chapel/office) "rse" = ( /obj/machinery/power/smes/engineering, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -58889,6 +59427,24 @@ }, /turf/open/floor/plasteel, /area/tcommsat/computer) +"rtG" = ( +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"rue" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/supermatter) "rui" = ( /obj/structure/closet/emcloset/anchored, /obj/machinery/light/small{ @@ -58948,6 +59504,12 @@ icon_state = "panelscorched" }, /area/maintenance/department/engine) +"rzq" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 9 + }, +/turf/open/floor/engine, +/area/engine/engineering) "rBh" = ( /obj/structure/mopbucket, /obj/item/mop, @@ -58962,6 +59524,12 @@ /obj/item/reagent_containers/blood/random, /turf/open/floor/plating, /area/maintenance/department/science) +"rFj" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plating, +/area/maintenance/solars/port) "rFq" = ( /obj/structure/chair, /obj/item/reagent_containers/food/snacks/donkpocket, @@ -58999,9 +59567,6 @@ /turf/open/floor/plating, /area/construction/mining/aux_base) "rKr" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, @@ -59009,6 +59574,9 @@ name = "Solar Maintenance"; req_access_txt = "10; 13" }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/maintenance/solars/port) "rKL" = ( @@ -59027,6 +59595,13 @@ /obj/item/ammo_casing/shotgun/improvised, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"rLQ" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/junction{ + dir = 4 + }, +/obj/effect/spawner/structure/window/plasma/reinforced, +/turf/open/floor/plating, +/area/engine/engineering) "rMV" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -59038,18 +59613,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/maintenance/department/science) -"rPg" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "rPW" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall/r_wall, @@ -59081,7 +59644,7 @@ /turf/open/floor/plating, /area/maintenance/solars/starboard) "rXT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -59102,14 +59665,18 @@ }, /turf/open/floor/plating, /area/storage/emergency/starboard) -"rYY" = ( -/obj/structure/cable{ - icon_state = "1-2" +"rYH" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/machinery/door/airlock/external{ - name = "Engineering External Access"; - req_access_txt = "10;13" +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical, +/turf/open/floor/engine, +/area/engine/engineering) +"rYY" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/airlock/engineering/glass{ + name = "Supermatter Engine"; + req_access_txt = "10" }, /turf/open/floor/plating, /area/engine/engineering) @@ -59131,7 +59698,7 @@ req_access_txt = "12"; req_one_access_txt = "32;47;48" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -59140,9 +59707,9 @@ /obj/machinery/power/apc/highcap/fifteen_k{ dir = 8; name = "Engineering APC"; - pixel_x = -28 + pixel_x = -25 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel, @@ -59178,6 +59745,24 @@ /obj/machinery/atmospherics/pipe/simple/cyan/hidden, /turf/closed/wall, /area/maintenance/department/security/brig) +"slC" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/supermatter) +"snY" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/supermatter) "spz" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, @@ -59194,6 +59779,12 @@ }, /turf/open/floor/plasteel/dark, /area/maintenance/department/crew_quarters/dorms) +"sqi" = ( +/obj/machinery/atmospherics/components/trinary/filter{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "sqQ" = ( /turf/open/floor/plating, /area/maintenance/disposal) @@ -59208,7 +59799,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "stQ" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/structure/sign/departments/science{ @@ -59235,8 +59826,19 @@ /obj/item/reagent_containers/food/snacks/meat/slab/monkey, /turf/open/floor/plating, /area/maintenance/department/engine) -"syn" = ( +"swE" = ( /obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/simple/general/hidden{ + dir = 5 + }, +/obj/structure/window/plasma/reinforced/spawner/east, +/obj/machinery/power/rad_collector/anchored, +/turf/open/floor/engine, +/area/engine/supermatter) +"syn" = ( +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59301,6 +59903,15 @@ }, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"sIq" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/turf/open/floor/engine, +/area/engine/engineering) "sJp" = ( /obj/machinery/atmospherics/pipe/simple/general/visible, /obj/effect/turf_decal/stripes/line, @@ -59323,7 +59934,7 @@ /turf/open/floor/plasteel, /area/engine/engineering) "sNz" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -59335,6 +59946,13 @@ }, /turf/open/floor/plating, /area/security/execution/transfer) +"sPb" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 10 + }, +/turf/open/space/basic, +/area/space/nearstation) "sQt" = ( /obj/machinery/door/airlock/external{ name = "Supply Dock Airlock"; @@ -59355,10 +59973,8 @@ }, /area/maintenance/department/engine) "sWj" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, /area/engine/engineering) "sWM" = ( /obj/effect/turf_decal/stripes/corner{ @@ -59366,6 +59982,21 @@ }, /turf/open/floor/plasteel/white, /area/ai_monitored/turret_protected/ai) +"sWU" = ( +/obj/machinery/atmospherics/pipe/manifold/green/visible{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"sXb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/chair/office{ + dir = 8 + }, +/turf/open/floor/plasteel/white, +/area/medical/genetics) "sXi" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -59380,13 +60011,6 @@ /obj/structure/disposalpipe/segment, /turf/closed/wall/r_wall, /area/science/xenobiology) -"sYp" = ( -/obj/structure/lattice, -/obj/machinery/light{ - dir = 2 - }, -/turf/open/space, -/area/engine/engineering) "sZh" = ( /obj/structure/closet/crate, /turf/open/floor/plating, @@ -59396,7 +60020,7 @@ /turf/open/floor/plating, /area/maintenance/department/science) "tan" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/centcom{ @@ -59413,6 +60037,12 @@ /obj/structure/chair/office/light, /turf/open/floor/plasteel/dark, /area/science/xenobiology) +"taF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/engine, +/area/engine/engineering) "taT" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ dir = 4; @@ -59420,10 +60050,29 @@ }, /turf/open/floor/plasteel, /area/science/xenobiology) -"tcY" = ( +"tbC" = ( /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "Supermatter"; + name = "supermatter shielding" + }, +/turf/open/floor/plating, +/area/engine/supermatter) +"tcr" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) +"tcY" = ( +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -59468,7 +60117,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "tfw" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating/airless, @@ -59481,10 +60130,14 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/closed/wall, /area/maintenance/department/security/brig) -"thA" = ( -/obj/machinery/atmospherics/pipe/simple/general/hidden, -/turf/closed/wall/r_wall, -/area/maintenance/disposal/incinerator) +"thT" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/turf_decal/stripes/corner, +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical, +/turf/open/floor/engine, +/area/engine/engineering) "thW" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 @@ -59503,7 +60156,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59511,6 +60164,12 @@ }, /turf/open/floor/plasteel/white, /area/medical/sleeper) +"tky" = ( +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) "tlc" = ( /obj/machinery/recharger, /obj/structure/table, @@ -59521,19 +60180,23 @@ /turf/open/floor/plasteel, /area/tcommsat/computer) "tlN" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/spawner/structure/window/reinforced, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/effect/spawner/structure/window/plasma/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SupermatterExternal"; + name = "radiation shutters" + }, /turf/open/floor/plating, /area/engine/engineering) +"tlU" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "tnY" = ( /obj/machinery/button/door{ id = "aux_base_shutters"; @@ -59555,9 +60218,18 @@ icon_state = "panelscorched" }, /area/maintenance/department/security/brig) +"tqO" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/machinery/portable_atmospherics/canister, +/turf/open/floor/engine, +/area/engine/engineering) "tqX" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/door/poddoor/preopen{ @@ -59566,8 +60238,15 @@ }, /turf/open/floor/plating, /area/science/xenobiology) +"trt" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 8 + }, +/turf/open/space/basic, +/area/space/nearstation) "tue" = ( -/obj/structure/cable{ +/obj/structure/cable/cyan{ icon_state = "2-4" }, /turf/open/floor/plating/airless, @@ -59587,7 +60266,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/the_singularitygen, +/obj/machinery/portable_atmospherics/canister/toxins, /turf/open/floor/plating, /area/engine/engineering) "tvj" = ( @@ -59605,17 +60284,14 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "twv" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "Singularity"; - name = "radiation shutters" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/spawner/structure/window/reinforced, /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/effect/spawner/structure/window/plasma/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SupermatterExternal"; + name = "radiation shutters" + }, /turf/open/floor/plating, /area/engine/engineering) "typ" = ( @@ -59626,7 +60302,7 @@ }, /area/maintenance/department/science) "tyL" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, @@ -59658,10 +60334,41 @@ /turf/open/floor/plasteel, /area/hallway/primary/central) "tIS" = ( -/obj/structure/cable{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1, +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 1 }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, +/area/engine/engineering) +"tIU" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 9 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) +"tJe" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/engine/engineering) +"tJX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible, +/turf/open/floor/engine, +/area/engine/engineering) +"tMZ" = ( +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical, +/turf/open/floor/engine, /area/engine/engineering) "tPm" = ( /obj/structure/disposalpipe/segment{ @@ -59669,21 +60376,58 @@ }, /turf/closed/wall, /area/engine/engineering) +"tQj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/maintenance/disposal/incinerator) +"tQJ" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "Cold Loop Bypass" + }, +/turf/open/floor/engine, +/area/engine/engineering) "tRc" = ( /obj/structure/ore_box, /turf/open/floor/plating{ icon_state = "panelscorched" }, /area/maintenance/department/engine) +"tSK" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/caution{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/engine, +/area/engine/engineering) "tSL" = ( /turf/open/floor/plating{ icon_state = "panelscorched" }, /area/maintenance/department/science) +"tSU" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "tTl" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, /turf/open/floor/plating, /area/maintenance/department/engine) +"tUf" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3, +/turf/open/space, +/area/space/nearstation) "tWc" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59723,6 +60467,27 @@ }, /turf/open/floor/plasteel/white, /area/science/xenobiology) +"tYc" = ( +/obj/structure/lattice, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/turf/open/space/basic, +/area/space/nearstation) +"tYU" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/reflector/box/anchored, +/turf/open/floor/plating, +/area/engine/engineering) +"uah" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 5 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "uaC" = ( /obj/structure/chair/comfy/black{ dir = 8 @@ -59736,16 +60501,17 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "uaP" = ( -/obj/structure/cable/yellow{ - icon_state = "0-8" +/obj/structure/cable{ + icon_state = "1-4" }, -/obj/structure/window/plasma/reinforced{ - dir = 4 +/obj/structure/cable{ + icon_state = "1-2" }, /obj/effect/turf_decal/stripes/line{ - dir = 8 + dir = 4 }, -/turf/open/floor/plating/airless, +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical, +/turf/open/floor/engine, /area/engine/engineering) "ubW" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -59769,7 +60535,7 @@ /turf/open/floor/plasteel, /area/science/xenobiology) "ueV" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plating{ @@ -59803,7 +60569,7 @@ /area/maintenance/department/engine) "ujI" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -59828,14 +60594,14 @@ }, /turf/open/floor/plasteel, /area/storage/primary) +"ulV" = ( +/obj/structure/rack, +/obj/item/gun/energy/e_gun/dragnet, +/obj/item/gun/energy/e_gun/dragnet, +/turf/open/floor/plasteel/dark, +/area/ai_monitored/security/armory) "ulY" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/power/grounding_rod{ - anchored = 1 - }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "ume" = ( /obj/machinery/door/firedoor, @@ -59863,8 +60629,11 @@ }, /area/maintenance/department/science) "uoq" = ( -/turf/open/space, -/area/engine/engineering) +/obj/machinery/atmospherics/pipe/simple/general/visible{ + dir = 6 + }, +/turf/closed/wall/r_wall, +/area/engine/supermatter) "uos" = ( /obj/machinery/computer/camera_advanced/base_construction, /obj/effect/turf_decal/stripes/line{ @@ -59880,6 +60649,12 @@ /obj/structure/cable, /turf/open/floor/plating, /area/security/execution/transfer) +"urG" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) "urP" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -59887,6 +60662,11 @@ /obj/machinery/light, /turf/open/floor/plasteel, /area/science/explab) +"utI" = ( +/obj/machinery/atmospherics/pipe/layer_manifold, +/obj/effect/spawner/structure/window/plasma/reinforced, +/turf/open/floor/plating, +/area/engine/engineering) "uug" = ( /turf/open/floor/plating{ icon_state = "platingdmg1" @@ -59899,7 +60679,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -59919,7 +60699,7 @@ /area/lawoffice) "uvo" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/cable, @@ -59949,7 +60729,7 @@ /area/maintenance/department/engine) "uzn" = ( /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/turf_decal/tile/yellow{ @@ -59974,6 +60754,12 @@ }, /turf/open/floor/engine, /area/science/explab) +"uBs" = ( +/obj/machinery/atmospherics/pipe/simple/cyan/visible{ + dir = 6 + }, +/turf/open/floor/engine, +/area/engine/engineering) "uCS" = ( /obj/machinery/door/poddoor/shutters{ id = "aux_base_shutters"; @@ -59983,7 +60769,7 @@ /turf/open/floor/plasteel, /area/construction/mining/aux_base) "uHG" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plating/airless, @@ -60007,7 +60793,7 @@ /turf/open/floor/plasteel/white, /area/science/xenobiology) "uLF" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -60032,24 +60818,51 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"uMr" = ( +/obj/machinery/power/supermatter_crystal/engine, +/obj/effect/turf_decal/bot, +/turf/open/floor/engine, +/area/engine/supermatter) "uMt" = ( /obj/effect/turf_decal/plaque, /turf/open/floor/plating, /area/maintenance/department/engine) +"uNW" = ( +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/engineering) +"uPu" = ( +/obj/machinery/power/smes, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "uQR" = ( /obj/item/ammo_casing/shotgun/beanbag, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"uRj" = ( +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/orange/visible/layer3{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/engine/atmos) "uRk" = ( -/obj/machinery/field/generator{ - anchored = 1; - state = 2 - }, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) +/turf/closed/wall/r_wall, +/area/engine/supermatter) "uUQ" = ( /obj/machinery/door/airlock/maintenance{ name = "Engineering Maintenance"; @@ -60058,7 +60871,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/disposalpipe/segment{ @@ -60077,19 +60890,20 @@ /turf/open/floor/carpet, /area/lawoffice) "uVW" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/scrubbers/visible/layer1{ + dir = 5 }, -/obj/structure/cable{ - icon_state = "1-8" +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 }, -/turf/open/floor/plating/airless, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, /area/engine/engineering) "uXG" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/landmark/event_spawn, @@ -60101,10 +60915,10 @@ /area/science/xenobiology) "uXH" = ( /obj/structure/cable{ - icon_state = "2-4" + icon_state = "4-8" }, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "2-4" }, /turf/open/floor/plating, /area/maintenance/solars/starboard) @@ -60136,7 +60950,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ @@ -60172,6 +60986,15 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"vjH" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plasteel, +/area/engine/engineering) "vll" = ( /obj/structure/sign/warning, /turf/closed/wall/r_wall, @@ -60186,6 +61009,13 @@ }, /turf/open/floor/plasteel/dark, /area/maintenance/department/crew_quarters/dorms) +"vmA" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, +/turf/open/floor/engine, +/area/engine/engineering) "vmG" = ( /obj/machinery/atmospherics/components/trinary/filter, /turf/open/floor/engine, @@ -60210,7 +61040,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/general/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -60295,7 +61125,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -60313,13 +61143,13 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/dark, /area/science/mixing) "vCC" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ @@ -60347,7 +61177,7 @@ /turf/open/floor/plating, /area/maintenance/department/engine) "vIc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/structure/disposalpipe/segment{ @@ -60355,6 +61185,24 @@ }, /turf/open/floor/plating, /area/maintenance/department/security/brig) +"vIM" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/engine, +/area/engine/engineering) +"vKD" = ( +/obj/machinery/power/port_gen/pacman, +/turf/open/floor/plating, +/area/engine/engineering) +"vLy" = ( +/obj/machinery/atmospherics/pipe/simple/orange/visible{ + dir = 9 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "vMx" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 @@ -60372,16 +61220,22 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/firedoor, /turf/open/floor/plasteel/dark, /area/library) +"vPX" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 4 + }, +/turf/open/floor/engine, +/area/engine/engineering) "vRi" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating{ @@ -60417,6 +61271,19 @@ }, /turf/open/floor/plasteel, /area/engine/engineering) +"vRw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/components/binary/pump, +/turf/open/floor/engine, +/area/engine/engineering) +"vSC" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/atmos/engine_waste{ + dir = 1 + }, +/turf/open/floor/plating, +/area/engine/engineering) "vTL" = ( /obj/machinery/vending/tool, /obj/effect/turf_decal/tile/neutral{ @@ -60475,6 +61342,18 @@ }, /turf/closed/wall/r_wall, /area/engine/engineering) +"wdp" = ( +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/structure/disposaloutlet{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "wdx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 @@ -60528,6 +61407,10 @@ icon_state = "platingdmg3" }, /area/maintenance/department/security/brig) +"wit" = ( +/obj/machinery/door/poddoor/incinerator_atmos_main, +/turf/open/floor/engine/vacuum, +/area/maintenance/disposal/incinerator) "wiB" = ( /obj/item/shard{ icon_state = "small" @@ -60535,6 +61418,13 @@ /obj/item/stack/cable_coil/red, /turf/open/floor/plating, /area/maintenance/department/engine) +"wkA" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Atmos Supermatter Mix" + }, +/turf/open/floor/engine, +/area/engine/engineering) "wkZ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 @@ -60566,30 +61456,18 @@ /obj/structure/sign/warning, /turf/closed/wall, /area/science/mixing) -"woh" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/open/floor/plating/airless, -/area/engine/engineering) "woq" = ( /obj/structure/chair, /turf/open/floor/plating, /area/maintenance/department/security/brig) "wpI" = ( -/obj/structure/window/plasma/reinforced{ +/obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/cable/yellow{ - icon_state = "0-4" +/obj/machinery/light{ + dir = 8 }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating/airless, +/turf/open/floor/engine, /area/engine/engineering) "wqu" = ( /obj/effect/turf_decal/loading_area{ @@ -60606,7 +61484,7 @@ /turf/open/floor/wood, /area/lawoffice) "wun" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -60633,7 +61511,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "wxb" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -60651,6 +61529,12 @@ }, /turf/open/floor/plasteel/dark, /area/security/brig) +"wza" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/engine, +/area/engine/engineering) "wzb" = ( /obj/structure/chair, /turf/open/floor/wood, @@ -60690,7 +61574,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -60713,6 +61597,17 @@ }, /turf/open/floor/plating, /area/maintenance/department/science) +"wGm" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/atmospherics/pipe/manifold/general/hidden{ + dir = 8 + }, +/obj/structure/window/plasma/reinforced/spawner/east, +/obj/machinery/power/rad_collector/anchored, +/turf/open/floor/engine, +/area/engine/supermatter) "wIv" = ( /obj/machinery/power/apc/highcap/five_k{ dir = 8; @@ -60720,37 +61615,32 @@ pixel_x = -25; pixel_y = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plating, /area/maintenance/department/engine) -"wJP" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/simple/purple/visible{ - dir = 9 - }, -/turf/open/space, -/area/space/nearstation) "wKa" = ( /obj/machinery/light/small, /turf/open/floor/plating, /area/hallway/secondary/exit/departure_lounge) -"wKK" = ( -/obj/machinery/power/tesla_coil, -/turf/open/floor/plating, -/area/engine/engineering) "wLo" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ id = "cmoshutters"; name = "Privacy shutters" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/crew_quarters/heads/cmo) +"wLq" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/maintenance/disposal/incinerator) "wMF" = ( /obj/effect/spawner/lootdrop/three_course_meal, /obj/effect/spawner/lootdrop/three_course_meal, @@ -60760,14 +61650,14 @@ }, /area/maintenance/department/crew_quarters/dorms) "wMM" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/structure/grille, /turf/open/floor/plating, /area/maintenance/department/engine) "wNq" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/disposalpipe/segment{ @@ -60798,7 +61688,7 @@ /area/science/mixing) "wQU" = ( /obj/effect/spawner/lootdrop/maintenance, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ @@ -60818,7 +61708,7 @@ /obj/machinery/door/airlock/maintenance{ req_access_txt = "12" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating{ @@ -60829,9 +61719,9 @@ /obj/machinery/power/apc{ dir = 1; name = "Brig Maintenance APC"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -60860,6 +61750,12 @@ icon_state = "platingdmg3" }, /area/maintenance/department/science) +"wTX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/engine, +/area/engine/engineering) "wUf" = ( /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, /turf/open/floor/plating, @@ -60881,7 +61777,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -60911,7 +61807,7 @@ /turf/open/floor/plating, /area/maintenance/department/security/brig) "xah" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/general/hidden{ @@ -60999,7 +61895,7 @@ /turf/open/floor/plasteel/dark, /area/library) "xjc" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/dark, @@ -61023,7 +61919,7 @@ /turf/open/floor/plasteel/grimy, /area/security/detectives_office) "xjT" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/purple{ @@ -61110,6 +62006,25 @@ }, /turf/open/floor/plasteel, /area/hallway/primary/central) +"xvV" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/cyan/visible{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/caution{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/engine/engineering) "xxw" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 2 @@ -61128,19 +62043,19 @@ name = "Containment Pen #2"; req_access_txt = "55" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/engine, /area/science/xenobiology) "xxS" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -61166,10 +62081,10 @@ /area/science/xenobiology) "xCV" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/structure/disposalpipe/segment, @@ -61190,9 +62105,9 @@ layer = 4; name = "Telecomms Server APC"; areastring = "/area/tcommsat/server"; - pixel_y = 24 + pixel_y = 23 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plasteel/dark/telecomms, @@ -61253,6 +62168,13 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plating, /area/construction/mining/aux_base) +"xOI" = ( +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "xPa" = ( /obj/machinery/airalarm{ pixel_y = 22 @@ -61261,7 +62183,7 @@ /area/science/explab) "xQc" = ( /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/disposalpipe/segment, @@ -61297,6 +62219,18 @@ }, /turf/open/floor/plating, /area/engine/engineering) +"xVD" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/green/visible{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/engine, +/area/engine/engineering) "xWl" = ( /obj/item/pen, /obj/item/paper_bin{ @@ -77670,7 +78604,7 @@ aiu azZ axC ayA -azP +azN aAW axC aaa @@ -78698,7 +79632,7 @@ aiu wxb axC xuv -azN +rFj vtT vtT aiu @@ -84336,8 +85270,8 @@ aik aiM ajh ajR +ulV akN -aiM amj amX anH @@ -85680,7 +86614,7 @@ bmi bjN bow bpz -bpz +sXb bss btV bou @@ -87782,9 +88716,9 @@ bXk bXk bXk bXk -bXk -bXk -bXk +aaa +aaa +aaa aaa aaa aaa @@ -88034,11 +88968,8 @@ oYj uMo bXk mci -cbX -ceq -ceq -rqj -ceq +vKD +pAb ceq ceq bXk @@ -88117,6 +89048,9 @@ aaa aaa aaa aaa +aaa +aaa +aaa "} (105,1,1) = {" aaa @@ -88246,7 +89180,7 @@ bil biY bjT ble -bmq +aab bmq boC bpI @@ -88292,12 +89226,9 @@ cdI cri eVW cbX -wKK -wKK -wKK -wKK -wKK -wKK +ceq +ceq +ceq bXk aaa aaa @@ -88324,6 +89255,9 @@ aaa aaa aaa aaa +aaa +aaa +aaa abI aaa aaa @@ -88549,12 +89483,9 @@ cdI cri eVW cbX -cBQ -cBQ -cBQ -cBQ -cBQ -cBQ +ccQ +ccQ +ccQ bXk aaa aaa @@ -88579,6 +89510,9 @@ aaa aaa aaa aaa +aaa +aaa +aaa adR adR adR @@ -88806,11 +89740,8 @@ ous bXk tuL ccR +lhu cbV -cbV -kJN -ccQ -ccQ ccQ bXk aaa @@ -88838,6 +89769,9 @@ aaa aaa aaa aaa +aaa +aaa +aaa abI aaa aaa @@ -89067,9 +90001,9 @@ bXk bXk bXk bXk -bXk -bXk -bXk +aht +aht +aht aht abI abI @@ -89602,8 +90536,8 @@ mVM mVM mVM tfw -pjH -pjH +tky +tky uHG clw clw @@ -89829,7 +90763,7 @@ bZy bZy cbc cbZ -bZy +nPh cdL cer ceV @@ -89845,8 +90779,8 @@ aht aht aaa aaa -aht -aht +aaa +aaa aaa aaa aaa @@ -90102,8 +91036,8 @@ aht aht aaa aaa -aht -aht +aaa +aaa aaa aaa aaa @@ -90352,20 +91286,20 @@ bXk bXk bXk bXk -bXk cbj bXk +bXk cbj bXk bXk bXk -bXk -ckJ aaa aaa aaa aaa aaa +fon +aaa aaa aaa aaa @@ -90602,26 +91536,26 @@ cbf ccb ccS cdO -bXk +cbj ceX -iyJ +wdp cfS fFv fFv fFv -fFv -fFv +ePB +imB cir +cJw fFv -fFv -fFv -fFv -fFv +bnK bXk -aaa -aaa -aaa -aaa +aht +aht +aht +aht +aht +fon aaa aaa aaa @@ -90857,28 +91791,28 @@ bZA cak cbg bYC -cam +cal cdP rYY mwG nAs cfT -fFv -fFv +uBs +gkz qbp -fFv -fFv -dMG -fFv -fFv -qbp -fFv -fFv +fEl +fEl +lfH +nrQ +dYQ +iUE bXk +aht +aht +aht aaa aaa -aaa -aaa +fon aaa aaa aaa @@ -91111,31 +92045,31 @@ bXk bYc bYO bZC -cal +uNW cbh cam cam cdQ -bXk -bTE -bXk +cbj +fwi +wza cfU tIS iCs -rPg -cBR -cBR -knw -cBR +iCs +iCs +iCs +iCs cBR +rdn uVW -dUv -ckr bXk -aaa -aaa -aaa -aaa +bXk +bXk +aht +aht +aht +fon aaa aaa aaa @@ -91379,20 +92313,20 @@ ulY cfV cgu cgU -cgU -chw -chw +mqH chw +mqH chw +mqH cjs -cfV -cfV -cfV +hPG +tSU +fhE bXk -abI -aaa -aaa -aaa +cdm +cdm +oex +fon aaa aaa aaa @@ -91631,24 +92565,24 @@ ccc ccV cdR qFu -cet -ulY -cfV +taF +dfr +eJU cgv -cfV -sWj +thT +kUj uaP cgV -uaP -cgV -uaP +tMZ +jzi +rYH ciG -cfV -cfV -bXk -abI -abI -aaa +dqb +hCE +utI +vSC +ahi +oex aaa aaa aaa @@ -91888,25 +92822,25 @@ bXk ccW wcs iyJ -cfa -cfa +iyJ +iyJ twv -cgv +fsA sWj uRk -uoq -fyO -mpd -fyO -uoq -prQ -ciG -cfV -bXk -abI -aaa -aaa -aaa +tbC +tbC +tbC +uRk +tqO +lAK +sqi +cCI +cbj +ahi +cdm +oex +fon aaa aaa aaa @@ -92148,22 +93082,22 @@ ceu cfb cfu tlN -cgv +fsA cCI uoq -fyO -fyO -mpd -fyO -fyO -uoq +wGm +wGm +swE +uRk +mZR +nMP hQC -mpd +sWj bXk abI -aaa -aaa -aaa +aht +aht +fon aaa aaa aaa @@ -92395,32 +93329,32 @@ bWw bXm bYg bYT -bZA +kSw caq cbk cce -ccY -cdT -cev +ccZ +ccZ +ccZ cfc -cfv +cfx tlN -cgv -cCI +xvV +jkf fyO -fyO -sWj +snY +ham cgT -ciG -fyO -fyO -hQC -mpd +uRk +uRk +uRk +slC +sWj bXk abI aaa aaa -aaa +fon aaa aaa aaa @@ -92654,30 +93588,30 @@ bYh bYU bZE car -bXk +mgX ccf -ccZ -cdU -cew -cfd +ccY +ccY +ccY +tYU cfw cfW cgw -cCI +vIM mpd -mpd -cCI +qHu +uMr cit ciH -mpd -mpd -hQC -sYp +ipH +jOe +dWO +sWj bXk abI -aaa -aaa -aaa +aht +aht +fon aaa aaa aaa @@ -92909,32 +93843,32 @@ bWy bXo bYi bYV -bZA -cdN -ccW +kSw +caq +cbk ceY cda -cbX +ccZ cex cfe cfx tlN -cgv -cCI -fyO -fyO -fyF +kMO +tSK +eWo +oag +rue cgY -ciI -fyO -fyO -hQC -mpd +uRk +uRk +uRk +jMt +sWj bXk aaa aaa aaa -aaa +fon aaa aaa aaa @@ -93048,8 +93982,8 @@ acw abY abV acc -acG -acQ +sWM +acP acX adi adt @@ -93173,20 +94107,20 @@ ccg cey cdW cey -cey +kfS cfy tlN -cgv +nQt cCI -uoq -fyO -fyO -mpd -fyO -fyO -uoq -hQC -mpd +ika +qqa +qqa +hZQ +uRk +sIq +vRw +cDy +sWj bXk aaa aaa @@ -93305,7 +94239,7 @@ acx acx acz acd -acH +acw acP acY adj @@ -93429,26 +94363,26 @@ cbj bXk ccW bXk -bXk -cet -cet +qFu +qFu +qFu tlN -cgv -fyF -dnS -fyO -fyO -mpd -fyO -fyO +nQt +sWj +uRk +tbC +lBJ +oEN +uRk +eqg dZj ciI -cfV -bXk -aaa +cCI +cbj aaa aaa aaa +fon aaa aaa aaa @@ -93686,26 +94620,26 @@ cbl cch cdc cdX -fwR -cet -ulY +qFu +cCp +eoo oGm -cgv -cfV +xVD +nwg fyF cZt -wpI cZt +tcr wpI -cZt -ciI -cfV -cfV +pth +vPX +lWv +sWj bXk abI -aaa -aaa -aaa +aht +aht +fon aaa aaa aaa @@ -93942,27 +94876,27 @@ cam cam cam cam -cdI -eWi +vjH +qFu cet ulY -oGm +flQ cgx -cgU -cgU -cBS -cBS -cBS +sWU +sWU cBS +tQJ +ciG +ciG cjt -cfV -cfV -cfV +ftb +vLy +pKg bXk abI -abI -abI -abI +aaa +aaa +pmj aaa aaa aaa @@ -94200,26 +95134,26 @@ cbm cci cam ogX -bXk -bXk -bXk +cbj +fwi +vPX jBn -tIS +mUa meF chA -woh -woh -qQr -woh -woh +iLF +iLF +iLF +iLF +vmA liR -lRY -cks +bXk +bXk bXk abI -aaa +aht abI -aaa +fon aaa aaa aaa @@ -94451,32 +95385,32 @@ bWD bWD bTE bYY -bZA +bZD caw cbn ccj -cam +cah cdY -rYY +ktM cff -nAs +nqj cfX -fFv -fFv +rzq +wkA kWQ -fFv -fFv -dMG -fFv -fFv -kWQ -fFv -fFv +ulY +ulY +ulY +ulY +lFA +sWj bXk +aht +aht abI aaa aaa -aaa +fon aaa aaa aaa @@ -94712,27 +95646,27 @@ bZG cax cbo cck -cdf -cdZ -bXk +cam +cdI +cbj cfg -bXk +qrw cfY -fFv -fFv -fFv -fFv -fFv -civ -fFv -fFv -fFv -fFv -fFv +tJX +kbV +gEI +hqF +dfr +dfr +nfj +rtG +wTX bXk +aht +aaa abI -abI -abI +aaa +aaa aaa aaa aaa @@ -94972,25 +95906,25 @@ cci cam cdI bXk +lXk bXk bXk bXk -bXk -bXk -bXk -bXk +evB +iYO cbj -bXk +evB +evB cbj +rLQ +evB bXk -bXk -bXk -bXk -ckJ +aht +aaa abI -aaa -aaa -aaa +aht +aht +fon aaa aaa aaa @@ -95229,25 +96163,25 @@ cam cam vXt bXk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +tJe +bXk +aht +xOI +izP +tIU +lbC +uah +lbC +uah +hEU +eGh +tYc +aht aaa abI aaa aaa -aaa +fon aaa aaa aaa @@ -95486,25 +96420,25 @@ ceb jPo ory bXk -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +kXe +ckJ +aht +nmx +lbC +uah +trt +nmx +trt +nmx +lbC +uah +trt +aht +aht abI -aaa -aaa -aaa +fon +fon +fon aaa aaa aaa @@ -95743,23 +96677,23 @@ bXk bXk bXk bXk +ltl abI -adR -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aht +nmx +trt +nmx +trt +nmx +trt +nmx +trt +nmx +trt aaa aaa aaa +fon aaa aaa aaa @@ -95991,32 +96925,32 @@ bVe bVV bWI bXr -bKQ -acN +fBp +oXQ bZK -abI -abI -abI -abI -aaa -aaa -aaa +tUf +tUf +tUf +tUf +iBq +fBJ +ndP adR aaa +nmx +trt +nmx +trt +nmx +trt +nmx +trt +nmx +trt aaa -acO -adR -adR -adR -adR -adR -adR -adR -aaa -aaa -aaa -aaa -aaa +fon +aht +fon aaa aaa aaa @@ -96260,20 +97194,20 @@ abI abI adR aaa +nmx +trt +nmx +trt +nmx +trt +nmx +trt +nmx +trt +aht +fon aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +gYo aaa aaa aaa @@ -96500,7 +97434,7 @@ bRu bSd bLW bTJ -bMf +urG bUs bMf fuR @@ -96517,18 +97451,18 @@ aaa aaa adR aaa +nmx +trt +nmx +trt +nmx +trt +nmx +trt +nmx +trt aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +fon aaa aaa aaa @@ -96774,20 +97708,20 @@ aaa aaa aaa aaa +nmx +trt +nmx +trt +nmx +trt +nmx +trt +nmx +trt +aht +fon aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +fon aaa aaa aaa @@ -97014,7 +97948,7 @@ bRv bSe bPQ bTL -bUs +uRj bMf bVX bWM @@ -97031,20 +97965,20 @@ aaa aaa aaa aaa +sPb +jhq +sPb +jhq +sPb +jhq +sPb +jhq +sPb +jhq aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +fon +aht +fon aaa aaa aaa @@ -97271,7 +98205,7 @@ bQI bQI bQI bTM -bUs +uRj bMf bOk bWL @@ -97288,18 +98222,18 @@ aby aaa aaa aaa +aht +aaa +aaa +aht +aaa +aht aaa aaa aaa +aht aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +fon aaa aaa aaa @@ -97543,22 +98477,22 @@ bJP abI aby aaa +fon +fon +fon aaa +fon +fon +fon +fon +fon aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +bHI +fon +fon +fon +aht +fon aaa aaa aaa @@ -97785,7 +98719,7 @@ bRx bQJ bPQ bTO -bMf +urG bMf bOk bWL @@ -97799,23 +98733,23 @@ ccn bJP aaa aby +aht +pWb +aaa +aht +aaa +aht aaa aaa aaa +aht aaa aaa +cFB aaa +aht aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +fon aaa aaa aaa @@ -98042,7 +98976,7 @@ bPQ bPQ bPQ bTP -bMf +urG bVh bVY bWM @@ -98057,22 +98991,22 @@ bJP aaa aby aaa +fon aaa +fon +fon +fon +fon aaa +bHI +fon +fon +fon +fon aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +fon +fon +fon aaa aaa aaa @@ -98299,7 +99233,7 @@ bQK bQK bPQ bTQ -bMf +urG bKX bOk bWN @@ -98314,7 +99248,7 @@ bJP abI aby aaa -aaa +fon aaa aaa aaa @@ -98556,7 +99490,7 @@ bRy bSf bSR bTM -bMf +nUq bKX bVZ bWO @@ -98813,7 +99747,7 @@ bRz bMf bSS bTR -bMf +gbu bKX bWa bMf @@ -99340,7 +100274,7 @@ cBT bYw bYw bYw -aht +bYw aht aby aaa @@ -99595,9 +100529,9 @@ bZO caI cbA ccp -cdg -cbz -aaa +aac +aae +hMa aaa aby aaa @@ -99848,11 +100782,12 @@ bWQ bXE bYu bZg -bZP -caJ -cbB -ccq -cdh +oMk +oMk +oMk +wLq +oMk +tlU bYw aaa aaa @@ -99938,7 +100873,6 @@ aaa aaa aaa aaa -aaa "} (151,1,1) = {" aaa @@ -100105,11 +101039,12 @@ bNl bXF bYv bZh -bZQ +bZP caK cbC +fbC ccr -cdi +ots cec ceA aaa @@ -100195,7 +101130,6 @@ aaa aaa aaa aaa -aaa "} (152,1,1) = {" aaa @@ -100360,14 +101294,14 @@ bVl bWc bWR bXG -jLW -bZi -bZR -caL -bZT -bYw -cdj bYw +uPu +hUX +cYq +mOH +igl +igl +jza bYw aaa gYo @@ -100616,15 +101550,15 @@ bUA bVm bWd bWS -wJP -aht -bZj -bZS -caM -cbE -thA +bWd +qXu +bZi +bZR +caL +bZT +bYw cdk -ced +tQj bYw aht fon @@ -100874,15 +101808,15 @@ bLb bMi bLb bJP -aaa -bYw -bZT -caN -bZT -bYw +oex +bZj +bZS +caM +fDm +ltu cdl -bYw -bYw +paI +pIh aaa mau aaa @@ -101131,15 +102065,15 @@ bVn bWe bWT bJP -aht +mZE bYw -bZU -caO -cbF -ccs -cdm -cdm +bZT +caN +bZT bYw +jcB +bYw +abI aht fon aaa @@ -101390,12 +102324,12 @@ bVo bJP aht bYw -bYw -caP -bYw -bYw -aaa -aaa +bZU +caO +cbF +ccs +qux +qux aaa aaa aaa @@ -101645,12 +102579,12 @@ bVo bWg bVo bJP -aaa -aaa +oex +bYw +bYw +caP bYw -caQ bYw -aaa aaa aaa aaa @@ -101902,11 +102836,11 @@ bJP bJP bJP bJP -abI -abI -bZV -caR -bZV +mZE +mZE +bYw +caQ +bYw aaa aaa aaa @@ -102159,11 +103093,11 @@ aaa aaa aaa abI -aaa -aaa -aaa -aaa -aaa +abI +abI +qFJ +wit +qFJ aaa aaa aaa @@ -111621,7 +112555,7 @@ aaa aaa aaa aaa -bcQ +bcR aaa aaa aaa @@ -111878,7 +112812,7 @@ aTC aTC aTC aaa -bcR +bcS aaa aTC aTC @@ -112144,7 +113078,7 @@ beU beU beU beU -beU +bkP abI aby aaa diff --git a/_maps/map_files/debug/multiz.dmm b/_maps/map_files/debug/multiz.dmm index b3276091232..2beedab4783 100644 --- a/_maps/map_files/debug/multiz.dmm +++ b/_maps/map_files/debug/multiz.dmm @@ -75,7 +75,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/closet/secure_closet/engineering_electrical, /obj/structure/cable{ @@ -115,7 +115,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Gravity Generator APC"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-8" @@ -399,7 +399,7 @@ "bj" = ( /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable{ icon_state = "0-2" @@ -506,7 +506,7 @@ "bB" = ( /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable, /obj/structure/cable{ @@ -547,7 +547,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable{ icon_state = "0-2" @@ -629,7 +629,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable{ icon_state = "0-2" @@ -964,7 +964,7 @@ /obj/structure/cable, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plasteel, @@ -995,7 +995,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable, /obj/effect/turf_decal/stripes/line{ diff --git a/_maps/map_files/debug/runtimestation.dmm b/_maps/map_files/debug/runtimestation.dmm index 1fadeec6777..6eeac90ab2b 100644 --- a/_maps/map_files/debug/runtimestation.dmm +++ b/_maps/map_files/debug/runtimestation.dmm @@ -66,7 +66,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/closet/secure_closet/engineering_electrical{ locked = 0 @@ -112,7 +112,7 @@ /obj/machinery/power/apc{ dir = 1; name = "Gravity Generator APC"; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-8" @@ -542,7 +542,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable{ icon_state = "0-2" @@ -652,7 +652,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/structure/cable{ icon_state = "0-2" @@ -1046,7 +1046,7 @@ /obj/structure/cable, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plasteel, @@ -1093,7 +1093,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/turf_decal/stripes/line, /obj/structure/cable{ @@ -1575,7 +1575,6 @@ /turf/open/floor/plating, /area/quartermaster/storage) "eD" = ( -/obj/machinery/vr_sleeper, /turf/open/floor/plasteel, /area/storage/primary) "eE" = ( @@ -1660,7 +1659,7 @@ }, /obj/machinery/power/apc{ dir = 8; - pixel_x = -24 + pixel_x = -25 }, /turf/open/floor/plasteel, /area/quartermaster/storage) @@ -2146,7 +2145,7 @@ "fS" = ( /obj/machinery/power/apc{ dir = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-4" @@ -2280,7 +2279,7 @@ }, /obj/machinery/power/apc{ dir = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/machinery/airalarm/unlocked{ pixel_x = 32 @@ -2503,7 +2502,7 @@ "hD" = ( /obj/machinery/power/apc{ dir = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-2" @@ -2558,7 +2557,7 @@ }, /obj/machinery/power/apc{ dir = 1; - pixel_y = 25 + pixel_y = 23 }, /obj/structure/cable{ icon_state = "0-4" diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index a2c1712990d..b011be59bca 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -1118,9 +1118,7 @@ /obj/structure/window{ dir = 8 }, -/obj/machinery/sleeper{ - dir = 1 - }, +/obj/machinery/stasis, /turf/open/floor/holofloor{ icon_state = "white" }, @@ -1132,9 +1130,7 @@ }, /area/holodeck/rec_center/medical) "dd" = ( -/obj/machinery/sleeper{ - dir = 1 - }, +/obj/machinery/stasis, /turf/open/floor/holofloor{ icon_state = "white" }, @@ -1264,9 +1260,9 @@ /area/holodeck/rec_center/chapelcourt) "dw" = ( /obj/structure/table/wood/fancy, -/obj/item/clothing/suit/nun, +/obj/item/clothing/suit/chaplainsuit/nun, /obj/item/clothing/head/nun_hood, -/obj/item/clothing/suit/holidaypriest, +/obj/item/clothing/suit/chaplainsuit/holidaypriest, /turf/open/floor/holofloor{ dir = 8; icon_state = "dark" @@ -1403,7 +1399,6 @@ /obj/structure/window/reinforced, /obj/machinery/mass_driver{ dir = 1; - icon_state = "mass_driver"; id = "trektorpedo1"; name = "photon torpedo tube" }, @@ -1451,7 +1446,6 @@ /obj/structure/window/reinforced, /obj/machinery/mass_driver{ dir = 1; - icon_state = "mass_driver"; id = "trektorpedo2"; name = "photon torpedo tube" }, @@ -1756,13 +1750,13 @@ /turf/open/floor/holofloor/plating, /area/holodeck/rec_center/kobayashi) "eJ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/holofloor/plating, /area/holodeck/rec_center/kobayashi) "eK" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/holofloor/plating, @@ -5178,7 +5172,7 @@ /turf/open/floor/plasteel, /area/centcom/supply) "mH" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/brown{ @@ -5193,7 +5187,7 @@ /turf/open/floor/plasteel, /area/centcom/supply) "mI" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/brown{ @@ -5509,7 +5503,7 @@ /turf/open/floor/plasteel, /area/centcom/supply) "nn" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ dir = 8 @@ -5800,7 +5794,7 @@ /turf/open/floor/plasteel, /area/centcom/control) "nN" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/plasteel/grimy, /area/centcom/control) "nO" = ( @@ -6506,10 +6500,19 @@ }, /turf/open/floor/plasteel/dark, /area/tdome/tdomeobserve) +"oU" = ( +/obj/structure/closet/emcloset, +/obj/item/tank/internals/emergency_oxygen/engi, +/obj/item/tank/internals/emergency_oxygen/engi, +/obj/item/tank/internals/emergency_oxygen/engi, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/effect/turf_decal/delivery, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/ferry) "oV" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, /obj/machinery/light{ dir = 8 }, @@ -6644,7 +6647,7 @@ /turf/open/floor/plasteel, /area/centcom/supply) "pj" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/brown{ @@ -6656,7 +6659,7 @@ /turf/open/floor/plasteel, /area/centcom/supply) "pk" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/neutral{ @@ -6865,6 +6868,22 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/control) +"px" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/machinery/computer/security/telescreen/entertainment{ + pixel_y = -28 + }, +/obj/structure/sign/warning/securearea{ + pixel_x = 32 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/centcom/ferry) "py" = ( /obj/machinery/smartfridge, /turf/closed/indestructible{ @@ -6873,6 +6892,39 @@ smooth = 1 }, /area/centcom/holding) +"pz" = ( +/turf/open/space/basic, +/area/centcom/ferry) +"pA" = ( +/obj/docking_port/stationary{ + dir = 8; + dwidth = 2; + height = 13; + id = "ferry_away"; + json_key = "ferry"; + name = "CentCom Ferry Dock"; + width = 5 + }, +/turf/open/space, +/area/centcom/ferry) +"pB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) +"pC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) +"pD" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) "pE" = ( /obj/machinery/plantgenes/seedvault, /obj/effect/turf_decal/tile/green{ @@ -7040,6 +7092,25 @@ /obj/item/stack/packageWrap, /turf/open/floor/plasteel/cafeteria, /area/centcom/holding) +"pT" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) +"pU" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) "pV" = ( /obj/machinery/light{ dir = 4 @@ -7050,6 +7121,12 @@ /obj/effect/landmark/ai_multicam_room, /turf/open/ai_visible, /area/ai_multicam_room) +"pX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) "pY" = ( /obj/machinery/washing_machine, /turf/open/floor/plasteel/freezer{ @@ -7151,6 +7228,22 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/ferry) +"qh" = ( +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/storage/secure/briefcase, +/obj/structure/table/wood, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/centcom/ferry) "qi" = ( /obj/structure/table/wood, /obj/item/storage/secure/briefcase{ @@ -7407,6 +7500,16 @@ "qE" = ( /turf/closed/indestructible/riveted/uranium, /area/wizard_station) +"qF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) +"qG" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) "qH" = ( /obj/structure/urinal{ pixel_y = 28 @@ -7548,6 +7651,25 @@ /obj/machinery/computer/shuttle, /turf/open/floor/engine/cult, /area/wizard_station) +"rb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plasteel, +/area/centcom/supplypod/loading/ert) +"rc" = ( +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-21" + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/centcom/ferry) "rd" = ( /obj/structure/flora/grass/brown, /obj/effect/light_emitter{ @@ -7823,7 +7945,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Commander's Office APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/structure/table/reinforced, /obj/item/stack/sheet/metal/fifty, @@ -8104,6 +8226,23 @@ }, /turf/open/floor/engine/cult, /area/wizard_station) +"rY" = ( +/obj/item/clipboard, +/obj/item/folder/red, +/obj/item/stamp/denied{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/stamp, +/obj/structure/table/reinforced, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) +"rZ" = ( +/obj/structure/table/reinforced, +/obj/item/book/manual/wiki/security_space_law, +/obj/item/taperecorder, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) "sa" = ( /obj/structure/table/wood, /obj/item/lighter, @@ -8114,6 +8253,23 @@ /obj/machinery/vending/snack, /turf/open/floor/plasteel, /area/centcom/supplypod) +"sc" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/centcom/ferry) +"sd" = ( +/obj/machinery/door/airlock/centcom{ + name = "Orbital Drop Pod Loading"; + req_access_txt = "106" + }, +/turf/open/floor/plasteel, +/area/centcom/ferry) "se" = ( /obj/machinery/light{ dir = 8 @@ -8160,7 +8316,6 @@ /turf/open/floor/plasteel, /area/syndicate_mothership/control) "si" = ( -/obj/machinery/computer/telecrystals/uplinker, /obj/effect/turf_decal/stripes/line{ dir = 9 }, @@ -8225,7 +8380,7 @@ /turf/open/floor/plasteel, /area/centcom/ferry) "sr" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/green{ @@ -8246,7 +8401,7 @@ /turf/open/floor/plasteel, /area/centcom/ferry) "st" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/turf_decal/tile/green{ @@ -8306,7 +8461,7 @@ /turf/open/floor/plasteel/grimy, /area/centcom/ferry) "sz" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -8340,7 +8495,7 @@ /turf/open/floor/plasteel/dark, /area/centcom/ferry) "sB" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, @@ -8616,11 +8771,35 @@ /area/wizard_station) "sY" = ( /obj/machinery/door/airlock/centcom{ - name = "CentCom Supply"; + name = "CentCom Supplypod Loading"; + req_access_txt = "106" + }, +/turf/open/floor/plasteel/dark, +/area/centcom/evac) +"sZ" = ( +/obj/machinery/door/airlock/centcom{ + name = "CentCom Supplypod Loading"; req_access_txt = "106" }, /turf/open/floor/plasteel/dark, /area/centcom/supplypod) +"ta" = ( +/obj/machinery/light/floor, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/centcom/ferry) +"tb" = ( +/turf/open/floor/white, +/area/holodeck/rec_center/photobooth) +"tc" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/light/floor, +/turf/open/floor/plating, +/area/centcom/ferry) +"td" = ( +/obj/structure/sign/departments/drop, +/turf/closed/indestructible/riveted, +/area/centcom/ferry) "te" = ( /obj/structure/table/wood, /obj/item/reagent_containers/food/snacks/pizzaslice/mushroom, @@ -8647,7 +8826,6 @@ /turf/open/floor/plasteel, /area/syndicate_mothership/control) "tg" = ( -/obj/machinery/computer/telecrystals/uplinker, /obj/effect/turf_decal/stripes/line{ dir = 8 }, @@ -8664,6 +8842,25 @@ }, /turf/open/floor/plating/airless, /area/syndicate_mothership/control) +"tj" = ( +/obj/structure/falsewall/wood, +/obj/structure/mirror, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/photobooth) +"tk" = ( +/obj/structure/table/wood, +/obj/item/paint/anycolor{ + pixel_x = 7 + }, +/obj/item/paint/anycolor{ + pixel_x = -5 + }, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/photobooth) +"tl" = ( +/obj/structure/dresser, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/photobooth) "tn" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -8690,7 +8887,7 @@ /turf/open/floor/plasteel, /area/centcom/ferry) "tq" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/green{ dir = 8 }, @@ -8744,7 +8941,7 @@ /turf/open/floor/plasteel/grimy, /area/centcom/ferry) "tz" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/structure/cable/white{ @@ -9202,7 +9399,7 @@ /turf/open/floor/plasteel/dark, /area/centcom/control) "uw" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/red{ dir = 8 @@ -9323,7 +9520,6 @@ /turf/open/floor/plasteel, /area/syndicate_mothership/control) "uM" = ( -/obj/machinery/computer/telecrystals/uplinker, /obj/effect/turf_decal/stripes/line{ dir = 10 }, @@ -9752,7 +9948,7 @@ name = "Hanger Bay Shutters"; pixel_x = -8; pixel_y = 24; - req_access_txt = "2" + req_access_txt = "101" }, /obj/machinery/button/door/indestructible{ id = "XCCsec3"; @@ -10114,7 +10310,7 @@ id = "XCCFerry"; name = "Hanger Bay Shutters"; pixel_y = 24; - req_access_txt = "2" + req_access_txt = "101" }, /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -10298,9 +10494,6 @@ /turf/open/floor/carpet, /area/wizard_station) "wV" = ( -/obj/machinery/computer/telecrystals/boss{ - dir = 1 - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, @@ -10342,18 +10535,6 @@ }, /turf/open/floor/plasteel, /area/syndicate_mothership/control) -"xb" = ( -/obj/docking_port/stationary{ - dir = 8; - dwidth = 2; - height = 13; - id = "ferry_away"; - json_key = "ferry"; - name = "CentCom Ferry Dock"; - width = 5 - }, -/turf/open/space, -/area/space) "xc" = ( /obj/machinery/door/airlock/external{ name = "Ferry Airlock" @@ -10673,13 +10854,13 @@ /turf/open/floor/plasteel/dark, /area/centcom/control) "xV" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/wood, /area/centcom/control) "xW" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/wood, @@ -10792,32 +10973,10 @@ /obj/structure/sign/warning/vacuum, /turf/open/floor/plating, /area/centcom/ferry) -"yo" = ( -/obj/machinery/light, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plasteel, -/area/centcom/ferry) "yp" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plasteel, /area/centcom/ferry) -"yq" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/machinery/computer/security/telescreen/entertainment{ - pixel_y = -28 - }, -/obj/structure/sign/warning/securearea{ - pixel_x = 32 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plasteel, -/area/centcom/ferry) "yr" = ( /obj/machinery/door/airlock/centcom{ name = "Briefing Room"; @@ -11315,12 +11474,12 @@ /turf/open/floor/plasteel/dark, /area/centcom/ferry) "zB" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/ert_spawn, /turf/open/floor/plasteel/dark, /area/centcom/ferry) "zC" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/landmark/ert_spawn, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -11481,9 +11640,7 @@ /turf/open/floor/holofloor, /area/holodeck/rec_center/basketball) "zV" = ( -/obj/structure/closet/secure_closet/freezer/meat{ - locked = 0 - }, +/obj/structure/closet/secure_closet/freezer/meat/open, /obj/item/reagent_containers/food/snacks/carpmeat, /obj/item/reagent_containers/food/snacks/carpmeat, /obj/item/reagent_containers/food/snacks/carpmeat, @@ -11587,7 +11744,7 @@ /turf/open/floor/plasteel/dark, /area/centcom/ferry) "Ah" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/ert_spawn, @@ -11748,24 +11905,6 @@ "AH" = ( /turf/open/floor/plasteel, /area/centcom/supplypod/loading/one) -"AJ" = ( -/obj/structure/chair/comfy/brown{ - color = "#596479"; - dir = 4 - }, -/turf/open/floor/plasteel/grimy, -/area/centcom/ferry) -"AK" = ( -/obj/item/clipboard, -/obj/item/folder/red, -/obj/item/stamp/denied{ - pixel_x = 3; - pixel_y = 3 - }, -/obj/item/stamp, -/obj/structure/table/reinforced, -/turf/open/floor/plasteel/grimy, -/area/centcom/ferry) "AL" = ( /obj/structure/table/reinforced, /obj/item/flashlight/seclite, @@ -11806,7 +11945,7 @@ /turf/open/floor/plasteel/dark, /area/centcom/ferry) "AP" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/landmark/ert_spawn, @@ -11844,7 +11983,7 @@ /obj/machinery/power/apc{ dir = 4; name = "Briefing Area APC"; - pixel_x = 26 + pixel_x = 24 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -12000,12 +12139,6 @@ }, /turf/open/floor/plasteel/grimy, /area/centcom/ferry) -"Bw" = ( -/obj/structure/table/reinforced, -/obj/item/book/manual/wiki/security_space_law, -/obj/item/taperecorder, -/turf/open/floor/plasteel/grimy, -/area/centcom/ferry) "Bx" = ( /obj/structure/table/reinforced, /obj/item/storage/fancy/donut_box, @@ -12323,14 +12456,14 @@ /turf/open/floor/plasteel/dark, /area/centcom/ferry) "Ca" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/ert_spawn, /turf/open/floor/plasteel/dark, /area/centcom/ferry) "Cb" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /obj/effect/landmark/ert_spawn, @@ -12549,7 +12682,7 @@ /obj/machinery/power/apc{ dir = 2; name = "Briefing Room APC"; - pixel_y = -26 + pixel_y = -23 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -12861,9 +12994,6 @@ /turf/open/floor/plasteel/dark, /area/centcom/evac) "CT" = ( -/obj/machinery/vr_sleeper{ - dir = 4 - }, /turf/open/floor/wood, /area/centcom/holding) "CV" = ( @@ -13059,9 +13189,6 @@ /turf/closed/indestructible/riveted, /area/ai_multicam_room) "Dj" = ( -/obj/machinery/vr_sleeper{ - dir = 8 - }, /turf/open/floor/wood, /area/centcom/holding) "Dq" = ( @@ -13236,7 +13363,7 @@ /turf/open/floor/plasteel/dark, /area/centcom/control) "DG" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/red, @@ -13276,7 +13403,7 @@ /turf/open/floor/plasteel, /area/centcom/control) "DJ" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/blue{ @@ -13287,13 +13414,6 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/control) -"DK" = ( -/obj/machinery/door/airlock/centcom{ - name = "CentCom Supply"; - req_access_txt = "106" - }, -/turf/open/floor/plasteel/dark, -/area/centcom/evac) "DL" = ( /obj/item/clothing/suit/wizrobe/black, /obj/item/clothing/head/wizard/black, @@ -14445,7 +14565,7 @@ /turf/open/floor/plasteel, /area/tdome/tdomeobserve) "GF" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /obj/item/reagent_containers/food/snacks/meat/rawbacon, /obj/item/reagent_containers/food/snacks/meat/rawbacon, /obj/item/reagent_containers/food/snacks/meat/rawbacon, @@ -14480,7 +14600,7 @@ /turf/open/floor/plasteel/dark, /area/tdome/tdomeobserve) "GG" = ( -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/item/reagent_containers/food/snacks/grown/potato, /obj/item/reagent_containers/food/snacks/grown/potato, /obj/item/reagent_containers/food/snacks/grown/whitebeet, @@ -14548,7 +14668,7 @@ /turf/open/floor/plasteel/dark, /area/tdome/tdomeobserve) "GJ" = ( -/obj/structure/closet/secure_closet/freezer/meat, +/obj/structure/closet/secure_closet/freezer/meat/open, /obj/item/reagent_containers/food/snacks/meat/slab/bear, /obj/item/reagent_containers/food/snacks/meat/slab/bear, /obj/item/reagent_containers/food/snacks/meat/slab/bear, @@ -17371,6 +17491,13 @@ /obj/structure/closet/crate/bin, /turf/open/floor/wood, /area/centcom/holding) +"Pj" = ( +/obj/structure/chair/comfy/brown{ + color = "#596479"; + dir = 4 + }, +/turf/open/floor/plasteel/grimy, +/area/centcom/ferry) "Pl" = ( /obj/structure/window/reinforced, /obj/structure/window/reinforced{ @@ -17403,7 +17530,6 @@ /turf/open/floor/plasteel, /area/centcom/supplypod/loading/four) "Px" = ( -/obj/machinery/vr_sleeper, /turf/open/floor/wood, /area/centcom/holding) "Pz" = ( @@ -17418,9 +17544,6 @@ /turf/open/floor/carpet/black, /area/centcom/holding) "PF" = ( -/obj/machinery/vr_sleeper{ - dir = 1 - }, /turf/open/floor/wood, /area/centcom/holding) "PI" = ( @@ -17528,9 +17651,6 @@ /turf/open/indestructible/binary, /area/fabric_of_reality) "Qu" = ( -/obj/machinery/vr_sleeper{ - dir = 8 - }, /obj/machinery/light{ dir = 4 }, @@ -17709,6 +17829,12 @@ "Si" = ( /turf/open/floor/plasteel, /area/centcom/supplypod/loading/two) +"Sq" = ( +/obj/structure/table/wood, +/obj/item/camera, +/obj/item/camera, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/photobooth) "Su" = ( /turf/open/floor/plasteel, /area/centcom/supplypod) @@ -18331,9 +18457,7 @@ /turf/open/floor/plasteel, /area/tdome/tdomeobserve) "Yu" = ( -/obj/structure/closet/secure_closet/freezer/fridge{ - locked = 0 - }, +/obj/structure/closet/secure_closet/freezer/fridge/open, /turf/open/floor/plasteel/cafeteria, /area/centcom/holding) "Yv" = ( @@ -18345,13 +18469,6 @@ }, /turf/open/floor/plasteel/dark, /area/centcom/supplypod) -"YA" = ( -/obj/machinery/door/airlock/centcom{ - name = "CentCom Supply"; - req_access_txt = "106" - }, -/turf/open/floor/plasteel, -/area/centcom/supplypod) "YJ" = ( /obj/item/reagent_containers/food/condiment/enzyme, /obj/item/reagent_containers/food/drinks/shaker, @@ -18427,9 +18544,6 @@ /turf/open/floor/wood, /area/centcom/holding) "Zt" = ( -/obj/machinery/vr_sleeper{ - dir = 1 - }, /obj/machinery/light, /turf/open/floor/wood, /area/centcom/holding) @@ -18456,6 +18570,18 @@ }, /turf/open/floor/plasteel, /area/centcom/evac) +"ZN" = ( +/obj/structure/table/wood, +/obj/item/toy/crayon/spraycan{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/toy/crayon/spraycan{ + pixel_x = -5; + pixel_y = 5 + }, +/turf/open/floor/holofloor/carpet, +/area/holodeck/rec_center/photobooth) "ZQ" = ( /obj/effect/turf_decal/tile/brown, /obj/effect/turf_decal/tile/brown{ @@ -23361,21 +23487,21 @@ aa aa aa aa -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA aa "} (20,1,1) = {" @@ -23618,6 +23744,7 @@ aa aa aa aa +jA hH hH hH @@ -23631,8 +23758,7 @@ hH hH hH hH -hH -hH +jA aa "} (21,1,1) = {" @@ -23875,6 +24001,7 @@ aa aa aa aa +jA hH hH hH @@ -23888,8 +24015,7 @@ hH hH hH hH -hH -hH +jA aa "} (22,1,1) = {" @@ -24132,6 +24258,7 @@ aa aa aa aa +jA hH hH hH @@ -24145,8 +24272,7 @@ hH hH hH hH -hH -hH +jA aa "} (23,1,1) = {" @@ -24389,6 +24515,7 @@ aa aa aa aa +jA hH hH hH @@ -24402,8 +24529,7 @@ hH hH hH hH -hH -hH +jA aa "} (24,1,1) = {" @@ -24646,6 +24772,7 @@ aa aa aa aa +jA hH hH hH @@ -24659,8 +24786,7 @@ hH hH hH hH -hH -hH +jA aa "} (25,1,1) = {" @@ -24903,7 +25029,7 @@ aa aa aa aa -hH +jA hH hH hH @@ -24917,7 +25043,7 @@ hH hH hH hH -hH +jA aa "} (26,1,1) = {" @@ -25160,7 +25286,7 @@ aa aa aa aa -hH +jA hH hH hH @@ -25174,7 +25300,7 @@ hH hH hH hH -hH +jA aa "} (27,1,1) = {" @@ -25417,7 +25543,7 @@ aa aa aa aa -hH +jA hH hH hH @@ -25431,7 +25557,7 @@ hH hH hH hH -hH +jA aa "} (28,1,1) = {" @@ -25674,7 +25800,7 @@ aa aa aa aa -hH +jA hH hH hH @@ -25688,7 +25814,7 @@ hH hH hH hH -hH +jA aa "} (29,1,1) = {" @@ -25931,7 +26057,7 @@ aa aa aa aa -hH +jA hH hH hH @@ -25945,7 +26071,7 @@ hH hH hH hH -hH +jA aa "} (30,1,1) = {" @@ -26188,6 +26314,7 @@ aa aa aa aa +jA hH hH hH @@ -26201,8 +26328,7 @@ hH hH hH hH -hH -hH +jA aa "} (31,1,1) = {" @@ -26445,6 +26571,7 @@ aa aa aa aa +jA hH hH hH @@ -26458,8 +26585,7 @@ hH hH hH hH -hH -hH +jA aa "} (32,1,1) = {" @@ -26702,6 +26828,7 @@ lI lI lI aa +jA hH hH hH @@ -26715,8 +26842,7 @@ hH hH hH hH -hH -hH +jA aa "} (33,1,1) = {" @@ -26959,6 +27085,7 @@ lI lI lI aa +jA hH hH hH @@ -26972,8 +27099,7 @@ hH hH hH hH -hH -hH +jA aa "} (34,1,1) = {" @@ -27216,6 +27342,7 @@ lI lI lI aa +jA hH hH hH @@ -27229,8 +27356,7 @@ hH hH hH hH -hH -hH +jA aa "} (35,1,1) = {" @@ -27473,21 +27599,21 @@ lI lI lI aa -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH -hH +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA +jA aa "} (36,1,1) = {" @@ -52849,9 +52975,9 @@ to uj oe aa -aa -xb -aa +pz +pA +pz aa aa aa @@ -53105,12 +53231,12 @@ sr tp uk mD -aa +pz oe xc oe +pz aa -mD aa aa aa @@ -53623,7 +53749,13 @@ vB oe Xy oe -vB +oU +nU +ta +oe +td +oe +ta mD aa aa @@ -53697,12 +53829,6 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa "} (138,1,1) = {" aa @@ -53880,14 +54006,14 @@ vC wr xe wr -yo -nU -aa -aa -aa -aa -aa -aa +wx +mD +pB +pT +pT +pT +qF +oe aa aa aa @@ -54138,6 +54264,12 @@ ws xf ws yp +sd +pC +pU +pU +pU +qG oe aa aa @@ -54211,12 +54343,6 @@ aa aa aa aa -aa -aa -aa -aa -aa -aa "} (140,1,1) = {" aa @@ -54394,14 +54520,14 @@ vE wt xg wt -yq +px mD -aa -aa -aa -aa -aa -aa +pD +pX +pX +pX +rb +oe aa aa aa @@ -54653,11 +54779,11 @@ xh wu mD mD -oe +tc oe nU oe -oe +tc mD mD aa @@ -54911,8 +55037,8 @@ wv mD yY zz -oA -uV +qh +rc Bu BZ Cq @@ -55426,7 +55552,7 @@ qR za pg Ab -AJ +Pj Bv pg Cs @@ -55683,8 +55809,8 @@ nU zb pg Ac -AK -Bw +rY +rZ pg Ct nT @@ -55941,7 +56067,7 @@ uV zA sw zA -sw +sc zA Cu nU @@ -66483,7 +66609,7 @@ Cc CO Cc Cc -DK +sY NO NO NO @@ -66742,7 +66868,7 @@ qx Wc qx Yn -sY +sZ Yn Ep Ep @@ -67000,7 +67126,7 @@ Cc Yn Pz Su -NO +qI NO PV PV @@ -67009,7 +67135,7 @@ NO NO Uw NO -NO +ly WM Yn ET @@ -67257,7 +67383,7 @@ Cc Yn Ty Su -NO +qI ly sb jO @@ -67266,7 +67392,7 @@ NO NO NO NO -NO +ly TT Yn Yn @@ -67514,8 +67640,8 @@ Dx Yn Yn Yn -YA -YA +sZ +sZ Yn Yn Yn @@ -68289,10 +68415,10 @@ AH AH OP PK -YA +sZ UM UM -YA +sZ Vn PW Vn @@ -68546,10 +68672,10 @@ OP OP OP PK -YA +sZ QO QO -YA +sZ Vn PW Vn @@ -69318,8 +69444,8 @@ Yn Yn Yn Yn -NO -NO +wk +wk Yn Yn Yn @@ -69575,8 +69701,8 @@ zM zM zs Yn -NO -NO +aa +aa Yn Pv Pv @@ -69832,8 +69958,8 @@ Se Se Tc Yn -Yv -yf +aa +aa Yn Pm Pm @@ -70081,17 +70207,17 @@ Cd qx MI NO -YA +Yn Se Si Se Si Se Tc -YA -UM -UM -YA +Yn +aa +aa +Yn Xh Xh Pm @@ -70338,17 +70464,17 @@ qy qx OD NO -YA +Yn Se Si Se Si Se Tc -YA -QO -QO -YA +Yn +aa +aa +Yn Xh Xh Pm @@ -70603,8 +70729,8 @@ Si Se Tc Yn -Sv -Ru +aa +aa Yn Pm Pm @@ -70860,8 +70986,8 @@ Vk Vk Oq Yn -Su -Su +aa +aa Yn Co Co @@ -71117,8 +71243,8 @@ Yn Yn Yn Yn -wk -wk +aa +aa Yn Yn Yn @@ -71438,18 +71564,18 @@ aa aa "} (207,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +ab +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +ab aa aa aa @@ -71695,18 +71821,18 @@ aa aa "} (208,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +ac +tj +tb +tb +tb +tb +tb +tb +tb +tb +tb +fx aa aa aa @@ -71952,18 +72078,18 @@ aa aa "} (209,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +ac +tk +tb +tb +tb +tb +tb +tb +tb +tb +tb +fx aa aa aa @@ -72209,18 +72335,18 @@ aa aa "} (210,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +ac +Sq +tb +tb +tb +tb +tb +tb +tb +tb +tb +fx aa aa aa @@ -72466,18 +72592,18 @@ aa aa "} (211,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +ac +ZN +tb +tb +tb +tb +tb +tb +tb +tb +tb +fx aa aa aa @@ -72723,18 +72849,18 @@ aa aa "} (212,1,1) = {" -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa +ac +tl +tb +tb +tb +tb +tb +tb +tb +tb +tb +fx aa aa aa @@ -72981,16 +73107,16 @@ aa "} (213,1,1) = {" ab -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae +ag +ag +ag +ag +ag +ag +ag +ag +ag +ag ab ae ae diff --git a/_maps/map_files/generic/City_of_Cogs.dmm b/_maps/map_files/generic/City_of_Cogs.dmm index e67a8292212..20e8a7fade0 100644 --- a/_maps/map_files/generic/City_of_Cogs.dmm +++ b/_maps/map_files/generic/City_of_Cogs.dmm @@ -49,7 +49,7 @@ /area/reebe/city_of_cogs) "am" = ( /obj/structure/table/reinforced/brass, -/obj/item/storage/firstaid, +/obj/item/storage/firstaid/regular, /turf/open/floor/clockwork/reebe, /area/reebe/city_of_cogs) "an" = ( diff --git a/_maps/shuttles/arrival_delta.dmm b/_maps/shuttles/arrival_delta.dmm index 3c5ea0fffde..79cb8272843 100644 --- a/_maps/shuttles/arrival_delta.dmm +++ b/_maps/shuttles/arrival_delta.dmm @@ -430,7 +430,7 @@ /turf/open/floor/plasteel, /area/shuttle/arrival) "R" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/blue{ dir = 1 }, diff --git a/_maps/shuttles/arrival_kilo.dmm b/_maps/shuttles/arrival_kilo.dmm new file mode 100644 index 00000000000..c6118afc13a --- /dev/null +++ b/_maps/shuttles/arrival_kilo.dmm @@ -0,0 +1,549 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/arrival) +"b" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/arrival) +"c" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/arrival) +"d" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Arrival Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"e" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/wall/mineral/titanium, +/area/shuttle/arrival) +"f" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/turf/open/floor/plating, +/area/shuttle/arrival) +"g" = ( +/turf/template_noop, +/area/template_noop) +"h" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/mineral/titanium, +/area/shuttle/arrival) +"i" = ( +/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/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + 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/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/turf_decal/delivery, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"j" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/arrows{ + icon_state = "arrows"; + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"k" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"l" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/obj/machinery/status_display/evac{ + pixel_y = 32 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"m" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/arrows{ + icon_state = "arrows"; + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"n" = ( +/obj/structure/shuttle/engine/propulsion/left{ + icon_state = "propulsion_l"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/shuttle/arrival) +"o" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/turf/open/floor/plating, +/area/shuttle/arrival) +"p" = ( +/obj/structure/table, +/obj/item/flashlight{ + pixel_y = 8 + }, +/obj/item/flashlight, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"q" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/arrows{ + icon_state = "arrows"; + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"r" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"s" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/item/radio/intercom{ + pixel_x = 28 + }, +/obj/effect/turf_decal/arrows{ + icon_state = "arrows"; + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"t" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/structure/chair/comfy/shuttle, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"u" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/docking_port/mobile/arrivals{ + dir = 4; + name = "kilo arrivals shuttle" + }, +/turf/open/floor/plating/airless, +/area/shuttle/arrival) +"v" = ( +/obj/structure/rack, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/item/radio{ + pixel_x = -6; + pixel_y = 6 + }, +/obj/item/radio{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/radio{ + pixel_x = 0; + pixel_y = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"w" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"x" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"y" = ( +/obj/machinery/requests_console{ + department = "Arrival shuttle"; + name = "Arrivals Shuttle console" + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/arrival) +"z" = ( +/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) +"A" = ( +/obj/machinery/vending/wallmed{ + name = "Emergency NanoMed"; + use_power = 0 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/arrival) +"B" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"C" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"D" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 2 + }, +/obj/machinery/door/airlock/shuttle{ + name = "Arrival Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"E" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"F" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"G" = ( +/obj/structure/shuttle/engine/propulsion/right{ + icon_state = "propulsion_r"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/shuttle/arrival) +"H" = ( +/obj/structure/table, +/obj/item/storage/toolbox/emergency, +/obj/item/crowbar/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"I" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"J" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"K" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"L" = ( +/obj/machinery/status_display/ai, +/turf/closed/wall/mineral/titanium, +/area/shuttle/arrival) +"M" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"N" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) +"O" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/arrival) +"P" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/machinery/status_display/evac{ + pixel_y = -32 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/arrival) + +(1,1,1) = {" +a +a +n +u +G +a +a +"} +(2,1,1) = {" +b +h +o +o +o +h +b +"} +(3,1,1) = {" +c +i +p +v +H +i +c +"} +(4,1,1) = {" +d +j +q +w +I +O +f +"} +(5,1,1) = {" +e +k +r +x +J +N +e +"} +(6,1,1) = {" +f +k +r +y +J +N +f +"} +(7,1,1) = {" +f +k +r +z +J +N +f +"} +(8,1,1) = {" +f +k +r +A +J +N +f +"} +(9,1,1) = {" +c +l +r +B +J +P +c +"} +(10,1,1) = {" +d +m +s +C +K +w +f +"} +(11,1,1) = {" +b +c +c +D +L +c +b +"} +(12,1,1) = {" +c +e +t +E +M +e +c +"} +(13,1,1) = {" +g +c +k +F +N +c +g +"} +(14,1,1) = {" +g +c +f +f +f +c +g +"} diff --git a/_maps/shuttles/cargo_kilo.dmm b/_maps/shuttles/cargo_kilo.dmm new file mode 100644 index 00000000000..ce40c679c43 --- /dev/null +++ b/_maps/shuttles/cargo_kilo.dmm @@ -0,0 +1,392 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/supply) +"b" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"c" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"d" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"e" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"f" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"g" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"h" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"i" = ( +/obj/machinery/door/poddoor{ + density = 1; + id = "QMLoaddoor"; + name = "Supply Dock Loading Door" + }, +/obj/machinery/conveyor{ + dir = 8; + id = "QMLoad"; + name = "off ramp" + }, +/turf/open/floor/plating, +/area/shuttle/supply) +"j" = ( +/obj/effect/turf_decal/loading_area{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/supply) +"k" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"l" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"m" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Supply Shuttle Airlock"; + req_access_txt = "31" + }, +/obj/effect/decal/cleanable/dirt, +/obj/docking_port/mobile/supply{ + dir = 4; + dwidth = 4; + width = 12 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/supply) +"n" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"o" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"p" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/button/door{ + id = "QMLoaddoor"; + layer = 4; + name = "Off Ramp Toggle"; + pixel_x = -24; + pixel_y = 6; + req_access_txt = "31" + }, +/obj/machinery/button/door{ + dir = 2; + id = "QMLoaddoor2"; + layer = 4; + name = "On Ramp Toggle"; + pixel_x = -24; + pixel_y = -6; + req_access_txt = "31" + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"q" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/sign/departments/cargo{ + pixel_x = 32 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"r" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Supply Shuttle Airlock"; + req_access_txt = "31" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/supply) +"s" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"t" = ( +/obj/machinery/door/poddoor{ + density = 1; + id = "QMLoaddoor2"; + name = "Supply Dock Loading Door" + }, +/obj/machinery/conveyor{ + dir = 4; + id = "QMLoad2"; + name = "on ramp" + }, +/turf/open/floor/plating, +/area/shuttle/supply) +"u" = ( +/obj/effect/turf_decal/loading_area{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/supply) +"v" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/end{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"w" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"x" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"y" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/supply) +"z" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/supply) +"A" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/supply) +"B" = ( +/turf/template_noop, +/area/template_noop) +"C" = ( +/obj/structure/shuttle/engine/propulsion/burst/left, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/supply) +"D" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/supply) +"E" = ( +/obj/structure/shuttle/engine/propulsion/burst/right, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/supply) + +(1,1,1) = {" +a +a +a +i +m +a +r +t +a +a +a +B +"} +(2,1,1) = {" +a +b +e +j +n +p +s +u +v +y +a +C +"} +(3,1,1) = {" +a +c +f +k +o +g +f +k +k +e +A +D +"} +(4,1,1) = {" +a +c +g +g +g +g +g +g +g +z +A +D +"} +(5,1,1) = {" +a +c +g +g +g +g +g +g +w +x +A +D +"} +(6,1,1) = {" +a +d +h +l +h +q +h +l +x +y +a +E +"} +(7,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +B +"} diff --git a/_maps/shuttles/emergency_delta.dmm b/_maps/shuttles/emergency_delta.dmm index eda566a240e..682cb64d8e4 100644 --- a/_maps/shuttles/emergency_delta.dmm +++ b/_maps/shuttles/emergency_delta.dmm @@ -1092,7 +1092,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/escape) "cf" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ @@ -1126,7 +1126,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/escape) "ch" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/effect/turf_decal/tile/neutral{ @@ -1168,7 +1168,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/escape) "cl" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, diff --git a/_maps/shuttles/emergency_imfedupwiththisworld.dmm b/_maps/shuttles/emergency_imfedupwiththisworld.dmm index 349918ef29f..3d6920f59f6 100644 --- a/_maps/shuttles/emergency_imfedupwiththisworld.dmm +++ b/_maps/shuttles/emergency_imfedupwiththisworld.dmm @@ -133,7 +133,7 @@ /turf/open/floor/wood, /area/shuttle/escape) "v" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/wood, /area/shuttle/escape) "w" = ( diff --git a/_maps/shuttles/emergency_kilo.dmm b/_maps/shuttles/emergency_kilo.dmm new file mode 100644 index 00000000000..83f5cd1785f --- /dev/null +++ b/_maps/shuttles/emergency_kilo.dmm @@ -0,0 +1,2099 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/template_noop) +"ab" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"ac" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/escape) +"ad" = ( +/obj/structure/table/reinforced, +/obj/item/storage/toolbox/mechanical, +/obj/item/radio, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ae" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/computer/communications, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"af" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/computer/emergency_shuttle, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ag" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/computer/crew, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ah" = ( +/obj/structure/table/reinforced, +/obj/item/storage/firstaid/o2{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/firstaid/regular, +/obj/item/crowbar, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ai" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"aj" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ak" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/effect/turf_decal/box/corners, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"al" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/chair/comfy/shuttle, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"am" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/effect/turf_decal/box/corners{ + icon_state = "box_corners"; + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"an" = ( +/obj/structure/table/reinforced, +/obj/item/clipboard, +/obj/item/restraints/handcuffs, +/obj/item/tank/internals/emergency_oxygen/engi, +/obj/item/tank/internals/emergency_oxygen/engi, +/obj/item/assembly/flash/handheld, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ao" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/door/airlock/shuttle{ + name = "External Shuttle Airlock" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ap" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/structure/table, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/item/crowbar/red, +/obj/item/storage/lockbox/loyalty, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/chair/comfy/shuttle, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"ar" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/table, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/recharger, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"as" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/escape) +"at" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/keycard_auth{ + pixel_x = -24 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"au" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/item/folder/red{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/folder/blue, +/obj/item/gun/energy/e_gun/mini, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"av" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/keycard_auth{ + pixel_x = 24 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aw" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/closet/emcloset/anchored, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ax" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"ay" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/end{ + dir = 4 + }, +/obj/structure/sign/warning/vacuum/external{ + pixel_y = 32 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"az" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aA" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aB" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aD" = ( +/obj/machinery/status_display, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"aE" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aF" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/item/storage/fancy/donut_box, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aH" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/door/airlock/shuttle{ + name = "External Shuttle Airlock" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aI" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aJ" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/door/airlock/security/glass{ + name = "Holding Area"; + req_one_access_txt = "19" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aK" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/box/corners{ + icon_state = "box_corners"; + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aL" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aM" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/box/corners{ + icon_state = "box_corners"; + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aN" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/door/airlock/command{ + name = "Shuttle Control"; + req_one_access_txt = "19" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aO" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aP" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"aQ" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"aR" = ( +/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/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + 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/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/turf_decal/delivery, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aT" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"aU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "applebush" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aV" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-22" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aX" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"aY" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/loading_area{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"aZ" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"ba" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bb" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock"; + req_one_access_txt = "63" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bc" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"bd" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"be" = ( +/obj/effect/turf_decal/stripes/line, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"bf" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/table, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/item/storage/box/zipties{ + pixel_y = 4 + }, +/obj/item/restraints/handcuffs, +/obj/item/restraints/handcuffs, +/turf/open/floor/mineral/plastitanium/red/brig, +/area/shuttle/escape) +"bg" = ( +/obj/machinery/status_display/evac, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"bh" = ( +/obj/structure/sign/warning/securearea, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"bi" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/suit_storage_unit/standard_unit, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bj" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/loading_area{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"bk" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"bl" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bm" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/door/airlock/security/glass{ + name = "Holding Area"; + req_access_txt = "2" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bn" = ( +/obj/effect/turf_decal/bot, +/obj/structure/closet/emcloset, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bo" = ( +/obj/structure/table, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = -4 + }, +/obj/item/tank/internals/air{ + pixel_x = 4 + }, +/obj/item/clothing/mask/breath{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/clothing/mask/breath, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bp" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bq" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/docking_port/mobile/emergency{ + name = "Kilo emergency shuttle" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"br" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bs" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bt" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bu" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bv" = ( +/obj/structure/sign/departments/security{ + pixel_y = 32 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bw" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bx" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"by" = ( +/obj/structure/sign/departments/engineering{ + pixel_y = 32 + }, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bz" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bA" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bB" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/machinery/status_display/evac{ + pixel_x = -32 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bC" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bD" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bE" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bF" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bG" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bH" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/machinery/status_display/evac{ + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bI" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bJ" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bK" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bL" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bM" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bN" = ( +/obj/machinery/vending/wallmed{ + name = "Emergency NanoMed"; + use_power = 0 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/escape) +"bO" = ( +/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) +"bP" = ( +/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) +"bQ" = ( +/obj/structure/extinguisher_cabinet, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/escape) +"bR" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bS" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bT" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bU" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bV" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bW" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bX" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"bY" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"bZ" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/item/radio/intercom{ + pixel_y = -28 + }, +/obj/machinery/light, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ca" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cb" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cc" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cd" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"ce" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-21"; + pixel_x = 0; + pixel_y = 0 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cf" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Emergency Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cg" = ( +/obj/structure/table, +/obj/item/storage/firstaid/o2, +/obj/item/tank/internals/emergency_oxygen, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"ch" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "applebush" + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"ci" = ( +/obj/structure/table, +/obj/item/storage/toolbox/emergency, +/obj/item/crowbar/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cj" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"ck" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cl" = ( +/obj/structure/closet/crate{ + name = "emergency supplies crate" + }, +/obj/item/storage/toolbox/emergency, +/obj/item/storage/toolbox/emergency, +/obj/item/flashlight/flare{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/flashlight/flare{ + pixel_x = -6; + pixel_y = -2 + }, +/obj/item/crowbar, +/obj/item/wrench, +/obj/item/radio, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cm" = ( +/obj/structure/sign/departments/medbay/alt, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"cn" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/door/airlock/medical/glass{ + name = "Shuttle Infirmary" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"co" = ( +/obj/structure/rack, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/item/radio{ + pixel_x = -6; + pixel_y = 6 + }, +/obj/item/radio{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/radio{ + pixel_x = 0; + pixel_y = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cp" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cq" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-05" + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cr" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cs" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"ct" = ( +/obj/structure/closet/crate/medical{ + name = "medical crate" + }, +/obj/item/storage/firstaid/regular, +/obj/item/storage/firstaid/o2{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/storage/firstaid/toxin{ + pixel_x = -4; + pixel_y = 3 + }, +/obj/item/healthanalyzer{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/lazarus_injector, +/obj/effect/turf_decal/bot, +/mob/living/simple_animal/bot/medbot{ + name = "\improper emergency medibot"; + pixel_x = -3; + pixel_y = 2 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cu" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/machinery/sleeper{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cv" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cw" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/item/twohanded/required/kirbyplants{ + icon_state = "plant-10" + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cx" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cy" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/sleeper{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cz" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/recharge_station, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cA" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cB" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) +"cC" = ( +/obj/effect/turf_decal/delivery, +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cD" = ( +/obj/structure/rack, +/obj/item/storage/toolbox/electrical{ + pixel_x = -3; + pixel_y = 1 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_y = -1 + }, +/obj/item/storage/toolbox/emergency{ + pixel_x = 3; + pixel_y = -5 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cE" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = 2 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cF" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cG" = ( +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cH" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cI" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/sink{ + dir = 4; + pixel_x = 11 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cJ" = ( +/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/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + 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/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/turf_decal/delivery, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cK" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/escape) +"cL" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"cM" = ( +/obj/machinery/vending/medical, +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cN" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cO" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line, +/obj/structure/chair/office/light, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cP" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cQ" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/chair/office/light, +/turf/open/floor/mineral/titanium/white, +/area/shuttle/escape) +"cR" = ( +/obj/structure/table, +/obj/item/circular_saw, +/obj/item/scalpel{ + pixel_y = 16 + }, +/obj/item/hemostat, +/obj/machinery/light{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/escape) +"cS" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/escape) +"cT" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"cU" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/shuttle/escape) +"cV" = ( +/obj/structure/table, +/obj/item/defibrillator/compact/loaded, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cW" = ( +/obj/structure/table, +/obj/item/storage/firstaid/fire{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/firstaid/regular{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/storage/firstaid/regular, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cX" = ( +/obj/structure/table, +/obj/item/clipboard, +/obj/item/reagent_containers/hypospray/medipen, +/obj/item/reagent_containers/hypospray/medipen{ + pixel_y = 6 + }, +/obj/item/reagent_containers/hypospray/medipen{ + pixel_y = -6 + }, +/obj/item/reagent_containers/glass/bottle/charcoal, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"cY" = ( +/obj/machinery/status_display/ai, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"cZ" = ( +/obj/machinery/computer/operating{ + dir = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"da" = ( +/obj/structure/table/optable, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/escape) +"db" = ( +/obj/structure/table, +/obj/item/surgical_drapes, +/obj/item/retractor, +/obj/item/cautery, +/turf/open/floor/plasteel/dark, +/area/shuttle/escape) +"dc" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 0 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"dd" = ( +/obj/structure/shuttle/engine/propulsion/left, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/escape) +"de" = ( +/obj/structure/shuttle/engine/propulsion/right, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/escape) + +(1,1,1) = {" +aa +aa +ab +ac +ab +ac +ai +bb +ab +bq +ab +ac +ac +ac +ab +bX +ab +bX +ai +ab +as +cS +aa +aa +aa +"} +(2,1,1) = {" +aa +aa +ac +ap +az +az +aS +bc +ac +br +bB +bI +bI +bI +bB +bx +ac +cj +cr +cC +cK +cT +aa +aa +aa +"} +(3,1,1) = {" +aa +aa +ab +aq +aA +aA +aA +bd +bm +bs +bC +bJ +bM +bJ +bS +bY +cf +ck +cs +cD +cL +cU +cS +cS +aa +"} +(4,1,1) = {" +aa +aa +ac +ar +aB +aA +aA +be +ac +bt +br +bK +bN +bu +bD +bK +ac +cl +ct +as +ab +ab +as +cS +cS +"} +(5,1,1) = {" +ab +ac +ai +as +aC +aI +aT +bf +ab +bu +bD +bK +bO +bu +bD +bZ +as +ab +bg +as +cM +cV +ac +dc +dd +"} +(6,1,1) = {" +ac +ad +aj +as +aD +aJ +ac +as +as +bv +bD +bK +bP +bu +bD +bK +cg +cm +cu +cE +cN +cW +cL +dc +cT +"} +(7,1,1) = {" +ac +ae +ak +at +aE +aK +aU +bg +bn +bw +bE +bK +bQ +bu +bT +ca +bC +cn +cv +cF +cO +cX +ac +dc +de +"} +(8,1,1) = {" +ac +af +al +au +aF +aL +aV +aN +aO +bx +bF +bL +bL +bL +bU +cb +ch +ac +cw +cG +cP +cY +ab +cS +cS +"} +(9,1,1) = {" +ac +ag +am +av +aG +aM +aW +bh +bo +bt +br +bK +bN +bu +bV +cc +bG +cn +cx +cH +cP +cZ +ac +dc +dd +"} +(10,1,1) = {" +ac +ah +an +as +as +aN +ab +as +as +by +bD +bK +bO +bu +bD +bK +ci +cm +cy +cI +cQ +da +cL +dc +cT +"} +(11,1,1) = {" +ab +ac +ai +as +as +aO +aX +bi +ab +bu +bD +bK +bP +bu +bD +bZ +as +ab +bg +as +cR +db +ac +dc +de +"} +(12,1,1) = {" +aa +aa +ab +aw +ac +aP +aY +bj +ac +bw +bE +bK +bQ +bu +bD +bK +ac +co +cz +as +ab +ab +as +cS +cS +"} +(13,1,1) = {" +aa +aa +ao +ax +aH +aQ +aZ +bk +bp +bz +bG +bJ +bR +bJ +bW +cd +cf +cp +cA +cJ +cL +cU +cS +cS +aa +"} +(14,1,1) = {" +aa +aa +ab +ay +ac +aR +ba +bl +ac +bA +bH +bl +bl +bl +bH +ce +ac +cq +cB +aR +cK +cT +aa +aa +aa +"} +(15,1,1) = {" +aa +aa +ab +ab +ab +ac +ai +ac +ab +ac +ab +ac +ac +ac +ab +ac +ab +ab +ai +ab +as +cS +aa +aa +aa +"} diff --git a/_maps/shuttles/emergency_meta.dmm b/_maps/shuttles/emergency_meta.dmm index 2bf59c226c3..5430f96b784 100644 --- a/_maps/shuttles/emergency_meta.dmm +++ b/_maps/shuttles/emergency_meta.dmm @@ -182,7 +182,7 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "ax" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/mineral/titanium/blue, @@ -216,7 +216,7 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "aC" = ( -/obj/structure/chair/office/dark, +/obj/structure/chair/office, /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "aE" = ( @@ -232,7 +232,7 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "aG" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/mineral/titanium/blue, diff --git a/_maps/shuttles/emergency_pod.dmm b/_maps/shuttles/emergency_pod.dmm new file mode 100644 index 00000000000..e136d9809cc --- /dev/null +++ b/_maps/shuttles/emergency_pod.dmm @@ -0,0 +1,156 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 8 + }, +/turf/closed/wall/mineral/titanium, +/area/shuttle/escape) +"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" = ( +/turf/open/space/basic, +/area/space) +"e" = ( +/obj/machinery/door/airlock/titanium{ + name = "Shuttle Airlock" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"f" = ( +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"g" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"i" = ( +/obj/machinery/light{ + icon_state = "tube"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"j" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"k" = ( +/obj/machinery/computer/emergency_shuttle{ + dir = 8 + }, +/obj/machinery/light/small{ + icon_state = "bulb"; + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) +"m" = ( +/obj/machinery/door/airlock/titanium{ + name = "Shuttle Airlock" + }, +/obj/docking_port/mobile/emergency{ + port_direction = 2; + preferred_direction = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/escape) + +(1,1,1) = {" +a +e +b +m +a +d +d +d +a +e +b +e +a +"} +(2,1,1) = {" +b +f +i +j +b +d +d +d +b +f +i +j +b +"} +(3,1,1) = {" +c +f +g +j +c +d +d +d +c +f +g +j +c +"} +(4,1,1) = {" +b +f +g +j +b +d +d +d +b +f +g +j +b +"} +(5,1,1) = {" +b +b +k +b +b +d +d +d +b +b +k +b +b +"} +(6,1,1) = {" +d +b +c +b +d +d +d +d +d +b +c +b +d +"} diff --git a/_maps/shuttles/emergency_pubby.dmm b/_maps/shuttles/emergency_pubby.dmm index dc58ecf2015..7f17317b67c 100644 --- a/_maps/shuttles/emergency_pubby.dmm +++ b/_maps/shuttles/emergency_pubby.dmm @@ -53,7 +53,7 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "al" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/mineral/titanium/blue, @@ -75,7 +75,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/escape) "aq" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/mineral/titanium/blue, @@ -574,7 +574,7 @@ /area/shuttle/escape) "br" = ( /obj/machinery/light, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/mineral/titanium/blue, @@ -584,7 +584,7 @@ /area/shuttle/escape) "bt" = ( /obj/machinery/light, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/mineral/titanium/blue, diff --git a/_maps/shuttles/emergency_raven.dmm b/_maps/shuttles/emergency_raven.dmm index e17712dd778..638d351eb17 100644 --- a/_maps/shuttles/emergency_raven.dmm +++ b/_maps/shuttles/emergency_raven.dmm @@ -79,7 +79,7 @@ /obj/effect/turf_decal/tile/blue{ dir = 4 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plasteel/dark, @@ -125,7 +125,7 @@ /obj/effect/turf_decal/tile/blue{ dir = 8 }, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /turf/open/floor/plasteel/dark, @@ -150,7 +150,7 @@ dir = 4 }, /obj/effect/turf_decal/tile/blue, -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/plasteel/dark, diff --git a/_maps/shuttles/emergency_russiafightpit.dmm b/_maps/shuttles/emergency_russiafightpit.dmm index abc40aa523d..f89d62e136e 100644 --- a/_maps/shuttles/emergency_russiafightpit.dmm +++ b/_maps/shuttles/emergency_russiafightpit.dmm @@ -503,7 +503,7 @@ "bF" = ( /obj/structure/table, /obj/item/storage/firstaid/brute, -/obj/item/storage/firstaid{ +/obj/item/storage/firstaid/regular{ pixel_x = 2; pixel_y = 3 }, diff --git a/_maps/shuttles/ferry_kilo.dmm b/_maps/shuttles/ferry_kilo.dmm new file mode 100644 index 00000000000..8bf7472f675 --- /dev/null +++ b/_maps/shuttles/ferry_kilo.dmm @@ -0,0 +1,299 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/transport) +"c" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/transport) +"d" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/transport) +"e" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/transport) +"f" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Ferry Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/fans/tiny, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"g" = ( +/obj/structure/sign/nanotrasen, +/turf/closed/wall/mineral/titanium, +/area/shuttle/transport) +"h" = ( +/obj/structure/shuttle/engine/propulsion/left{ + icon_state = "propulsion_l"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/shuttle/transport) +"i" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/turf/open/floor/plating, +/area/shuttle/transport) +"j" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/transport) +"k" = ( +/obj/structure/table/reinforced, +/obj/item/storage/firstaid/o2{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/firstaid/regular, +/obj/item/crowbar, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"l" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"m" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"n" = ( +/obj/structure/table/reinforced, +/obj/machinery/recharger, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"o" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"p" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "propulsion"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/shuttle/transport) +"q" = ( +/obj/machinery/computer/shuttle/ferry/request{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"r" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"s" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"t" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Ferry Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/fans/tiny, +/obj/docking_port/mobile{ + dir = 8; + dwidth = 2; + height = 11; + id = "ferry"; + name = "ferry shuttle"; + port_direction = 1; + preferred_direction = 4; + width = 5 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"u" = ( +/obj/structure/shuttle/engine/propulsion/right{ + icon_state = "propulsion_r"; + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/shuttle/transport) +"v" = ( +/obj/structure/rack, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/item/radio{ + pixel_x = -6; + pixel_y = 6 + }, +/obj/item/radio{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/radio{ + pixel_x = 0; + pixel_y = 4 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"w" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) +"x" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/machinery/light, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/transport) + +(1,1,1) = {" +a +h +p +u +a +"} +(2,1,1) = {" +b +i +i +i +b +"} +(3,1,1) = {" +c +j +q +j +c +"} +(4,1,1) = {" +d +k +r +v +d +"} +(5,1,1) = {" +e +l +r +w +e +"} +(6,1,1) = {" +d +l +r +w +d +"} +(7,1,1) = {" +f +m +s +m +f +"} +(8,1,1) = {" +g +n +r +n +g +"} +(9,1,1) = {" +e +l +r +w +e +"} +(10,1,1) = {" +d +o +r +x +d +"} +(11,1,1) = {" +d +e +t +e +d +"} diff --git a/_maps/shuttles/ferry_lighthouse.dmm b/_maps/shuttles/ferry_lighthouse.dmm index a12e8858cb3..4158efacc57 100644 --- a/_maps/shuttles/ferry_lighthouse.dmm +++ b/_maps/shuttles/ferry_lighthouse.dmm @@ -174,7 +174,7 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/transport) "aR" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /turf/open/floor/wood, diff --git a/_maps/shuttles/ferry_meat.dmm b/_maps/shuttles/ferry_meat.dmm index 334df92b557..6448621a4e8 100644 --- a/_maps/shuttles/ferry_meat.dmm +++ b/_maps/shuttles/ferry_meat.dmm @@ -27,7 +27,7 @@ /turf/open/floor/plasteel/freezer, /area/shuttle/transport) "h" = ( -/obj/structure/closet/secure_closet/freezer/meat{ +/obj/structure/closet/secure_closet/freezer/meat/open{ name = "\"meat\" fridge" }, /obj/item/reagent_containers/food/snacks/meat/slab/bear, diff --git a/_maps/shuttles/hunter_russian.dmm b/_maps/shuttles/hunter_russian.dmm new file mode 100644 index 00000000000..75b5dca6ba5 --- /dev/null +++ b/_maps/shuttles/hunter_russian.dmm @@ -0,0 +1,500 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/closed/wall, +/area/shuttle/hunter) +"c" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/shuttle/hunter) +"d" = ( +/obj/structure/shuttle/engine/heater{ + icon_state = "heater"; + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/shuttle/hunter) +"e" = ( +/obj/machinery/portable_atmospherics/scrubber/huge, +/turf/open/floor/plating, +/area/shuttle/hunter) +"f" = ( +/obj/machinery/power/smes, +/turf/open/floor/plating, +/area/shuttle/hunter) +"g" = ( +/turf/open/floor/plating, +/area/shuttle/hunter) +"h" = ( +/obj/machinery/door/airlock/security/glass, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"i" = ( +/obj/machinery/door/airlock/security/glass, +/obj/structure/fans/tiny, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"j" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/shuttle/hunter) +"k" = ( +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"l" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/bot, +/turf/open/floor/plating, +/area/shuttle/hunter) +"m" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/item/weldingtool/largetank, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"n" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/reagent_dispensers/watertank, +/obj/item/reagent_containers/glass/bucket, +/obj/item/mop, +/obj/item/storage/bag/trash{ + pixel_x = 6 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"o" = ( +/obj/effect/mob_spawn/human/fugitive/russian{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"p" = ( +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate{ + icon_state = "crateopen" + }, +/turf/open/floor/plating, +/area/shuttle/hunter) +"q" = ( +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"r" = ( +/obj/effect/turf_decal/arrows{ + icon_state = "arrows"; + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"s" = ( +/obj/structure/table, +/obj/item/storage/fancy/cigarettes/cigars/cohiba{ + pixel_y = 6 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"t" = ( +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate/large{ + icon_state = "crittercrate" + }, +/turf/open/floor/plating, +/area/shuttle/hunter) +"u" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"v" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/shuttle/hunter) +"w" = ( +/obj/machinery/fugitive_capture, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"x" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/plating, +/area/shuttle/hunter) +"y" = ( +/turf/template_noop, +/area/shuttle/hunter) +"z" = ( +/obj/structure/chair{ + icon_state = "chair"; + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"A" = ( +/obj/machinery/computer/shuttle/pirate/hunter{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"B" = ( +/obj/effect/turf_decal/bot, +/obj/structure/closet/crate{ + icon_state = "crateopen" + }, +/turf/open/floor/plating, +/area/shuttle/hunter) +"C" = ( +/obj/machinery/computer/camera_advanced{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"D" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"E" = ( +/obj/machinery/computer/camera_advanced/shuttle_docker/syndicate/hunter{ + dir = 8; + jumpto_ports = list("huntership_home" = 1); + view_range = 12; + x_offset = 0; + y_offset = 3 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"F" = ( +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate/engineering{ + icon_state = "engi_crateopen" + }, +/turf/open/floor/plating, +/area/shuttle/hunter) +"G" = ( +/obj/structure/table, +/obj/item/reagent_containers/food/drinks/bottle/vodka, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"H" = ( +/obj/effect/turf_decal/bot, +/obj/structure/closet/crate/coffin{ + icon_state = "coffinopen" + }, +/turf/open/floor/plating, +/area/shuttle/hunter) +"I" = ( +/obj/effect/turf_decal/bot, +/obj/mecha/working/ripley, +/turf/open/floor/plating, +/area/shuttle/hunter) +"J" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/hunter) +"K" = ( +/obj/machinery/door/airlock/security/glass, +/obj/structure/fans/tiny, +/obj/docking_port/stationary{ + dir = 1; + dwidth = 11; + height = 16; + id = "pirateship_home"; + name = "Deep Space"; + width = 17 + }, +/obj/docking_port/mobile{ + dheight = 3; + dir = 1; + dwidth = 3; + height = 13; + id = "huntership"; + movement_force = list("KNOCKDOWN" = 0, "THROW" = 0); + name = "hunter shuttle"; + rechargeTime = 1800; + width = 15 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/hunter) +"L" = ( +/obj/effect/mob_spawn/human/fugitive/russian{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/hunter) + +(1,1,1) = {" +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 +b +c +c +b +a +a +a +a +a +a +"} +(3,1,1) = {" +a +c +c +a +b +b +b +d +d +b +b +b +a +c +c +a +"} +(4,1,1) = {" +b +d +d +b +b +p +t +x +B +B +F +b +b +d +d +b +"} +(5,1,1) = {" +b +e +g +b +j +q +u +q +q +u +u +H +b +g +L +b +"} +(6,1,1) = {" +b +e +g +h +k +k +k +k +k +D +k +k +h +g +L +b +"} +(7,1,1) = {" +b +f +g +b +l +k +u +u +q +u +k +I +b +g +L +b +"} +(8,1,1) = {" +b +b +b +b +b +h +b +b +b +b +h +b +b +b +b +b +"} +(9,1,1) = {" +a +b +b +b +m +k +b +y +y +b +k +q +b +b +b +a +"} +(10,1,1) = {" +a +a +a +i +k +k +v +y +y +v +k +k +K +a +a +a +"} +(11,1,1) = {" +a +a +a +b +n +r +b +y +y +b +r +J +b +a +a +a +"} +(12,1,1) = {" +a +a +a +b +b +h +b +b +b +b +h +b +b +a +a +a +"} +(13,1,1) = {" +a +a +a +b +o +k +r +z +z +k +k +o +b +a +a +a +"} +(14,1,1) = {" +a +a +a +b +b +s +w +A +C +E +G +b +b +a +a +a +"} +(15,1,1) = {" +a +a +a +a +b +b +v +v +v +v +b +b +a +a +a +a +"} diff --git a/_maps/shuttles/hunter_space_cop.dmm b/_maps/shuttles/hunter_space_cop.dmm new file mode 100644 index 00000000000..5c0538bc69e --- /dev/null +++ b/_maps/shuttles/hunter_space_cop.dmm @@ -0,0 +1,263 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/obj/machinery/computer/camera_advanced/shuttle_docker/syndicate/hunter{ + dir = 8; + jumpto_ports = list("huntership_home" = 1); + view_range = 7; + x_offset = 6 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"ab" = ( +/obj/machinery/computer/shuttle/pirate/hunter{ + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"ac" = ( +/obj/structure/fans/tiny, +/obj/docking_port/stationary{ + dir = 4; + dwidth = 3; + height = 12; + id = "huntership_home"; + name = "Deep Space"; + width = 7 + }, +/obj/docking_port/mobile{ + dheight = 0; + dir = 4; + dwidth = 3; + height = 12; + id = "huntership"; + name = "hunter shuttle"; + rechargeTime = 1800; + width = 7 + }, +/obj/machinery/door/poddoor/shutters{ + id = "Interpolship" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"ae" = ( +/obj/machinery/button/door{ + id = "Interpolship"; + pixel_y = 26 + }, +/obj/effect/turf_decal/stripes{ + icon_state = "warningline"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"af" = ( +/obj/effect/turf_decal/stripes{ + icon_state = "warningline"; + dir = 8 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"ag" = ( +/obj/effect/turf_decal/delivery, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"ah" = ( +/obj/effect/turf_decal/loading_area{ + icon_state = "loadingarea"; + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"aj" = ( +/obj/structure/closet/crate, +/obj/effect/turf_decal/box, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"ak" = ( +/obj/structure/chair/comfy/shuttle{ + icon_state = "shuttle_chair"; + dir = 1 + }, +/obj/effect/mob_spawn/human/fugitive/spacepol{ + icon_state = "sleeper"; + dir = 1 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"al" = ( +/obj/effect/turf_decal/stripes{ + icon_state = "warningline"; + dir = 8 + }, +/obj/effect/turf_decal/caution{ + icon_state = "caution"; + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"bY" = ( +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"gi" = ( +/obj/structure/table, +/obj/effect/mob_spawn/human/fugitive/spacepol{ + dir = 8; + icon_state = "sleeper" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"hB" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8 + }, +/turf/closed/wall/mineral/titanium, +/area/shuttle/hunter) +"hJ" = ( +/obj/structure/window/shuttle, +/obj/structure/grille, +/turf/open/floor/plating, +/area/shuttle/hunter) +"ku" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/hunter) +"lp" = ( +/obj/machinery/fugitive_capture, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"rR" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"te" = ( +/obj/structure/fans/tiny, +/obj/machinery/door/poddoor/shutters{ + id = "Interpolship" + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"An" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/hunter) +"Pq" = ( +/turf/template_noop, +/area/template_noop) +"Rz" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) +"RO" = ( +/turf/open/floor/mineral/titanium/blue, +/area/shuttle/hunter) + +(1,1,1) = {" +Pq +ku +te +ac +te +ku +Pq +"} +(2,1,1) = {" +Pq +ku +ae +al +af +ku +Pq +"} +(3,1,1) = {" +Pq +ku +bY +RO +ak +ku +Pq +"} +(4,1,1) = {" +hB +ku +bY +RO +ak +ku +hB +"} +(5,1,1) = {" +ku +ku +bY +RO +ak +ku +ku +"} +(6,1,1) = {" +Pq +hJ +ag +RO +RO +hJ +Pq +"} +(7,1,1) = {" +Pq +hJ +ah +RO +aj +hJ +Pq +"} +(8,1,1) = {" +Pq +ku +lp +RO +aj +ku +Pq +"} +(9,1,1) = {" +hB +ku +ku +rR +ku +ku +hB +"} +(10,1,1) = {" +ku +ku +RO +Rz +RO +ku +ku +"} +(11,1,1) = {" +Pq +An +aa +gi +ab +An +Pq +"} +(12,1,1) = {" +Pq +ku +An +An +An +ku +Pq +"} diff --git a/_maps/shuttles/infiltrator_advanced.dmm b/_maps/shuttles/infiltrator_advanced.dmm new file mode 100644 index 00000000000..7de6f573027 --- /dev/null +++ b/_maps/shuttles/infiltrator_advanced.dmm @@ -0,0 +1,2970 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/closed/wall/r_wall/syndicate/nodiagonal, +/area/shuttle/syndicate/bridge) +"ab" = ( +/obj/structure/window/plastitanium, +/obj/machinery/door/poddoor/shutters{ + id = "syndieshutters"; + name = "blast shutters" + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/shuttle/syndicate/bridge) +"ac" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 9 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/bridge) +"ad" = ( +/turf/template_noop, +/area/template_noop) +"ae" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 5 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/bridge) +"af" = ( +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/bridge) +"ag" = ( +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/reagent_containers/food/drinks/bottle/whiskey{ + desc = "A bottle of whiskey. There's a label that reads 'tears' taped to the front."; + name = "Bottle of Tears"; + pixel_x = 3; + pixel_y = 5 + }, +/obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ + pixel_x = -7; + pixel_y = 10 + }, +/obj/item/reagent_containers/food/drinks/drinkingglass/shotglass{ + pixel_x = -7; + pixel_y = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"ah" = ( +/obj/machinery/computer/camera_advanced/shuttle_docker/syndicate, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"ai" = ( +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/obj/item/storage/toolbox/syndicate, +/obj/item/assembly/voice, +/obj/item/crowbar/red, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"aj" = ( +/obj/machinery/computer/shuttle/syndicate, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"ak" = ( +/obj/machinery/computer/camera_advanced/syndie, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"al" = ( +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 4 + }, +/obj/item/stack/cable_coil/red, +/obj/item/crowbar/red, +/obj/item/radio/headset/syndicate/alt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"am" = ( +/obj/machinery/computer/crew/syndie{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"an" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 8; + name = "tactical chair" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/status_display/evac{ + pixel_x = -32; + pixel_y = 32 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/bridge) +"ao" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/item/radio/intercom{ + freerange = 1; + name = "Syndicate Radio Intercom"; + pixel_y = 0 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"ap" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 1; + name = "tactical chair" + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"aq" = ( +/obj/structure/table/reinforced, +/obj/machinery/button/door{ + id = "syndieshutters"; + name = "Bridge View Toggle"; + pixel_x = 0; + pixel_y = 7; + req_access_txt = "150" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/button/door{ + id = "infiltrator_bridge"; + name = "Bridge Bolt Control"; + normaldoorcontrol = 1; + pixel_y = -2; + specialfunctions = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"ar" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4; + name = "tactical chair" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/status_display/ai{ + pixel_x = 32; + pixel_y = 32 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/bridge) +"as" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/computer/monitor/secret{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"at" = ( +/obj/machinery/computer/med_data/syndie{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/firealarm{ + dir = 1; + pixel_x = 0; + pixel_y = -26 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"au" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 8; + name = "tactical chair" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/power/apc/syndicate{ + aidisabled = 1; + area = "/area/shuttle/syndicate/bridge"; + dir = 2; + name = "Infiltrator E.V.A APC"; + pixel_x = 0; + pixel_y = -26 + }, +/obj/structure/cable/yellow, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/bridge) +"av" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/bridge) +"aw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/bridge) +"ax" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/bridge) +"ay" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 4; + name = "tactical chair" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/airalarm/syndicate{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -24 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/bridge) +"az" = ( +/obj/machinery/computer/secure_data/syndie{ + dir = 8 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/bridge) +"aA" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/door/airlock/hatch{ + id_tag = "infiltrator_bridge"; + name = "Infiltrator Bridge"; + req_access_txt = "150" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/bridge) +"aB" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 9 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/airlock) +"aC" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 2; + name = "tactical chair" + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"aD" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 5 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/airlock) +"aE" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 2; + name = "tactical chair" + }, +/obj/effect/turf_decal/bot, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/status_display/evac{ + pixel_y = 32 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"aF" = ( +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/hallway) +"aG" = ( +/obj/effect/turf_decal/bot, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 8 + }, +/obj/item/paper_bin{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/pen, +/obj/item/toy/figure/syndie{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/machinery/firealarm{ + pixel_y = 26 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/hallway) +"aH" = ( +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/eva) +"aI" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 2; + name = "tactical chair" + }, +/obj/effect/turf_decal/bot, +/obj/structure/extinguisher_cabinet{ + pixel_x = -26 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"aJ" = ( +/obj/structure/sign/warning/securearea, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/airlock) +"aK" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 2; + name = "tactical chair" + }, +/obj/effect/turf_decal/bot, +/obj/machinery/power/apc/syndicate{ + aidisabled = 1; + area = "/area/shuttle/syndicate/airlock"; + dir = 4; + name = "Infiltrator Airlock APC"; + pixel_x = 28; + pixel_y = 0 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"aL" = ( +/obj/structure/sign/warning/vacuum/external, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/airlock) +"aM" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/hallway) +"aN" = ( +/obj/structure/tank_dispenser/oxygen, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"aO" = ( +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/airlock) +"aP" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"aQ" = ( +/obj/structure/grille, +/obj/structure/window/plastitanium, +/turf/open/floor/plating, +/area/shuttle/syndicate/eva) +"aR" = ( +/obj/machinery/door/airlock/hatch{ + name = "Preparation Room"; + req_access_txt = "150" + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/eva) +"aS" = ( +/obj/effect/turf_decal/bot, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 4 + }, +/obj/item/storage/fancy/cigarettes/cigpack_syndicate{ + pixel_x = 8 + }, +/obj/item/lighter{ + pixel_x = -2; + pixel_y = 2 + }, +/obj/item/lighter{ + pixel_x = -6; + pixel_y = -2 + }, +/obj/machinery/power/apc/syndicate{ + aidisabled = 1; + area = "/area/shuttle/syndicate/hallway"; + dir = 1; + name = "Infiltrator APC"; + pixel_x = 0; + pixel_y = 26 + }, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/airalarm/syndicate{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24; + pixel_y = 0 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/hallway) +"aT" = ( +/obj/structure/sign/warning/vacuum/external{ + layer = 4 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/airlock) +"aU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"aV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"aW" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/machinery/door/airlock/hatch{ + name = "Infiltrator Access"; + req_access_txt = "150" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/hallway) +"aX" = ( +/obj/structure/table/reinforced, +/obj/item/storage/toolbox/mechanical{ + pixel_y = 6 + }, +/obj/item/storage/toolbox/syndicate, +/obj/item/crowbar/red, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/eva) +"aY" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/hallway) +"aZ" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/eva) +"ba" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/hallway) +"bb" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/eva) +"bc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/hallway) +"bd" = ( +/obj/structure/table/reinforced, +/obj/item/storage/box/bodybags{ + pixel_y = 6 + }, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/bruise_pack{ + pixel_x = 6 + }, +/obj/item/stack/medical/ointment, +/obj/structure/extinguisher_cabinet{ + pixel_x = -26 + }, +/obj/machinery/status_display/ai{ + pixel_y = 32 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"be" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/machinery/door/airlock/hatch{ + name = "Infiltrator Access"; + req_access_txt = "150" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/hallway) +"bf" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/shuttle/syndicate/medical) +"bg" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"bh" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/door/poddoor/shutters{ + id = "infiltrator_medbay"; + name = "Infiltrator Medical Bay" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bi" = ( +/obj/machinery/suit_storage_unit/syndicate, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/eva) +"bj" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"bk" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"bl" = ( +/obj/item/clipboard, +/obj/item/reagent_containers/hypospray/medipen, +/obj/item/reagent_containers/hypospray/medipen{ + pixel_y = 6 + }, +/obj/item/reagent_containers/hypospray/medipen{ + pixel_y = -6 + }, +/obj/item/reagent_containers/glass/bottle/charcoal, +/obj/structure/table/reinforced, +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bm" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"bn" = ( +/obj/structure/shuttle/engine/heater, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/medical) +"bo" = ( +/obj/machinery/sleeper/syndie{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/status_display/evac{ + pixel_x = -32 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"bp" = ( +/obj/machinery/door/poddoor{ + id = "infiltrator_portblast"; + name = "Infiltrator Port Hatch" + }, +/obj/machinery/button/door{ + id = "infiltrator_portblast"; + name = "Infiltrator Port Hatch Control"; + pixel_y = 26; + req_access_txt = "150" + }, +/obj/structure/fans/tiny, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/airlock) +"bq" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/door/poddoor/shutters{ + id = "infiltrator_medbay"; + name = "Infiltrator Medical Bay" + }, +/obj/machinery/button/door{ + id = "infiltrator_medbay"; + name = "Infiltrator Medical Bay Toggle"; + pixel_x = 24; + pixel_y = 0; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"br" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"bs" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"bt" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"bu" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 2; + name = "tactical chair" + }, +/obj/effect/turf_decal/bot, +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"bv" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"bw" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/box, +/obj/effect/turf_decal/stripes/box, +/turf/open/floor/plating, +/area/shuttle/syndicate/medical) +"bx" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"by" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bz" = ( +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bB" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/effect/turf_decal/delivery, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/eva) +"bC" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"bD" = ( +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/medical) +"bE" = ( +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/armory) +"bF" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/box, +/obj/effect/turf_decal/stripes/box, +/turf/open/floor/plating, +/area/shuttle/syndicate/armory) +"bG" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"bH" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/obj/structure/sign/departments/medbay/alt{ + pixel_x = -32; + pixel_y = -32 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bI" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"bJ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"bK" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"bL" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"bM" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"bN" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"bO" = ( +/obj/structure/tank_dispenser/oxygen, +/obj/effect/turf_decal/bot, +/obj/machinery/status_display/ai{ + pixel_x = -32; + pixel_y = 32 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/eva) +"bP" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/vending/medical/syndicate_access, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bQ" = ( +/obj/structure/grille, +/obj/structure/window/plastitanium, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"bR" = ( +/obj/machinery/power/port_gen/pacman{ + anchored = 1 + }, +/obj/item/wrench, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/hallway) +"bS" = ( +/obj/machinery/suit_storage_unit/syndicate, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, +/obj/machinery/power/apc/syndicate{ + aidisabled = 1; + area = "/area/shuttle/syndicate/eva"; + dir = 1; + name = "Infiltrator E.V.A APC"; + pixel_x = 0; + pixel_y = 26 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/eva) +"bT" = ( +/obj/structure/closet/crate, +/obj/item/stack/sheet/metal/twenty, +/obj/item/stack/sheet/glass{ + amount = 10 + }, +/obj/item/stack/sheet/mineral/plastitanium{ + amount = 20 + }, +/obj/item/storage/box/lights/bulbs, +/obj/item/storage/toolbox/mechanical, +/obj/item/stack/sheet/mineral/plasma{ + amount = 20 + }, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/hallway) +"bU" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/item/radio/intercom{ + freerange = 1; + name = "Syndicate Radio Intercom"; + pixel_y = 22 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"bV" = ( +/obj/machinery/door/window{ + dir = 1; + name = "Surgery Chamber"; + req_access_txt = "150" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"bW" = ( +/obj/item/clipboard{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/book/manual/wiki/surgery, +/obj/item/clothing/gloves/color/latex, +/obj/item/clothing/mask/surgical, +/obj/item/clothing/suit/apron/surgical, +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 0 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"bX" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 5 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"bY" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/effect/turf_decal/stripes/red/corner{ + icon_state = "warninglinecorner_red"; + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"bZ" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/machinery/door/airlock/external{ + id_tag = "infiltrator_portdoor"; + name = "Infiltrator Port Airlock" + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/airlock) +"ca" = ( +/turf/closed/wall/r_wall/syndicate/nodiagonal, +/area/shuttle/syndicate/airlock) +"cb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/power/terminal{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/hallway) +"cc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"cd" = ( +/obj/machinery/door/airlock/hatch{ + name = "Preparation Room"; + req_access_txt = "150" + }, +/obj/effect/turf_decal/delivery, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/eva) +"ce" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/shuttle/syndicate/eva) +"cf" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/eva) +"cg" = ( +/obj/machinery/suit_storage_unit/syndicate, +/obj/effect/turf_decal/box, +/obj/machinery/airalarm/syndicate{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -24 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/eva) +"ch" = ( +/obj/item/surgical_drapes, +/obj/item/retractor, +/obj/item/cautery, +/obj/structure/table/reinforced, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"ci" = ( +/obj/structure/table/reinforced, +/obj/machinery/status_display/evac{ + pixel_x = 32 + }, +/obj/item/stack/sheet/mineral/plastitanium{ + amount = 30 + }, +/obj/item/stack/cable_coil/red, +/obj/item/assembly/prox_sensor{ + desc = "Used for scanning and alerting when someone enters a certain proximity. This one is slightly shifted to the left."; + pixel_x = -6; + pixel_y = 6 + }, +/obj/item/assembly/prox_sensor{ + desc = "Used for scanning and alerting when someone enters a certain proximity. This one is slightly shifted to the left."; + pixel_x = -6; + pixel_y = 6 + }, +/obj/item/assembly/infra, +/obj/item/assembly/flash/handheld, +/obj/item/assembly/flash/handheld, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"cj" = ( +/obj/structure/rack, +/obj/effect/turf_decal/bot, +/obj/item/storage/firstaid/regular{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/firstaid/fire, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"ck" = ( +/obj/structure/sign/warning/securearea, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/hallway) +"cl" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cm" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"cn" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable/yellow, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"co" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"cp" = ( +/obj/effect/turf_decal/bot, +/obj/structure/rack, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 26; + pixel_y = 0 + }, +/obj/item/clothing/suit/space/syndicate, +/obj/item/tank/internals/oxygen/yellow, +/obj/item/clothing/mask/gas{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/clothing/head/helmet/space/syndicate, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"cq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"cr" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/shuttle/syndicate/medical) +"cs" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/hallway) +"ct" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/shuttle/syndicate/armory) +"cu" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"cv" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/poddoor/shutters{ + id = "infiltrator_armorybay"; + name = "Infiltrator Armoy Bay" + }, +/obj/machinery/button/door{ + id = "infiltrator_armorybay"; + name = "Infiltrator Armory Bay Toggle"; + pixel_x = -24; + pixel_y = 0; + req_access_txt = "150" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"cw" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/closet/crate/freezer{ + name = "universal blood storage" + }, +/obj/machinery/iv_drip, +/obj/item/reagent_containers/blood/universal{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/reagent_containers/blood/universal, +/obj/item/reagent_containers/blood/universal{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/machinery/airalarm/syndicate{ + dir = 4; + pixel_x = -24 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"cx" = ( +/obj/structure/grille, +/obj/structure/window/plastitanium, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/syndicate/medical) +"cy" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/medical) +"cz" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/medical) +"cB" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/medical) +"cC" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 6 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/medical) +"cD" = ( +/obj/structure/shuttle/engine/large, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cE" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cF" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/shuttle/syndicate/armory) +"cG" = ( +/obj/structure/shuttle/engine/heater, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/armory) +"cH" = ( +/obj/structure/grille, +/obj/structure/window/plastitanium, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/syndicate/armory) +"cI" = ( +/obj/structure/shuttle/engine/large, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cJ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cK" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 10 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/armory) +"cL" = ( +/obj/structure/shuttle/engine/large, +/turf/open/floor/plating, +/area/shuttle/syndicate/medical) +"cM" = ( +/obj/structure/shuttle/engine/heater, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/hallway) +"cN" = ( +/obj/structure/grille, +/obj/structure/window/plastitanium, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cO" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/armory) +"cP" = ( +/turf/open/floor/plating, +/area/shuttle/syndicate/medical) +"cQ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/armory) +"cR" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/armory) +"cS" = ( +/obj/structure/shuttle/engine/large, +/turf/open/floor/plating, +/area/shuttle/syndicate/armory) +"cT" = ( +/turf/open/floor/plating, +/area/shuttle/syndicate/armory) +"cU" = ( +/obj/effect/turf_decal/bot, +/obj/structure/rack, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -26 + }, +/obj/item/clothing/suit/space/syndicate/black/red, +/obj/item/tank/internals/oxygen/yellow, +/obj/item/clothing/mask/gas{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/clothing/head/helmet/space/syndicate/black/red, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"cV" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 10 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/medical) +"cW" = ( +/obj/machinery/door/poddoor{ + id = "infiltrator_starboardblast"; + name = "Infiltrator Starboard Hatch" + }, +/obj/docking_port/mobile{ + dheight = 1; + dir = 8; + dwidth = 12; + height = 17; + hidden = 1; + id = "syndicate"; + movement_force = list("KNOCKDOWN" = 0, "THROW" = 0); + name = "syndicate infiltrator"; + port_direction = 4; + width = 23 + }, +/obj/structure/fans/tiny, +/obj/effect/turf_decal/box, +/obj/machinery/button/door{ + id = "infiltrator_starboardblast"; + name = "Infiltrator Starboard Hatch Control"; + pixel_y = 26; + req_access_txt = "150" + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/airlock) +"cX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cY" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/plating, +/area/shuttle/syndicate/hallway) +"cZ" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 6 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/armory) +"da" = ( +/obj/item/sbeacondrop/bomb{ + pixel_x = -4; + pixel_y = 8 + }, +/obj/item/sbeacondrop/bomb{ + pixel_x = -4 + }, +/obj/structure/table/reinforced, +/obj/item/radio/headset/syndicate/alt{ + pixel_x = 4; + pixel_y = 4 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"db" = ( +/obj/structure/table/reinforced, +/obj/machinery/status_display/ai{ + pixel_x = 32 + }, +/obj/machinery/cell_charger, +/obj/item/stock_parts/cell/high/plus{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/stock_parts/cell/high/plus, +/obj/item/multitool, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"dc" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dd" = ( +/obj/effect/turf_decal/box/corners, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"de" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"df" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dg" = ( +/obj/machinery/door/airlock/hatch{ + name = "Preparation Room"; + req_access_txt = "150" + }, +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/eva) +"dh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"di" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, +/obj/machinery/airalarm/syndicate{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dj" = ( +/obj/item/grenade/syndieminibomb{ + pixel_x = 6; + pixel_y = 4 + }, +/obj/item/grenade/syndieminibomb{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/structure/table/reinforced, +/obj/item/grenade/plastic/c4, +/obj/item/grenade/plastic/c4, +/obj/item/grenade/plastic/c4, +/obj/item/grenade/plastic/c4, +/obj/item/grenade/plastic/c4, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"dk" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, +/obj/machinery/airalarm/syndicate{ + dir = 1; + icon_state = "alarm0"; + pixel_y = -24 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dl" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/airalarm/syndicate{ + dir = 8; + icon_state = "alarm0"; + pixel_x = 24; + pixel_y = 0 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dm" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"dn" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/machinery/light{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"do" = ( +/obj/structure/sign/departments/engineering{ + pixel_x = 32 + }, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/caution/stand_clear, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"dp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/airalarm/syndicate{ + dir = 4; + pixel_x = -24 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dq" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/light/small, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dr" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"ds" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"dt" = ( +/obj/structure/sign/departments/medbay/alt{ + pixel_x = -32 + }, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/caution/stand_clear, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"du" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 10 + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"dv" = ( +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/caution/stand_clear, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/airlock) +"dw" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/door/poddoor/shutters{ + id = "infiltrator_armorybay"; + name = "Infiltrator Armoy Bay" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"dx" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt, +/obj/item/radio/intercom{ + freerange = 1; + name = "Syndicate Radio Intercom"; + pixel_y = 22 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/airlock) +"dy" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"dz" = ( +/obj/item/circular_saw, +/obj/item/surgicaldrill{ + pixel_y = 5 + }, +/obj/item/healthanalyzer, +/obj/structure/table/reinforced, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/status_display/evac{ + pixel_x = -32 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"dA" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"dB" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/cable{ + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/hallway) +"dC" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/hallway) +"dD" = ( +/obj/structure/mirror{ + pixel_x = -28 + }, +/obj/machinery/shower{ + dir = 4; + name = "emergency shower" + }, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"dE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"dF" = ( +/obj/structure/rack, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/item/storage/firstaid/regular{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/firstaid/brute, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/machinery/light/small, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"dG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/red/line, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/cc64k_ad{ + pixel_y = 32 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"dH" = ( +/obj/machinery/sleeper/syndie{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/obj/machinery/power/apc/syndicate{ + aidisabled = 1; + area = "/area/shuttle/syndicate/medical"; + dir = 8; + name = "Infiltrator Medical APC"; + pixel_x = -28; + pixel_y = 0 + }, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"dI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"dJ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/box/corners, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -26 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"dK" = ( +/obj/machinery/power/smes{ + charge = 5e+006 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/obj/structure/cable/yellow{ + icon_state = "0-4" + }, +/obj/structure/sign/warning/electricshock{ + pixel_y = 32 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/hallway) +"dL" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/red/line{ + icon_state = "warningline_red"; + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"dM" = ( +/obj/structure/rack, +/obj/item/pickaxe/mini{ + pixel_y = 6 + }, +/obj/item/pickaxe/mini, +/obj/item/flashlight/seclite, +/obj/item/flashlight/seclite, +/obj/item/extinguisher/mini, +/obj/machinery/power/apc/syndicate{ + aidisabled = 1; + area = "/area/shuttle/syndicate/armory"; + dir = 4; + name = "Infiltrator Armory APC"; + pixel_x = 28; + pixel_y = 0 + }, +/obj/structure/cable/yellow{ + icon_state = "0-8" + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"dN" = ( +/obj/machinery/recharge_station, +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 0 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"dO" = ( +/obj/structure/closet/syndicate/personal, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"dP" = ( +/obj/machinery/suit_storage_unit/syndicate, +/obj/effect/turf_decal/box, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/status_display/evac{ + pixel_y = -32 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/eva) +"dQ" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/oil, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 1 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"dR" = ( +/turf/closed/wall/r_wall/syndicate/nodiagonal, +/area/shuttle/syndicate/eva) +"dS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/red/line{ + icon_state = "warningline_red"; + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden, +/obj/structure/sign/departments/engineering{ + pixel_x = 32; + pixel_y = -32 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"dT" = ( +/obj/machinery/computer/operating{ + dir = 1 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/airalarm/syndicate{ + dir = 4; + pixel_x = -24 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"dU" = ( +/obj/structure/table/optable, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"dV" = ( +/obj/item/scalpel{ + pixel_y = 16 + }, +/obj/structure/table/reinforced, +/obj/item/bodypart/l_arm/robot{ + pixel_x = -6 + }, +/obj/item/bodypart/r_arm/robot{ + pixel_x = 6 + }, +/obj/item/hemostat, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/medical) +"dW" = ( +/obj/machinery/telecomms/allinone{ + intercept = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"dX" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/supply/visible{ + icon_state = "pipe11-2"; + dir = 5 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"dY" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 6 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"dZ" = ( +/obj/machinery/recharge_station, +/obj/effect/turf_decal/delivery, +/obj/structure/window/reinforced{ + dir = 1; + pixel_y = 0 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/status_display/evac{ + pixel_x = 32 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"ea" = ( +/obj/structure/closet/syndicate/personal, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/light/small, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"eb" = ( +/obj/machinery/atmospherics/components/unary/tank/air{ + dir = 8 + }, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/nosmoking{ + pixel_x = 28 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"ec" = ( +/obj/machinery/door/airlock/hatch{ + name = "Ordnance Storage"; + req_access_txt = "150" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-4" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/hallway) +"ed" = ( +/obj/effect/turf_decal/bot, +/obj/structure/table/reinforced, +/obj/item/storage/box/zipties{ + pixel_x = 4; + pixel_y = 6 + }, +/obj/item/storage/box/handcuffs{ + pixel_y = 2 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"ee" = ( +/obj/machinery/nuclearbomb/syndicate{ + anchored = 1 + }, +/obj/machinery/door/window{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/stripes/end{ + dir = 1 + }, +/obj/machinery/light/small, +/turf/open/floor/circuit/red, +/area/shuttle/syndicate/hallway) +"ef" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"eg" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/manifold/supply/hidden{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"eh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"ei" = ( +/obj/machinery/atmospherics/components/binary/pump/on{ + dir = 1; + name = "Connector to Ship" + }, +/obj/machinery/door/window{ + dir = 1; + name = "Systems Chamber"; + req_access_txt = "150" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"ej" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/effect/turf_decal/box/corners{ + icon_state = "box_corners"; + dir = 8 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/eva) +"ek" = ( +/obj/machinery/door/airlock/hatch{ + name = "Ordnance Storage"; + req_access_txt = "150" + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/hallway) +"el" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"em" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/supply/hidden{ + dir = 9 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/cable/yellow{ + icon_state = "1-8" + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"en" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 9 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/medical) +"eo" = ( +/obj/structure/table/reinforced, +/obj/item/wrench, +/obj/item/weldingtool/largetank, +/obj/item/assembly/signaler{ + desc = "Used to remotely activate devices. Allows for syncing when using a secure signaler on another. Slightly scooted."; + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/assembly/signaler{ + desc = "Used to remotely activate devices. Allows for syncing when using a secure signaler on another. Slightly scooted."; + pixel_x = 4; + pixel_y = 4 + }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 26 + }, +/obj/machinery/airalarm/syndicate{ + pixel_y = 24 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"ep" = ( +/obj/structure/mirror{ + pixel_y = 28 + }, +/obj/structure/sink{ + pixel_y = 24 + }, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/medical) +"eq" = ( +/obj/machinery/porta_turret/syndicate/shuttle{ + dir = 5 + }, +/turf/closed/wall/r_wall/syndicate, +/area/shuttle/syndicate/armory) +"er" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 26; + pixel_y = 0 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/medical) +"es" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 4; + pixel_x = -26 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/syndicate/armory) +"et" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/manifold/supply/visible{ + icon_state = "manifold-2"; + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/syndicate/armory) +"eu" = ( +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = 26; + pixel_y = 0 + }, +/turf/open/floor/pod/dark, +/area/shuttle/syndicate/armory) +"ev" = ( +/turf/closed/wall/mineral/plastitanium/nodiagonal, +/area/shuttle/syndicate/hallway) + +(1,1,1) = {" +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +en +bn +bw +ad +ad +ad +ad +ad +ad +ad +ad +"} +(2,1,1) = {" +ad +ad +ad +ad +ad +ad +aO +bp +aT +aO +bD +bD +bD +bD +bD +bn +bw +ad +ad +ad +ad +"} +(3,1,1) = {" +ad +ad +ad +ad +ad +aO +ca +bU +dc +aO +bd +bo +dH +cw +bf +bD +bD +bD +bD +cV +ad +"} +(4,1,1) = {" +ad +ad +ad +ad +ad +aO +aN +bm +di +aO +bl +bA +by +bH +bL +dz +dD +dT +bn +cy +ad +"} +(5,1,1) = {" +ad +ad +ad +ad +aB +aO +aL +bZ +aJ +aO +bf +ep +bz +dd +dr +bV +dE +dU +cx +cA +cL +"} +(6,1,1) = {" +ad +ad +ad +ad +aO +aI +aP +bC +dn +dt +bh +br +cc +bJ +bN +bW +ch +dV +cx +cB +cP +"} +(7,1,1) = {" +ad +af +ab +ab +aO +aE +aU +df +dl +dv +bq +bs +bs +er +du +bX +dF +cr +bD +cC +ad +"} +(8,1,1) = {" +ac +aa +am +at +aO +aK +aV +cp +ce +dR +dR +aR +dR +ce +bP +dA +cj +bn +cy +ad +ad +"} +(9,1,1) = {" +ab +ag +an +au +aF +aF +aW +ce +dR +bi +dJ +bG +dP +dR +bQ +ec +ck +cM +cz +cD +ad +"} +(10,1,1) = {" +ab +ah +ao +av +aF +aG +aY +aQ +aX +bO +bj +bI +bB +aQ +bR +dB +cl +cN +cX +cE +ad +"} +(11,1,1) = {" +ab +aj +ap +aw +aA +aM +ba +cd +dm +dm +bk +bK +bi +aH +dK +cb +ee +cs +ev +ev +ad +"} +(12,1,1) = {" +ab +ak +aq +ax +aF +aS +bc +aQ +aZ +bb +bt +bM +cf +aQ +bT +dC +cn +cN +cX +cI +ad +"} +(13,1,1) = {" +ab +al +ar +ay +aF +aF +be +ce +dR +bS +ej +de +cg +dR +bQ +ek +ck +cM +cY +cJ +ad +"} +(14,1,1) = {" +ae +aa +as +az +aO +aC +bg +cU +ce +dR +dR +dg +dR +ce +ed +el +dO +cG +cO +ad +ad +"} +(15,1,1) = {" +ad +af +ab +ab +aO +aE +bv +dh +dp +dv +cv +ds +cq +es +dY +em +ea +ct +bE +cK +ad +"} +(16,1,1) = {" +ad +ad +ad +ad +aO +bu +bx +cm +co +do +dw +dy +dI +dI +ef +dN +dQ +dW +cH +cQ +cS +"} +(17,1,1) = {" +ad +ad +ad +ad +aD +aO +aL +bZ +aJ +aO +cF +dG +dj +da +eg +ei +et +dX +cH +cR +cT +"} +(18,1,1) = {" +ad +ad +ad +ad +ad +aO +aN +cu +dk +aO +ai +bY +dL +dS +eh +dZ +eb +eu +cG +cO +ad +"} +(19,1,1) = {" +ad +ad +ad +ad +ad +aO +ca +dx +dq +aO +eo +ci +dM +db +cF +bE +bE +bE +bE +cZ +ad +"} +(20,1,1) = {" +ad +ad +ad +ad +ad +ad +aO +cW +aT +aO +bE +bE +bE +bE +bE +cG +bF +ad +ad +ad +ad +"} +(21,1,1) = {" +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +eq +cG +bF +ad +ad +ad +ad +ad +ad +ad +ad +"} diff --git a/_maps/shuttles/infiltrator_basic.dmm b/_maps/shuttles/infiltrator_basic.dmm index f7ec35c6677..f85fcf26199 100644 --- a/_maps/shuttles/infiltrator_basic.dmm +++ b/_maps/shuttles/infiltrator_basic.dmm @@ -87,7 +87,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/syndicate/bridge) "ao" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8; name = "tactical swivel chair" }, @@ -97,7 +97,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/syndicate/bridge) "aq" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1; name = "tactical swivel chair" }, @@ -111,7 +111,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/syndicate/bridge) "ar" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4; name = "tactical swivel chair" }, diff --git a/_maps/shuttles/labour_box.dmm b/_maps/shuttles/labour_box.dmm index 7e754ea02f9..df7a62cc4cf 100644 --- a/_maps/shuttles/labour_box.dmm +++ b/_maps/shuttles/labour_box.dmm @@ -16,7 +16,7 @@ /turf/open/floor/mineral/plastitanium/red, /area/shuttle/labor) "d" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/mineral/plastitanium/red, diff --git a/_maps/shuttles/labour_delta.dmm b/_maps/shuttles/labour_delta.dmm index 1b656f641c4..6299e6e2f8f 100644 --- a/_maps/shuttles/labour_delta.dmm +++ b/_maps/shuttles/labour_delta.dmm @@ -16,7 +16,7 @@ /turf/open/floor/mineral/plastitanium/red, /area/shuttle/labor) "d" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 1 }, /turf/open/floor/mineral/plastitanium/red, diff --git a/_maps/shuttles/labour_kilo.dmm b/_maps/shuttles/labour_kilo.dmm new file mode 100644 index 00000000000..9ee9a38f07b --- /dev/null +++ b/_maps/shuttles/labour_kilo.dmm @@ -0,0 +1,312 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/labor) +"b" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/labor) +"c" = ( +/obj/machinery/computer/shuttle/labor{ + dir = 4 + }, +/obj/structure/reagent_dispensers/peppertank{ + pixel_x = -31 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"d" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"e" = ( +/obj/structure/table, +/obj/item/folder/red, +/obj/item/restraints/handcuffs, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"f" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"g" = ( +/obj/machinery/button/flasher{ + id = "gulagshuttleflasher"; + name = "Flash Control"; + pixel_y = -26; + req_access_txt = "1" + }, +/obj/machinery/light, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"h" = ( +/obj/machinery/mineral/stacking_unit_console{ + machinedir = 2; + pixel_x = 30; + pixel_y = 30 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"i" = ( +/obj/machinery/door/airlock/titanium{ + name = "Labor Shuttle Airlock"; + req_access_txt = "2" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"j" = ( +/obj/machinery/door/airlock/titanium{ + name = "Labor Shuttle Airlock"; + req_access_txt = "2" + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"k" = ( +/obj/machinery/mineral/stacking_machine/laborstacker{ + input_dir = 2; + output_dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"l" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"m" = ( +/obj/machinery/light{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"n" = ( +/obj/machinery/mineral/labor_claim_console{ + machinedir = 1; + pixel_x = 30 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"o" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"p" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"q" = ( +/obj/machinery/flasher{ + id = "gulagshuttleflasher"; + pixel_x = 25 + }, +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/turf/open/floor/mineral/plastitanium/red, +/area/shuttle/labor) +"r" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/structure/closet/crate, +/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/labor) +"s" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/loading_area{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/labor) +"t" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/labor) +"u" = ( +/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_direction = 4; + width = 9 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/labor) +"v" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/labor) +"w" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/labor) +"x" = ( +/turf/closed/wall/mineral/plastitanium, +/area/shuttle/labor) +"y" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/labor) + +(1,1,1) = {" +a +a +b +a +b +a +b +v +x +"} +(2,1,1) = {" +b +c +f +j +l +o +r +w +y +"} +(3,1,1) = {" +b +d +g +a +m +p +s +w +y +"} +(4,1,1) = {" +b +e +h +k +n +q +t +w +y +"} +(5,1,1) = {" +a +a +i +a +a +a +u +v +x +"} diff --git a/_maps/shuttles/mining_kilo.dmm b/_maps/shuttles/mining_kilo.dmm new file mode 100644 index 00000000000..b75851a6cca --- /dev/null +++ b/_maps/shuttles/mining_kilo.dmm @@ -0,0 +1,198 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/mining) +"b" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/mining) +"c" = ( +/obj/structure/table, +/obj/item/storage/toolbox/emergency, +/obj/machinery/status_display/evac{ + pixel_y = 32 + }, +/obj/machinery/light/small{ + dir = 8 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/mining) +"d" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/computer/shuttle/mining, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/mining) +"e" = ( +/obj/structure/table, +/obj/item/crowbar/red, +/obj/item/radio/intercom{ + pixel_y = 22 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/mining) +"f" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/end{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/mining) +"g" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/mining) +"h" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/mining) +"i" = ( +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/mining) +"j" = ( +/obj/machinery/door/airlock/shuttle{ + name = "Mining Shuttle Airlock" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/docking_port/mobile{ + dir = 8; + dwidth = 3; + height = 5; + id = "mining"; + name = "mining shuttle"; + port_direction = 4; + width = 7 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/mining) +"k" = ( +/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/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + 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/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/turf_decal/delivery, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/mining) +"l" = ( +/obj/effect/spawner/structure/window/shuttle, +/obj/structure/shuttle/engine/heater, +/turf/open/floor/plating, +/area/shuttle/mining) +"m" = ( +/obj/effect/turf_decal/delivery, +/obj/structure/ore_box, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/mining) +"n" = ( +/obj/structure/sign/warning/fire, +/turf/closed/wall/mineral/titanium, +/area/shuttle/mining) +"o" = ( +/obj/structure/shuttle/engine/propulsion, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating/airless, +/area/shuttle/mining) + +(1,1,1) = {" +a +a +b +a +b +a +a +"} +(2,1,1) = {" +a +c +f +h +g +k +n +"} +(3,1,1) = {" +b +d +g +i +g +l +o +"} +(4,1,1) = {" +a +e +f +h +g +m +n +"} +(5,1,1) = {" +a +a +b +j +b +a +a +"} diff --git a/_maps/shuttles/mining_large.dmm b/_maps/shuttles/mining_large.dmm new file mode 100644 index 00000000000..646e414b088 --- /dev/null +++ b/_maps/shuttles/mining_large.dmm @@ -0,0 +1,560 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/effect/spawner/structure/window/shuttle, +/turf/open/floor/plating, +/area/shuttle/mining/large) +"c" = ( +/obj/structure/table/reinforced, +/obj/item/storage/toolbox/emergency, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"d" = ( +/obj/machinery/computer/shuttle/mining, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"e" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/mask/gas, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/item/tank/internals/emergency_oxygen, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"f" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/obj/item/storage/firstaid/regular, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"g" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"h" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"i" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"j" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/obj/item/stack/ore/iron{ + pixel_x = 6; + pixel_y = 4 + }, +/obj/item/stack/ore/iron{ + pixel_x = -2; + pixel_y = -8 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"k" = ( +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/mining/large) +"l" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/obj/item/folder/yellow, +/obj/item/pen, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"m" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/corner, +/obj/machinery/light/small, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"n" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/line, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"o" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/corner{ + dir = 8 + }, +/obj/machinery/light/small, +/obj/item/radio/intercom{ + pixel_y = -29 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"p" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/item/stock_parts/cell/high, +/obj/item/screwdriver{ + pixel_y = 18 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"q" = ( +/obj/machinery/status_display/evac, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/shuttle/mining/large) +"r" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/door/airlock/mining{ + name = "Mining Shuttle Cockpit" + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"s" = ( +/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/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + pixel_x = 3 + }, +/obj/item/tank/internals/emergency_oxygen{ + 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/item/pickaxe/emergency, +/obj/item/pickaxe/emergency, +/obj/effect/turf_decal/box/white/corners{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"t" = ( +/obj/effect/turf_decal/box/white/corners{ + dir = 4 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"u" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"v" = ( +/obj/effect/turf_decal/box/white/corners{ + dir = 1 + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"w" = ( +/obj/effect/turf_decal/box/white/corners{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/ore_box, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"x" = ( +/obj/effect/turf_decal/box/white/corners{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"y" = ( +/obj/machinery/light/small, +/obj/effect/turf_decal/box/white/corners, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"z" = ( +/obj/effect/turf_decal/tile/neutral, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/line, +/obj/structure/cable/yellow{ + icon_state = "2-4" + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"A" = ( +/obj/machinery/light/small, +/obj/effect/turf_decal/box/white/corners{ + dir = 8 + }, +/obj/structure/cable/yellow{ + icon_state = "4-8" + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"B" = ( +/obj/effect/turf_decal/box/white/corners, +/obj/structure/cable/yellow{ + icon_state = "2-8" + }, +/turf/open/floor/plasteel/dark, +/area/shuttle/mining/large) +"C" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/obj/structure/rack, +/obj/item/crowbar/red, +/obj/item/wrench, +/obj/item/flashlight, +/turf/open/floor/plating, +/area/shuttle/mining/large) +"D" = ( +/obj/machinery/door/airlock/external{ + name = "Mining Shuttle External Airlock" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/shuttle/mining/large) +"E" = ( +/obj/machinery/power/apc/highcap{ + dir = 4; + locked = 0; + name = "Mining Shuttle APC"; + pixel_x = 24 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow, +/turf/open/floor/plating, +/area/shuttle/mining/large) +"F" = ( +/turf/closed/wall/mineral/titanium, +/area/shuttle/mining/large) +"G" = ( +/obj/structure/shuttle/engine/heater, +/obj/structure/window/reinforced{ + dir = 1; + layer = 2.9 + }, +/turf/open/floor/plating/airless, +/area/shuttle/mining/large) +"H" = ( +/obj/structure/sign/warning/vacuum/external{ + pixel_x = 32 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/turf/open/floor/plating, +/area/shuttle/mining/large) +"I" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/open/floor/plating/airless, +/area/shuttle/mining/large) +"J" = ( +/obj/machinery/door/airlock/external{ + name = "Mining Shuttle External Airlock" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/structure/cable/yellow{ + icon_state = "1-2" + }, +/obj/docking_port/mobile{ + dir = 1; + dwidth = 3; + height = 10; + id = "mining"; + name = "mining shuttle"; + port_direction = 2; + width = 7 + }, +/turf/open/floor/plating, +/area/shuttle/mining/large) + +(1,1,1) = {" +a +b +b +k +k +k +b +k +F +a +"} +(2,1,1) = {" +b +b +f +l +k +s +x +C +G +I +"} +(3,1,1) = {" +b +c +g +m +q +t +y +k +k +k +"} +(4,1,1) = {" +b +d +h +n +r +u +z +D +H +J +"} +(5,1,1) = {" +b +e +i +o +k +v +A +k +k +k +"} +(6,1,1) = {" +b +b +j +p +k +w +B +E +G +I +"} +(7,1,1) = {" +a +b +b +k +k +k +b +k +F +a +"} diff --git a/_maps/shuttles/pirate_default.dmm b/_maps/shuttles/pirate_default.dmm index 3477544492a..4cf6e3c7c5d 100644 --- a/_maps/shuttles/pirate_default.dmm +++ b/_maps/shuttles/pirate_default.dmm @@ -11,7 +11,6 @@ pixel_x = -24 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/obj/machinery/atmospherics/components/unary/vent_pump/on, /obj/effect/decal/cleanable/dirt, /turf/open/floor/pod/dark, /area/shuttle/pirate) @@ -91,6 +90,40 @@ "aj" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/shuttle/pirate) +"ak" = ( +/obj/machinery/airalarm/all_access{ + dir = 4; + pixel_x = -24 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small{ + dir = 8 + }, +/obj/structure/closet/secure_closet/freezer{ + locked = 0; + name = "fridge" + }, +/obj/item/storage/box/donkpockets{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/storage/box/donkpockets, +/obj/item/storage/fancy/donut_box, +/obj/item/reagent_containers/food/snacks/cookie, +/obj/item/reagent_containers/food/snacks/cookie{ + pixel_x = -6; + pixel_y = -6 + }, +/obj/item/reagent_containers/food/snacks/chocolatebar, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/bar, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/milk, +/turf/open/floor/plasteel, +/area/shuttle/pirate) "al" = ( /obj/machinery/loot_locator, /obj/effect/decal/cleanable/dirt, @@ -524,8 +557,8 @@ /obj/machinery/power/smes/engineering{ charge = 1e+006 }, -/obj/structure/cable, /obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow, /turf/open/floor/plating, /area/shuttle/pirate) "bl" = ( @@ -622,38 +655,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/shuttle/pirate) -"bw" = ( -/obj/machinery/airalarm/all_access{ - dir = 4; - pixel_x = -24 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small{ - dir = 8 - }, -/obj/structure/closet/secure_closet/freezer{ - locked = 0; - name = "fridge" - }, -/obj/item/storage/box/donkpockets{ - pixel_x = 2; - pixel_y = 3 - }, -/obj/item/storage/box/donkpockets, -/obj/item/storage/fancy/donut_box, -/obj/item/reagent_containers/food/snacks/cookie, -/obj/item/reagent_containers/food/snacks/cookie{ - pixel_x = -6; - pixel_y = -6 - }, -/obj/item/reagent_containers/food/snacks/chocolatebar, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/bar, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/turf/open/floor/plasteel, -/area/shuttle/pirate) "bx" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 @@ -777,19 +778,19 @@ /turf/open/floor/plasteel/dark, /area/shuttle/pirate) "bO" = ( -/obj/structure/cable{ - icon_state = "0-2" - }, /obj/machinery/power/apc{ aidisabled = 1; dir = 1; name = "Pirate Corvette APC"; - pixel_y = 24; + pixel_y = 23; req_access = null }, /obj/structure/reagent_dispensers/watertank, /obj/effect/turf_decal/bot, /obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ + icon_state = "0-2" + }, /turf/open/floor/plating, /area/shuttle/pirate) "bP" = ( @@ -800,10 +801,10 @@ /turf/open/floor/plating, /area/shuttle/pirate) "bQ" = ( -/obj/structure/cable{ +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/shuttle/pirate) "bX" = ( @@ -1210,7 +1211,7 @@ eA aa ap aw -bw +ak bF aj aj diff --git a/_maps/shuttles/ruin_pirate_cutter.dmm b/_maps/shuttles/ruin_pirate_cutter.dmm index 4e36ea9edf5..5b972edc121 100644 --- a/_maps/shuttles/ruin_pirate_cutter.dmm +++ b/_maps/shuttles/ruin_pirate_cutter.dmm @@ -717,7 +717,7 @@ /obj/machinery/power/apc{ dir = 8; name = "Pirate Cutter APC"; - pixel_x = -24; + pixel_x = -25; req_access = null }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -735,7 +735,7 @@ /turf/open/floor/plasteel/dark, /area/shuttle/caravan/pirate) "EB" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 4 }, /obj/machinery/turretid{ @@ -1066,7 +1066,7 @@ /turf/open/floor/plating, /area/shuttle/caravan/pirate) "ZY" = ( -/obj/structure/chair/office/dark{ +/obj/structure/chair/office{ dir = 8 }, /obj/effect/turf_decal/tile/neutral{ diff --git a/_maps/shuttles/ruin_syndicate_dropship.dmm b/_maps/shuttles/ruin_syndicate_dropship.dmm index 121f69f4a32..4ddcc53fb03 100644 --- a/_maps/shuttles/ruin_syndicate_dropship.dmm +++ b/_maps/shuttles/ruin_syndicate_dropship.dmm @@ -105,7 +105,7 @@ /obj/machinery/power/apc/syndicate{ dir = 8; name = "Syndicate Drop Ship APC"; - pixel_x = -24 + pixel_x = -25 }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/pod/dark, diff --git a/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm b/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm index 6c33e4d25e9..c1c57680d58 100644 --- a/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm +++ b/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm @@ -68,7 +68,7 @@ /obj/machinery/power/apc/highcap/fifteen_k{ dir = 8; name = "Syndicate Fighter APC"; - pixel_x = -24; + pixel_x = -25; req_access = null; req_access_txt = "150" }, diff --git a/_maps/shuttles/whiteship_box.dmm b/_maps/shuttles/whiteship_box.dmm index eeaae2f5798..8ae1155d9f9 100644 --- a/_maps/shuttles/whiteship_box.dmm +++ b/_maps/shuttles/whiteship_box.dmm @@ -181,7 +181,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /turf/open/floor/plasteel/white/side{ @@ -193,7 +193,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/blood/old, @@ -210,7 +210,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white, @@ -218,7 +218,7 @@ "ax" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -240,7 +240,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/airalarm/all_access{ @@ -257,7 +257,7 @@ "az" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -281,7 +281,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -304,7 +304,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -329,7 +329,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -343,10 +343,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -377,13 +377,13 @@ /obj/item/reagent_containers/food/snacks/muffin/berry, /obj/item/reagent_containers/food/snacks/tofu, /obj/item/reagent_containers/food/snacks/burrito, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ dir = 1; name = "Hospital Ship Crew Quarters APC"; - pixel_y = 24; + pixel_y = 23; req_access = null }, /obj/effect/turf_decal/tile/neutral, @@ -410,7 +410,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 6 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/decal/cleanable/blood/old, @@ -423,7 +423,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /mob/living/simple_animal/hostile/zombie{ @@ -532,10 +532,11 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/zombie{ desc = "This undead fiend looks to be badly decomposed."; environment_smash = 0; @@ -544,7 +545,6 @@ melee_damage_upper = 11; name = "Rotting Carcass" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/shuttle/abandoned/crew) "aQ" = ( @@ -661,7 +661,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white/side{ @@ -712,7 +712,7 @@ "bc" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral, @@ -814,9 +814,6 @@ /turf/open/floor/plating, /area/shuttle/abandoned/engine) "bp" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, /obj/machinery/power/terminal{ dir = 4 }, @@ -827,6 +824,9 @@ /obj/machinery/light/small/built{ dir = 1 }, +/obj/structure/cable{ + icon_state = "0-8" + }, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "bq" = ( @@ -844,7 +844,7 @@ }, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -895,7 +895,7 @@ }, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel, @@ -929,7 +929,7 @@ "bz" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white/side{ @@ -998,7 +998,7 @@ /obj/machinery/light/small/built{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/blood/old, @@ -1030,7 +1030,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue, @@ -1041,13 +1041,13 @@ /obj/structure/table/reinforced, /obj/item/wrench, /obj/item/crowbar, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Hospital Ship Medbay APC"; - pixel_y = 24; + pixel_y = 23; req_access = null }, /turf/open/floor/plasteel/white, @@ -1093,7 +1093,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1140,6 +1140,7 @@ dir = 6 }, /obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, /mob/living/simple_animal/hostile/zombie{ desc = "This undead fiend looks to be badly decomposed."; environment_smash = 0; @@ -1148,7 +1149,6 @@ melee_damage_upper = 11; name = "Rotting Carcass" }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel, /area/shuttle/abandoned/medbay) "bT" = ( @@ -1162,7 +1162,7 @@ /obj/machinery/atmospherics/pipe/simple/general/visible{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/white/side{ @@ -1172,7 +1172,7 @@ "bV" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/medical/glass{ @@ -1182,7 +1182,7 @@ /area/shuttle/abandoned/medbay) "bW" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white/side{ @@ -1194,13 +1194,13 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/blue, @@ -1218,7 +1218,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1228,7 +1228,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/blood/gibs/old, @@ -1268,7 +1268,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/blood/old, @@ -1362,7 +1362,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -1438,24 +1438,24 @@ /turf/open/floor/plating, /area/shuttle/abandoned/engine) "cr" = ( -/obj/structure/cable{ - icon_state = "2-4" - }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, +/obj/structure/cable{ + icon_state = "2-4" + }, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "cs" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ - icon_state = "4-8" - }, /obj/machinery/firealarm{ pixel_y = 24 }, /obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "ct" = ( @@ -1468,7 +1468,7 @@ pixel_y = -24; req_access = null }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, @@ -1477,7 +1477,7 @@ /obj/machinery/power/smes/engineering{ charge = 1e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/effect/decal/cleanable/dirt/dust, @@ -1494,7 +1494,7 @@ }, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/white, @@ -1506,7 +1506,7 @@ }, /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt, @@ -1541,7 +1541,6 @@ /obj/machinery/power/port_gen/pacman{ anchored = 1 }, -/obj/structure/cable, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/bot, @@ -1549,6 +1548,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, +/obj/structure/cable, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "cz" = ( @@ -1560,21 +1560,21 @@ /turf/open/floor/plating, /area/shuttle/abandoned/engine) "cB" = ( -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "cC" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/engineering{ @@ -1590,10 +1590,10 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/white/side{ @@ -1738,7 +1738,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/white/side{ @@ -1750,7 +1750,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /turf/open/floor/plasteel/white/corner{ @@ -1818,7 +1818,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/blood/old, @@ -1874,7 +1874,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /turf/open/floor/plasteel/white/side{ @@ -1884,7 +1884,7 @@ "da" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white/corner{ @@ -1896,7 +1896,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/blood/gibs/old, @@ -1916,7 +1916,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -1927,7 +1927,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1937,7 +1937,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel/white/side{ @@ -1954,7 +1954,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1965,7 +1965,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/sign/warning/nosmoking{ @@ -1985,7 +1985,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plasteel, @@ -1997,7 +1997,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 9 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/cleanable/dirt, @@ -2129,13 +2129,13 @@ dir = 4; pixel_x = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Hospital Ship Bridge APC"; - pixel_y = 24; + pixel_y = 23; req_access = null }, /obj/effect/turf_decal/tile/blue{ diff --git a/_maps/shuttles/whiteship_delta.dmm b/_maps/shuttles/whiteship_delta.dmm index aaebe7d25af..f5a9447b45e 100644 --- a/_maps/shuttles/whiteship_delta.dmm +++ b/_maps/shuttles/whiteship_delta.dmm @@ -177,13 +177,13 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 8; name = "Frigate Bar APC"; - pixel_x = -24; + pixel_x = -25; req_access = null }, /obj/structure/spider/stickyweb, @@ -351,7 +351,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/external/glass{ @@ -392,7 +392,7 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -402,10 +402,10 @@ /area/shuttle/abandoned/engine) "aQ" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -418,7 +418,7 @@ /area/shuttle/abandoned/crew) "aR" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -431,7 +431,7 @@ /area/shuttle/abandoned/crew) "aS" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -445,7 +445,7 @@ "aT" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/small, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/airalarm/all_access{ @@ -466,19 +466,19 @@ /area/shuttle/abandoned/crew) "aU" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/power/apc{ dir = 1; name = "Frigate Crew Quarters APC"; - pixel_y = 24; + pixel_y = 23; req_access = null }, /obj/effect/turf_decal/tile/neutral{ @@ -492,7 +492,7 @@ "aV" = ( /obj/machinery/light/small/built, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -506,7 +506,7 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/external/glass{ @@ -526,7 +526,7 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -541,7 +541,7 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -557,7 +557,7 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -567,7 +567,7 @@ /area/shuttle/abandoned/crew) "ba" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/bar, @@ -701,7 +701,7 @@ dir = 4; pixel_x = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -731,7 +731,7 @@ /obj/machinery/light/small/built{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/spider/stickyweb, @@ -774,7 +774,7 @@ "bq" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/public/glass{ @@ -861,7 +861,7 @@ /area/shuttle/abandoned/engine) "bz" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -896,7 +896,7 @@ }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -921,7 +921,7 @@ /area/shuttle/abandoned/crew) "bG" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue, @@ -1034,7 +1034,7 @@ /area/shuttle/abandoned/engine) "bQ" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/spider/stickyweb, @@ -1052,7 +1052,7 @@ req_access = null }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1089,7 +1089,7 @@ "bU" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/airalarm/all_access{ @@ -1144,7 +1144,7 @@ /area/shuttle/abandoned/bridge) "bX" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1189,7 +1189,7 @@ /area/shuttle/abandoned/crew) "cb" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/spider/stickyweb, @@ -1206,7 +1206,7 @@ name = "Engineering" }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1223,13 +1223,13 @@ /obj/machinery/light/small{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 8; name = "Frigate Bridge APC"; - pixel_x = -24; + pixel_x = -25; req_access = null }, /obj/effect/turf_decal/tile/blue{ @@ -1242,10 +1242,10 @@ /area/shuttle/abandoned/bridge) "cf" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/item/gun/energy/laser/retro, @@ -1289,7 +1289,7 @@ /area/shuttle/abandoned/bridge) "cj" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/spider/stickyweb, @@ -1309,20 +1309,20 @@ /obj/machinery/power/smes/engineering{ charge = 1e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "cl" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-8" }, /obj/machinery/power/apc{ @@ -1372,7 +1372,7 @@ pixel_x = 2; pixel_y = 2 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1413,7 +1413,7 @@ /area/shuttle/abandoned/crew) "cr" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -1430,15 +1430,15 @@ /obj/machinery/power/terminal{ dir = 1 }, +/obj/machinery/space_heater, /obj/structure/cable{ icon_state = "0-2" }, -/obj/machinery/space_heater, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "ct" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/button/door{ @@ -1478,7 +1478,7 @@ "cv" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/firealarm{ @@ -1525,13 +1525,13 @@ /obj/machinery/power/port_gen/pacman{ anchored = 1 }, -/obj/structure/cable, /obj/item/wrench, +/obj/structure/cable, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "cC" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/oil, @@ -1684,7 +1684,7 @@ dir = 4; pixel_x = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/structure/spider/stickyweb, @@ -1705,7 +1705,7 @@ /obj/machinery/light/small/built{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/blue{ @@ -1748,7 +1748,7 @@ }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/door/firedoor, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1869,7 +1869,7 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, /obj/structure/spider/stickyweb, @@ -1880,7 +1880,7 @@ /area/shuttle/abandoned/engine) "dd" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1893,7 +1893,7 @@ name = "Engineering" }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1903,10 +1903,10 @@ /area/shuttle/abandoned/engine) "df" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -1914,7 +1914,7 @@ /area/shuttle/abandoned/medbay) "dg" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -1926,7 +1926,7 @@ /obj/machinery/door/airlock/medical{ name = "Medbay Storage" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -1947,7 +1947,7 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/spider/stickyweb, @@ -1963,7 +1963,7 @@ /area/shuttle/abandoned/medbay) "dk" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -1975,13 +1975,13 @@ /area/shuttle/abandoned/medbay) "dl" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, @@ -1994,7 +1994,7 @@ /obj/machinery/light/small{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2010,7 +2010,7 @@ }, /obj/machinery/light/small/built, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2021,7 +2021,7 @@ "do" = ( /obj/effect/turf_decal/stripes/white/line, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2035,7 +2035,7 @@ }, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/small, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/structure/spider/stickyweb, @@ -2046,7 +2046,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/external/glass{ @@ -2064,7 +2064,7 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/door/airlock/external/glass{ @@ -2084,7 +2084,7 @@ /area/shuttle/abandoned/cargo) "dt" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt, @@ -2234,7 +2234,7 @@ /area/shuttle/abandoned/medbay) "dG" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /mob/living/simple_animal/hostile/poison/giant_spider/hunter{ @@ -2267,13 +2267,13 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable, /obj/machinery/power/apc{ dir = 8; name = "Frigate Cargo APC"; - pixel_x = -24; + pixel_x = -25; req_access = null }, +/obj/structure/cable/yellow, /turf/open/floor/plasteel, /area/shuttle/abandoned/cargo) "dK" = ( @@ -2517,7 +2517,7 @@ /area/shuttle/abandoned/medbay) "oo" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ diff --git a/_maps/shuttles/whiteship_meta.dmm b/_maps/shuttles/whiteship_meta.dmm index 6815698a2c9..4f8eb894345 100644 --- a/_maps/shuttles/whiteship_meta.dmm +++ b/_maps/shuttles/whiteship_meta.dmm @@ -440,7 +440,7 @@ /area/shuttle/abandoned/engine) "aP" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ @@ -454,7 +454,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt/dust, @@ -465,7 +465,7 @@ /area/shuttle/abandoned/engine) "aR" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -488,7 +488,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -509,7 +509,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -532,7 +532,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -557,7 +557,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -581,7 +581,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -610,10 +610,10 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -636,7 +636,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 1 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -660,7 +660,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -684,7 +684,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -695,7 +695,7 @@ "bb" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -715,7 +715,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -729,7 +729,7 @@ "bd" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -805,7 +805,7 @@ /area/shuttle/abandoned/engine) "bj" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt/dust, @@ -903,7 +903,7 @@ "br" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -979,7 +979,7 @@ /area/shuttle/abandoned/crew) "by" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/door/airlock/engineering{ @@ -1053,7 +1053,7 @@ name = "Bar" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -1102,7 +1102,7 @@ /area/shuttle/abandoned/engine) "bI" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, @@ -1213,13 +1213,13 @@ pixel_y = 3 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/machinery/power/apc{ dir = 1; name = "Salvage Ship Bar APC"; - pixel_y = 24; + pixel_y = 23; req_access = null }, /obj/effect/turf_decal/tile/bar, @@ -1231,10 +1231,10 @@ "bO" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/tile/bar, @@ -1277,7 +1277,7 @@ /area/shuttle/abandoned/bridge) "bS" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt/dust, @@ -1379,7 +1379,7 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/bar, @@ -1412,13 +1412,13 @@ /obj/item/pen{ pixel_x = -4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /obj/machinery/power/apc{ dir = 1; name = "Salvage Ship Bridge APC"; - pixel_y = 24; + pixel_y = 23; req_access = null }, /obj/item/camera{ @@ -1482,7 +1482,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, @@ -1491,7 +1491,7 @@ /obj/structure/sign/warning/vacuum/external{ pixel_y = 32 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/light/small/built{ @@ -1505,17 +1505,17 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "ck" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/turf_decal/stripes/white/line{ @@ -1612,10 +1612,10 @@ /obj/machinery/atmospherics/pipe/manifold/supply/hidden{ dir = 8 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-4" }, /obj/effect/turf_decal/tile/bar, @@ -1629,7 +1629,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/decal/cleanable/dirt, @@ -1644,7 +1644,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -1664,7 +1664,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/decal/remains/human, @@ -1687,9 +1687,6 @@ dir = 8 }, /obj/effect/decal/cleanable/blood/gibs/old, -/mob/living/simple_animal/hostile/syndicate/melee{ - environment_smash = 0 - }, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -1700,6 +1697,9 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/mob/living/simple_animal/hostile/syndicate/melee{ + environment_smash = 0 + }, /turf/open/floor/plasteel/dark, /area/shuttle/abandoned/bridge) "cu" = ( @@ -1734,7 +1734,7 @@ /area/shuttle/abandoned/bridge) "cw" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/dirt/dust, @@ -1808,7 +1808,7 @@ "cB" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/bar, @@ -1936,10 +1936,10 @@ /obj/machinery/power/apc{ dir = 8; name = "Salvage Ship Cargo APC"; - pixel_x = -24; + pixel_x = -25; req_access = null }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-2" }, /turf/open/floor/plasteel/dark, @@ -2008,7 +2008,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/bar, @@ -2050,7 +2050,7 @@ dir = 4; pixel_x = -24 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -2098,7 +2098,7 @@ name = "Bar" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -2138,7 +2138,7 @@ /obj/machinery/power/smes/engineering{ charge = 1e+006 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "0-4" }, /obj/effect/decal/cleanable/dirt/dust, @@ -2148,7 +2148,7 @@ /area/shuttle/abandoned/engine) "cY" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/machinery/firealarm{ @@ -2202,7 +2202,7 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plasteel/dark, @@ -2216,9 +2216,6 @@ "dd" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/components/unary/vent_pump/on, -/mob/living/simple_animal/hostile/syndicate/melee{ - environment_smash = 0 - }, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -2229,6 +2226,9 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/mob/living/simple_animal/hostile/syndicate/melee{ + environment_smash = 0 + }, /turf/open/floor/plasteel/dark, /area/shuttle/abandoned/cargo) "de" = ( @@ -2281,7 +2281,7 @@ "dh" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/turf_decal/tile/neutral{ @@ -2306,7 +2306,7 @@ /area/shuttle/abandoned/bar) "dj" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/closet/secure_closet/freezer/fridge, +/obj/structure/closet/secure_closet/freezer/fridge/open, /obj/item/reagent_containers/food/condiment/flour{ pixel_x = -3; pixel_y = 3 @@ -2373,12 +2373,12 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ - icon_state = "0-2" - }, /obj/machinery/power/terminal{ dir = 1 }, +/obj/structure/cable{ + icon_state = "0-2" + }, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "dq" = ( @@ -2392,10 +2392,10 @@ /area/shuttle/abandoned/cargo) "dr" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "2-8" }, /obj/effect/decal/cleanable/dirt/dust, @@ -2403,10 +2403,10 @@ /area/shuttle/abandoned/engine) "ds" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2420,7 +2420,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ @@ -2434,10 +2434,10 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -2456,7 +2456,7 @@ /obj/effect/turf_decal/arrows/white, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -2481,7 +2481,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -2504,7 +2504,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "4-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -2529,7 +2529,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/stripes/white/line, /obj/machinery/atmospherics/pipe/manifold/supply/hidden, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-8" }, /obj/effect/turf_decal/tile/neutral{ @@ -2655,7 +2655,7 @@ /area/shuttle/abandoned/engine) "dI" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /turf/open/floor/plating, @@ -2818,10 +2818,10 @@ /obj/machinery/power/port_gen/pacman{ anchored = 1 }, -/obj/structure/cable, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/bot, /obj/item/wrench, +/obj/structure/cable, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "dX" = ( @@ -2980,10 +2980,10 @@ /area/shuttle/abandoned/bar) "el" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-4" }, -/obj/structure/cable{ +/obj/structure/cable/yellow{ icon_state = "1-2" }, /obj/effect/decal/cleanable/oil, diff --git a/_maps/templates/shelter_1.dmm b/_maps/templates/shelter_1.dmm index f5b2e141f4c..58146c1fb84 100644 --- a/_maps/templates/shelter_1.dmm +++ b/_maps/templates/shelter_1.dmm @@ -27,7 +27,10 @@ /turf/closed/wall/mineral/titanium/survival/pod, /area/survivalpod) "g" = ( -/obj/machinery/sleeper/survival_pod, +/obj/machinery/stasis/survival_pod, +/obj/machinery/vending/wallmed/survival_pod{ + pixel_x = -24 + }, /turf/open/floor/pod, /area/survivalpod) "h" = ( diff --git a/_maps/templates/shelter_2.dmm b/_maps/templates/shelter_2.dmm index 80de4438da3..e259c1cc9c5 100644 --- a/_maps/templates/shelter_2.dmm +++ b/_maps/templates/shelter_2.dmm @@ -50,7 +50,10 @@ /turf/closed/wall/mineral/titanium/survival/pod, /area/survivalpod) "k" = ( -/obj/machinery/sleeper/survival_pod, +/obj/machinery/stasis/survival_pod, +/obj/machinery/vending/wallmed/survival_pod{ + pixel_x = -24 + }, /turf/open/floor/pod, /area/survivalpod) "l" = ( diff --git a/code/__DEFINES/DNA.dm b/code/__DEFINES/DNA.dm index 3aa85593387..33d774f22dc 100644 --- a/code/__DEFINES/DNA.dm +++ b/code/__DEFINES/DNA.dm @@ -4,7 +4,7 @@ //Defines copying names of mutations in all cases, make sure to change this if you change mutation's type #define HULK /datum/mutation/human/hulk -#define XRAY /datum/mutation/human/x_ray +#define XRAY /datum/mutation/human/thermal/x_ray #define SPACEMUT /datum/mutation/human/space_adaptation #define TK /datum/mutation/human/telekinesis #define NERVOUS /datum/mutation/human/nervousness @@ -36,6 +36,7 @@ #define VOID /datum/mutation/human/void #define STRONG /datum/mutation/human/strong #define FIRESWEAT /datum/mutation/human/fire +#define THERMAL /datum/mutation/human/thermal #define ANTENNA /datum/mutation/human/antenna #define PARANOIA /datum/mutation/human/paranoia #define MINDREAD /datum/mutation/human/mindreader @@ -92,6 +93,8 @@ #define TR_KEEPSE (1<<5) // changelings shouldn't edit the DNA's SE when turning into a monkey #define TR_DEFAULTMSG (1<<6) #define TR_KEEPORGANS (1<<8) +#define TR_KEEPSTUNS (1<<9) +#define TR_KEEPREAGENTS (1<<10) #define CLONER_FRESH_CLONE "fresh" @@ -113,9 +116,10 @@ #define NOSTOMACH 13 #define NO_DNA_COPY 14 #define DRINKSBLOOD 15 -#define NOEYES 16 +#define NOFLASH 16 #define DYNCOLORS 17 //Use this if you want to change the race's color without the player being able to pick their own color. AKA special color shifting #define AGENDER 18 +#define NOEYESPRITES 19 //Do not draw eyes or eyeless overlay #define ORGAN_SLOT_BRAIN "brain" #define ORGAN_SLOT_APPENDIX "appendix" diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm index b84f79b5c72..393e5c93323 100644 --- a/code/__DEFINES/admin.dm +++ b/code/__DEFINES/admin.dm @@ -81,3 +81,6 @@ #define SPAM_TRIGGER_WARNING 5 //Number of identical messages required before the spam-prevention will warn you to stfu #define SPAM_TRIGGER_AUTOMUTE 10 //Number of identical messages required before the spam-prevention will automute you + +#define STICKYBAN_DB_CACHE_TIME 10 SECONDS +#define STICKYBAN_ROGUE_CHECK_TIME 5 \ No newline at end of file diff --git a/code/__DEFINES/antagonists.dm b/code/__DEFINES/antagonists.dm index 13de9d280bb..1969b8296a7 100644 --- a/code/__DEFINES/antagonists.dm +++ b/code/__DEFINES/antagonists.dm @@ -8,6 +8,17 @@ #define NUKE_RESULT_WRONG_STATION 7 #define NUKE_RESULT_WRONG_STATION_DEAD 8 +//fugitive end results +#define FUGITIVE_RESULT_BADASS_HUNTER 0 +#define FUGITIVE_RESULT_POSTMORTEM_HUNTER 1 +#define FUGITIVE_RESULT_MAJOR_HUNTER 2 +#define FUGITIVE_RESULT_HUNTER_VICTORY 3 +#define FUGITIVE_RESULT_MINOR_HUNTER 4 +#define FUGITIVE_RESULT_STALEMATE 5 +#define FUGITIVE_RESULT_MINOR_FUGITIVE 6 +#define FUGITIVE_RESULT_FUGITIVE_VICTORY 7 +#define FUGITIVE_RESULT_MAJOR_FUGITIVE 8 + #define APPRENTICE_DESTRUCTION "destruction" #define APPRENTICE_BLUESPACE "bluespace" #define APPRENTICE_ROBELESS "robeless" @@ -42,3 +53,10 @@ //Overthrow time to update heads obj #define OBJECTIVE_UPDATING_TIME 300 + +//Assimilation +#define TRACKER_DEFAULT_TIME 900 +#define TRACKER_MINDSHIELD_TIME 1200 +#define TRACKER_AWAKENED_TIME 3000 +#define TRACKER_BONUS_LARGE 300 +#define TRACKER_BONUS_SMALL 100 \ No newline at end of file diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm index 79f9b3d3137..3c804b09a18 100644 --- a/code/__DEFINES/atmospherics.dm +++ b/code/__DEFINES/atmospherics.dm @@ -125,7 +125,7 @@ //Atmos pipe limits #define MAX_OUTPUT_PRESSURE 4500 // (kPa) What pressure pumps and powered equipment max out at. #define MAX_TRANSFER_RATE 200 // (L/s) Maximum speed powered equipment can work at. - +#define VOLUME_PUMP_LEAK_AMOUNT 0.1 //10% of an overclocked volume pump leaks into the air //used for device_type vars #define UNARY 1 #define BINARY 2 @@ -156,7 +156,7 @@ #define TCOMMS_ATMOS "n2=100;TEMP=80" //-193,15°C telecommunications. also used for xenobiology slime killrooms #define AIRLESS_ATMOS "TEMP=2.7" //space #define FROZEN_ATMOS "o2=22;n2=82;TEMP=180" //-93.15°C snow and ice turfs -#define KITCHEN_COLDROOM_ATMOS "o2=33;n2=124;TEMP=193.15" //-80°C kitchen coldroom; higher amount of mol to reach about 101.3 kpA +#define KITCHEN_COLDROOM_ATMOS "o2=33;n2=124;TEMP=193.15" //-80°C kitchen coldroom; higher amount of mol to reach about 101.3 kpA #define BURNMIX_ATMOS "o2=2500;plasma=5000;TEMP=370" //used in the holodeck burn test program //ATMOSPHERICS DEPARTMENT GAS TANK TURFS @@ -285,6 +285,12 @@ for(var/total_moles_id in cached_gases){\ out_var += cached_gases[total_moles_id][MOLES];\ } +#ifdef TESTING +GLOBAL_LIST_INIT(atmos_adjacent_savings, list(0,0)) +#define CALCULATE_ADJACENT_TURFS(T) if (SSadjacent_air.queue[T]) { GLOB.atmos_adjacent_savings[1] += 1 } else { GLOB.atmos_adjacent_savings[2] += 1; SSadjacent_air.queue[T] = 1 } +#else +#define CALCULATE_ADJACENT_TURFS(T) SSadjacent_air.queue[T] = 1 +#endif GLOBAL_LIST_INIT(pipe_paint_colors, list( "amethyst" = rgb(130,43,255), //supplymain diff --git a/code/__DEFINES/atom_hud.dm b/code/__DEFINES/atom_hud.dm index b944dd32efe..5acae5b8567 100644 --- a/code/__DEFINES/atom_hud.dm +++ b/code/__DEFINES/atom_hud.dm @@ -59,6 +59,7 @@ #define ANTAG_HUD_BROTHER 23 #define ANTAG_HUD_HIVE 24 #define ANTAG_HUD_OBSESSED 25 +#define ANTAG_HUD_FUGITIVE 26 // Notification action types #define NOTIFY_JUMP "jump" diff --git a/code/__DEFINES/cargo.dm b/code/__DEFINES/cargo.dm index 242889e3f88..0fbd138b9ad 100644 --- a/code/__DEFINES/cargo.dm +++ b/code/__DEFINES/cargo.dm @@ -11,6 +11,7 @@ #define STYLE_FRUIT 11 #define STYLE_INVISIBLE 12 #define STYLE_GONDOLA 13 +#define STYLE_SEETHROUGH 14 #define POD_ICON_STATE 1 #define POD_NAME 2 @@ -29,5 +30,6 @@ list("honkpod", "\improper HONK pod", "A brightly-colored supply pod. It likely originated from the Clown Federation."),\ list("fruitpod", "\improper Orange", "An angry orange."),\ list("", "\improper S.T.E.A.L.T.H. pod MKVII", "A supply pod that, under normal circumstances, is completely invisible to conventional methods of detection. How are you even seeing this?"),\ - list("gondolapod", "gondola", "The silent walker. This one seems to be part of a delivery agency.")\ + list("gondolapod", "gondola", "The silent walker. This one seems to be part of a delivery agency."),\ + list("", "", "")\ ) \ No newline at end of file diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index 4811d0041fb..1953651125f 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -3,26 +3,30 @@ #define COLOR_INPUT_DISABLED "#F0F0F0" #define COLOR_INPUT_ENABLED "#D3B5B5" -//#define COLOR_WHITE "#EEEEEE" -//#define COLOR_SILVER "#C0C0C0" -//#define COLOR_GRAY "#808080" +#define COLOR_DARKMODE_BACKGROUND "#202020" +#define COLOR_DARKMODE_DARKBACKGROUND "#171717" +#define COLOR_DARKMODE_TEXT "#a4bad6" + +#define COLOR_WHITE "#EEEEEE" +#define COLOR_SILVER "#C0C0C0" +#define COLOR_GRAY "#808080" #define COLOR_FLOORTILE_GRAY "#8D8B8B" #define COLOR_ALMOST_BLACK "#333333" -//#define COLOR_BLACK "#000000" +#define COLOR_BLACK "#000000" #define COLOR_RED "#FF0000" -//#define COLOR_RED_LIGHT "#FF3333" -//#define COLOR_MAROON "#800000" +#define COLOR_RED_LIGHT "#FF3333" +#define COLOR_MAROON "#800000" #define COLOR_YELLOW "#FFFF00" -//#define COLOR_OLIVE "#808000" -//#define COLOR_LIME "#32CD32" +#define COLOR_OLIVE "#808000" +#define COLOR_LIME "#32CD32" #define COLOR_GREEN "#008000" #define COLOR_CYAN "#00FFFF" -//#define COLOR_TEAL "#008080" +#define COLOR_TEAL "#008080" #define COLOR_BLUE "#0000FF" -//#define COLOR_BLUE_LIGHT "#33CCFF" -//#define COLOR_NAVY "#000080" +#define COLOR_BLUE_LIGHT "#33CCFF" +#define COLOR_NAVY "#000080" #define COLOR_PINK "#FFC0CB" -//#define COLOR_MAGENTA "#FF00FF" +#define COLOR_MAGENTA "#FF00FF" #define COLOR_PURPLE "#800080" #define COLOR_ORANGE "#FF9900" #define COLOR_BEIGE "#CEB689" @@ -53,4 +57,4 @@ #define COLOR_ASSEMBLY_GREEN "#44843C" #define COLOR_ASSEMBLY_LBLUE "#5D99BE" #define COLOR_ASSEMBLY_BLUE "#38559E" -#define COLOR_ASSEMBLY_PURPLE "#6F6192" \ No newline at end of file +#define COLOR_ASSEMBLY_PURPLE "#6F6192" diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm index 74765e9cd78..6f5b422f1eb 100644 --- a/code/__DEFINES/combat.dm +++ b/code/__DEFINES/combat.dm @@ -12,12 +12,13 @@ #define BRAIN "brain" //bitflag damage defines used for suicide_act -#define BRUTELOSS (1<<0) -#define FIRELOSS (1<<1) -#define TOXLOSS (1<<2) -#define OXYLOSS (1<<3) -#define SHAME (1<<4) -#define MANUAL_SUICIDE (1<<5) //suicide_act will do the actual killing. +#define BRUTELOSS (1<<0) +#define FIRELOSS (1<<1) +#define TOXLOSS (1<<2) +#define OXYLOSS (1<<3) +#define SHAME (1<<4) +#define MANUAL_SUICIDE (1<<5) //suicide_act will do the actual killing. +#define MANUAL_SUICIDE_NONLETHAL (1<<6) //when the suicide is conditionally lethal #define EFFECT_STUN "stun" #define EFFECT_KNOCKDOWN "knockdown" @@ -67,6 +68,9 @@ #define GRAB_NECK 2 #define GRAB_KILL 3 +//Grab breakout odds +#define BASE_GRAB_RESIST_CHANCE 30 + //slowdown when in softcrit. Note that crawling slowdown will also apply at the same time! #define SOFTCRIT_ADD_SLOWDOWN 2 //slowdown when crawling @@ -84,6 +88,7 @@ #define ATTACK_EFFECT_KICK "kick" #define ATTACK_EFFECT_SMASH "smash" #define ATTACK_EFFECT_CLAW "claw" +#define ATTACK_EFFECT_SLASH "slash" #define ATTACK_EFFECT_DISARM "disarm" #define ATTACK_EFFECT_BITE "bite" #define ATTACK_EFFECT_MECHFIRE "mech_fire" @@ -103,6 +108,20 @@ //the define for visible message range in combat #define COMBAT_MESSAGE_RANGE 3 +//Shove knockdown lengths (deciseconds) +#define SHOVE_KNOCKDOWN_SOLID 30 +#define SHOVE_KNOCKDOWN_HUMAN 30 +#define SHOVE_KNOCKDOWN_TABLE 30 +#define SHOVE_KNOCKDOWN_COLLATERAL 10 +#define SHOVE_CHAIN_PARALYZE 40 +//Shove slowdown +#define SHOVE_SLOWDOWN_LENGTH 30 +#define SHOVE_SLOWDOWN_STRENGTH 0.85 //multiplier +//Shove disarming item list +GLOBAL_LIST_INIT(shove_disarming_types, typecacheof(list( + /obj/item/gun))) + + //Combat object defines //Embedded objects diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index 1c4fe8344c1..35257cf9fbe 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -7,6 +7,7 @@ #define GET_COMPONENT(varname, path) GET_COMPONENT_FROM(varname, path, src) #define COMPONENT_INCOMPATIBLE 1 +#define COMPONENT_NOTRANSFER 2 // How multiple components of the exact same type are handled in the same datum @@ -26,6 +27,7 @@ #define COMSIG_GLOB_VAR_EDIT "!var_edit" //called after a successful var edit somewhere in the world: (list/args) #define COMSIG_GLOB_MOB_CREATED "!mob_created" //mob was created somewhere : (mob) #define COMSIG_GLOB_MOB_DEATH "!mob_death" //mob died somewhere : (mob , gibbed) +#define COMSIG_GLOB_LIVING_SAY_SPECIAL "!say_special" //global living say plug - use sparingly: (mob/speaker , message) ////////////////////////////////////////////////////////////////// @@ -107,6 +109,8 @@ // /atom/movable signals +#define COMSIG_MOVABLE_PRE_MOVE "movable_pre_move" //from base of atom/movable/Moved(): (/atom) + #define COMPONENT_MOVABLE_BLOCK_PRE_MOVE 1 #define COMSIG_MOVABLE_MOVED "movable_moved" //from base of atom/movable/Moved(): (/atom, dir) #define COMSIG_MOVABLE_CROSS "movable_cross" //from base of atom/movable/Cross(): (/atom/movable) #define COMSIG_MOVABLE_CROSSED "movable_crossed" //from base of atom/movable/Crossed(): (/atom/movable) @@ -178,6 +182,8 @@ #define COMSIG_ITEM_PICKUP "item_pickup" //from base of obj/item/pickup(): (/mob/taker) #define COMSIG_ITEM_ATTACK_ZONE "item_attack_zone" //from base of mob/living/carbon/attacked_by(): (mob/living/carbon/target, mob/living/user, hit_zone) #define COMSIG_ITEM_IMBUE_SOUL "item_imbue_soul" //return a truthy value to prevent ensouling, checked in /obj/effect/proc_holder/spell/targeted/lichdom/cast(): (mob/user) +#define COMSIG_ITEM_MARK_RETRIEVAL "item_mark_retrieval" //called before marking an object for retrieval, checked in /obj/effect/proc_holder/spell/targeted/summonitem/cast() : (mob/user) + #define COMPONENT_BLOCK_MARK_RETRIEVAL 1 #define COMSIG_ITEM_HIT_REACT "item_hit_react" //from base of obj/item/hit_reaction(): (list/args) // /obj/item/clothing signals @@ -197,6 +203,8 @@ // /obj/item/pda signals #define COMSIG_PDA_CHANGE_RINGTONE "pda_change_ringtone" //called on pda when the user changes the ringtone: (mob/living/user, new_ringtone) #define COMPONENT_STOP_RINGTONE_CHANGE 1 +#define COMSIG_PDA_CHECK_DETONATE "pda_check_detonate" + #define COMPONENT_PDA_NO_DETONATE 1 // /obj/item/radio signals #define COMSIG_RADIO_NEW_FREQUENCY "radio_new_frequency" //called from base of /obj/item/radio/proc/set_frequency(): (list/args) @@ -240,6 +248,7 @@ #define COMSIG_NANITE_SET_SAFETY "nanite_set_safety" //(amount) Sets safety threshold to the given amount #define COMSIG_NANITE_SET_REGEN "nanite_set_regen" //(amount) Sets regeneration rate to the given amount #define COMSIG_NANITE_SIGNAL "nanite_signal" //(code(1-9999)) Called when sending a nanite signal to a mob. +#define COMSIG_NANITE_COMM_SIGNAL "nanite_comm_signal" //(comm_code(1-9999), comm_message) Called when sending a nanite comm signal to a mob. #define COMSIG_NANITE_SCAN "nanite_scan" //(mob/user, full_scan) - sends to chat a scan of the nanites to the user, returns TRUE if nanites are detected #define COMSIG_NANITE_UI_DATA "nanite_ui_data" //(list/data, scan_level) - adds nanite data to the given data list - made for ui_data procs #define COMSIG_NANITE_ADD_PROGRAM "nanite_add_program" //(datum/nanite_program/new_program, datum/nanite_program/source_program) Called when adding a program to a nanite component diff --git a/code/__DEFINES/fantasy_affixes.dm b/code/__DEFINES/fantasy_affixes.dm new file mode 100644 index 00000000000..709d414d117 --- /dev/null +++ b/code/__DEFINES/fantasy_affixes.dm @@ -0,0 +1,5 @@ +#define AFFIX_PREFIX (1 << 0) +#define AFFIX_SUFFIX (1 << 1) + +#define AFFIX_GOOD (1 << 0) +#define AFFIX_EVIL (1 << 1) \ No newline at end of file diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm index a5abad45ac4..0d741f97a4a 100644 --- a/code/__DEFINES/flags.dm +++ b/code/__DEFINES/flags.dm @@ -12,7 +12,7 @@ //check if all bitflags specified are present -#define CHECK_MULTIPLE_BITFIELDS(flagvar, flags) ((flagvar & (flags)) == flags) +#define CHECK_MULTIPLE_BITFIELDS(flagvar, flags) (((flagvar) & (flags)) == (flags)) GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768)) @@ -159,4 +159,4 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204 //alternate appearance flags #define AA_TARGET_SEE_APPEARANCE (1<<0) -#define AA_MATCH_TARGET_OVERLAYS (1<<1) \ No newline at end of file +#define AA_MATCH_TARGET_OVERLAYS (1<<1) diff --git a/code/__DEFINES/food.dm b/code/__DEFINES/food.dm index 2c7a66ce40c..5e12715aba8 100644 --- a/code/__DEFINES/food.dm +++ b/code/__DEFINES/food.dm @@ -11,6 +11,7 @@ #define GROSS (1<<10) #define TOXIC (1<<11) #define PINEAPPLE (1<<12) +#define CLOTH (1<<14) #define DRINK_NICE 1 #define DRINK_GOOD 2 diff --git a/code/__DEFINES/inventory.dm b/code/__DEFINES/inventory.dm index c3db29286d5..2c3398597db 100644 --- a/code/__DEFINES/inventory.dm +++ b/code/__DEFINES/inventory.dm @@ -1,12 +1,12 @@ /*ALL DEFINES RELATED TO INVENTORY OBJECTS, MANAGEMENT, ETC, GO HERE*/ //ITEM INVENTORY WEIGHT, FOR w_class -#define WEIGHT_CLASS_TINY 1 //Usually items smaller then a human hand, ex: Playing Cards, Lighter, Scalpel, Coins/Money -#define WEIGHT_CLASS_SMALL 2 //Pockets can hold small and tiny items, ex: Flashlight, Multitool, Grenades, GPS Device -#define WEIGHT_CLASS_NORMAL 3 //Standard backpacks can carry tiny, small & normal items, ex: Fire extinguisher, Stunbaton, Gas Mask, Metal Sheets -#define WEIGHT_CLASS_BULKY 4 //Items that can be weilded or equipped but not stored in an inventory, ex: Defibrillator, Backpack, Space Suits -#define WEIGHT_CLASS_HUGE 5 //Usually represents objects that require two hands to operate, ex: Shotgun, Two Handed Melee Weapons -#define WEIGHT_CLASS_GIGANTIC 6 //Essentially means it cannot be picked up or placed in an inventory, ex: Mech Parts, Safe +#define WEIGHT_CLASS_TINY 1 //Usually items smaller then a human hand, (e.g. playing cards, lighter, scalpel, coins/holochips) +#define WEIGHT_CLASS_SMALL 2 //Pockets can hold small and tiny items, (e.g. flashlight, multitool, grenades, GPS device) +#define WEIGHT_CLASS_NORMAL 3 //Standard backpacks can carry tiny, small & normal items, (e.g. fire extinguisher, stun baton, gas mask, metal sheets) +#define WEIGHT_CLASS_BULKY 4 //Items that can be weilded or equipped but not stored in an inventory, (e.g. defibrillator, backpack, space suits) +#define WEIGHT_CLASS_HUGE 5 //Usually represents objects that require two hands to operate, (e.g. shotgun, two-handed melee weapons) +#define WEIGHT_CLASS_GIGANTIC 6 //Essentially means it cannot be picked up or placed in an inventory, (e.g. mech parts, safe) //Inventory depth: limits how many nested storage items you can access directly. //1: stuff in mob, 2: stuff in backpack, 3: stuff in box in backpack, etc diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index 600fc8eb266..759f01b97de 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -70,6 +70,7 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list( #define ishumanbasic(A) (is_species(A, /datum/species/human)) #define iscatperson(A) (ishumanbasic(A) && istype(A.dna.species, /datum/species/human/felinid) ) #define isethereal(A) (is_species(A, /datum/species/ethereal)) +#define isvampire(A) (is_species(A,/datum/species/vampire)) //more carbon mobs #define ismonkey(A) (istype(A, /mob/living/carbon/monkey)) diff --git a/code/__DEFINES/logging.dm b/code/__DEFINES/logging.dm index 3d8fdc37ce2..4b1db3937c8 100644 --- a/code/__DEFINES/logging.dm +++ b/code/__DEFINES/logging.dm @@ -15,25 +15,27 @@ #define INVESTIGATE_RADIATION "radiation" #define INVESTIGATE_EXONET "exonet" #define INVESTIGATE_NANITES "nanites" -#define INVESTIGATE_PRESENTS "presents" +#define INVESTIGATE_PRESENTS "presents" // Logging types for log_message() -#define LOG_ATTACK (1 << 0) -#define LOG_SAY (1 << 1) -#define LOG_WHISPER (1 << 2) -#define LOG_EMOTE (1 << 3) -#define LOG_DSAY (1 << 4) -#define LOG_PDA (1 << 5) -#define LOG_CHAT (1 << 6) -#define LOG_COMMENT (1 << 7) -#define LOG_TELECOMMS (1 << 8) -#define LOG_OOC (1 << 9) -#define LOG_ADMIN (1 << 10) -#define LOG_OWNERSHIP (1 << 11) -#define LOG_GAME (1 << 12) -#define LOG_ADMIN_PRIVATE (1 << 13) -#define LOG_ASAY (1 << 14) -#define LOG_MECHA (1 << 15) +#define LOG_ATTACK (1 << 0) +#define LOG_SAY (1 << 1) +#define LOG_WHISPER (1 << 2) +#define LOG_EMOTE (1 << 3) +#define LOG_DSAY (1 << 4) +#define LOG_PDA (1 << 5) +#define LOG_CHAT (1 << 6) +#define LOG_COMMENT (1 << 7) +#define LOG_TELECOMMS (1 << 8) +#define LOG_OOC (1 << 9) +#define LOG_ADMIN (1 << 10) +#define LOG_OWNERSHIP (1 << 11) +#define LOG_GAME (1 << 12) +#define LOG_ADMIN_PRIVATE (1 << 13) +#define LOG_ASAY (1 << 14) +#define LOG_MECHA (1 << 15) +#define LOG_VIRUS (1 << 16) +#define LOG_CLONING (1 << 17) //Individual logging panel pages #define INDIVIDUAL_ATTACK_LOG (LOG_ATTACK) diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index cba4b70019b..3df5f64874a 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -9,50 +9,38 @@ #define TEXT_EAST "[EAST]" #define TEXT_WEST "[WEST]" -//These get to go at the top, because they're special -//You can use these defines to get the typepath of the currently running proc/verb (yes procs + verbs are objects) -/* eg: -/mob/living/carbon/human/death() - to_chat(world, THIS_PROC_TYPE_STR) //You can only output the string versions -Will print: "/mob/living/carbon/human/death" (you can optionally embed it in a string with () (eg: the _WITH_ARGS defines) to make it look nicer) -*/ -#define THIS_PROC_TYPE ..... -#define THIS_PROC_TYPE_STR "[THIS_PROC_TYPE]" //Because you can only obtain a string of THIS_PROC_TYPE using "[]", and it's nice to just +/+= strings -#define THIS_PROC_TYPE_STR_WITH_ARGS "[THIS_PROC_TYPE]([args.Join(",")])" -#define THIS_PROC_TYPE_WEIRD ...... //This one is WEIRD, in some cases (When used in certain defines? (eg: ASSERT)) THIS_PROC_TYPE will fail to work, but THIS_PROC_TYPE_WEIRD will work instead -//define THIS_PROC_TYPE_WEIRD_STR "[THIS_PROC_TYPE_WEIRD]" //Included for completeness -//define THIS_PROC_TYPE_WEIRD_STR_WITH_ARGS "[THIS_PROC_TYPE_WEIRD]([args.Join(",")])" //Ditto //Human Overlays Indexes///////// -#define MUTATIONS_LAYER 28 //mutations. Tk headglows, cold resistance glow, etc -#define BODY_BEHIND_LAYER 27 //certain mutantrace features (tail when looking south) that must appear behind the body parts -#define BODYPARTS_LAYER 26 //Initially "AUGMENTS", this was repurposed to be a catch-all bodyparts flag -#define BODY_ADJ_LAYER 25 //certain mutantrace features (snout, body markings) that must appear above the body parts -#define BODY_LAYER 24 //underwear, undershirts, socks, eyes, lips(makeup) -#define FRONT_MUTATIONS_LAYER 23 //mutations that should appear above body, body_adj and bodyparts layer (e.g. laser eyes) -#define DAMAGE_LAYER 22 //damage indicators (cuts and burns) -#define UNIFORM_LAYER 21 -#define ID_LAYER 20 //lmao at the idiot who put both ids and hands on the same layer -#define HANDS_PART_LAYER 19 -#define GLOVES_LAYER 18 -#define SHOES_LAYER 17 -#define EARS_LAYER 16 -#define SUIT_LAYER 15 -#define GLASSES_LAYER 14 -#define BELT_LAYER 13 //Possible make this an overlay of somethign required to wear a belt? -#define SUIT_STORE_LAYER 12 -#define NECK_LAYER 11 -#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 HANDS_LAYER 4 -#define BODY_FRONT_LAYER 3 -#define SMELL_LAYER 2 +#define MUTATIONS_LAYER 29 //mutations. Tk headglows, cold resistance glow, etc +#define BODY_BEHIND_LAYER 28 //certain mutantrace features (tail when looking south) that must appear behind the body parts +#define BODYPARTS_LAYER 27 //Initially "AUGMENTS", this was repurposed to be a catch-all bodyparts flag +#define BODY_ADJ_LAYER 26 //certain mutantrace features (snout, body markings) that must appear above the body parts +#define BODY_LAYER 25 //underwear, undershirts, socks, eyes, lips(makeup) +#define FRONT_MUTATIONS_LAYER 24 //mutations that should appear above body, body_adj and bodyparts layer (e.g. laser eyes) +#define DAMAGE_LAYER 23 //damage indicators (cuts and burns) +#define UNIFORM_LAYER 22 +#define ID_LAYER 21 //lmao at the idiot who put both ids and hands on the same layer +#define HANDS_PART_LAYER 20 +#define GLOVES_LAYER 19 +#define SHOES_LAYER 18 +#define EARS_LAYER 17 +#define SUIT_LAYER 16 +#define GLASSES_LAYER 15 +#define BELT_LAYER 14 //Possible make this an overlay of somethign required to wear a belt? +#define SUIT_STORE_LAYER 13 +#define NECK_LAYER 12 +#define BACK_LAYER 11 +#define HAIR_LAYER 10 //TODO: make part of head layer? +#define FACEMASK_LAYER 9 +#define HEAD_LAYER 8 +#define HANDCUFF_LAYER 7 +#define LEGCUFF_LAYER 6 +#define HANDS_LAYER 5 +#define BODY_FRONT_LAYER 4 +#define SMELL_LAYER 3 +#define HALO_LAYER 2 //blood cult ascended halo, because there's currently no better solution for adding/removing #define FIRE_LAYER 1 //If you're on fire -#define TOTAL_LAYERS 28 //KEEP THIS UP-TO-DATE OR SHIT WILL BREAK ;_; +#define TOTAL_LAYERS 29 //KEEP THIS UP-TO-DATE OR SHIT WILL BREAK ;_; //Human Overlay Index Shortcuts for alternate_worn_layer, layers //Because I *KNOW* somebody will think layer+1 means "above" @@ -187,6 +175,9 @@ GLOBAL_LIST_EMPTY(bloody_footprints_cache) //Gets the turf this atom inhabits #define get_turf(A) (get_step(A, 0)) +//Same as above except gets the area instead +#define get_area(A) (isarea(A) ? A : get_step(A, 0)?.loc) + //Ghost orbit types: #define GHOST_ORBIT_CIRCLE "circle" #define GHOST_ORBIT_TRIANGLE "triangle" @@ -231,9 +222,6 @@ GLOBAL_LIST_INIT(ghost_others_options, list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE GLOBAL_LIST_INIT(pda_styles, list(MONO, VT, ORBITRON, SHARE)) -//Color Defines -#define OOC_COLOR "#002eb8" - ///////////////////////////////////// // atom.appearence_flags shortcuts // ///////////////////////////////////// @@ -459,3 +447,6 @@ GLOBAL_LIST_INIT(pda_styles, list(MONO, VT, ORBITRON, SHARE)) #define DICE_NOT_RIGGED 1 #define DICE_BASICALLY_RIGGED 2 #define DICE_TOTALLY_RIGGED 3 + +#define VOMIT_TOXIC 1 +#define VOMIT_PURPLE 2 diff --git a/code/__DEFINES/movespeed_modification.dm b/code/__DEFINES/movespeed_modification.dm index f415e30a4e9..88cb50b783c 100644 --- a/code/__DEFINES/movespeed_modification.dm +++ b/code/__DEFINES/movespeed_modification.dm @@ -25,6 +25,8 @@ #define MOVESPEED_ID_SLIME_STATUS "SLIME_STATUS" +#define MOVESPEED_ID_TARANTULA_WEB "TARANTULA_WEB" + #define MOVESPEED_ID_LIVING_TURF_SPEEDMOD "LIVING_TURF_SPEEDMOD" #define MOVESPEED_ID_CARBON_SOFTCRIT "CARBON_SOFTCRIT" @@ -53,9 +55,12 @@ #define MOVESPEED_ID_SANITY "MOOD_SANITY" #define MOVESPEED_ID_SPECIES "SPECIES_SPEED_MOD" +#define MOVESPEED_ID_SNAIL_CRAWL "SNAIL_CRAWL_SPEED_MOD" #define MOVESPEED_ID_CYBER_THRUSTER "CYBER_IMPLANT_THRUSTER" #define MOVESPEED_ID_JETPACK "JETPACK" #define MOVESPEED_ID_SLAUGHTER "SLAUGHTER" #define MOVESPEED_ID_DIE_OF_FATE "DIE_OF_FATE" + +#define MOVESPEED_ID_SHOVE "SHOVE" diff --git a/code/__DEFINES/preferences.dm b/code/__DEFINES/preferences.dm index 5c50d54da46..5379c291296 100644 --- a/code/__DEFINES/preferences.dm +++ b/code/__DEFINES/preferences.dm @@ -16,6 +16,12 @@ #define DISABLE_ARRIVALRATTLE (1<<13) #define COMBOHUD_LIGHTING (1<<14) +#define DEADMIN_ALWAYS (1<<15) +#define DEADMIN_ANTAGONIST (1<<16) +#define DEADMIN_POSITION_HEAD (1<<17) +#define DEADMIN_POSITION_SECURITY (1<<18) +#define DEADMIN_POSITION_SILICON (1<<19) + #define TOGGLES_DEFAULT (SOUND_ADMINHELP|SOUND_MIDI|SOUND_AMBIENCE|SOUND_LOBBY|MEMBER_PUBLIC|INTENT_STYLE|MIDROUND_ANTAG|SOUND_INSTRUMENTS|SOUND_SHIP_AMBIENCE|SOUND_PRAYERS|SOUND_ANNOUNCEMENTS) //Chat toggles @@ -29,8 +35,9 @@ #define CHAT_GHOSTWHISPER (1<<7) #define CHAT_GHOSTPDA (1<<8) #define CHAT_GHOSTRADIO (1<<9) +#define CHAT_BANKCARD (1<<10) -#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_BANKCARD) #define PARALLAX_INSANE -1 //for show offs #define PARALLAX_HIGH 0 //default. @@ -68,4 +75,10 @@ //Flags in the players table in the db #define DB_FLAG_EXEMPT 1 -#define DEFAULT_CYBORG_NAME "Default Cyborg Name" \ No newline at end of file +#define DEFAULT_CYBORG_NAME "Default Cyborg Name" + + +//Job preferences levels +#define JP_LOW 1 +#define JP_MEDIUM 2 +#define JP_HIGH 3 \ No newline at end of file diff --git a/code/__DEFINES/procpath.dm b/code/__DEFINES/procpath.dm new file mode 100644 index 00000000000..11800583588 --- /dev/null +++ b/code/__DEFINES/procpath.dm @@ -0,0 +1,24 @@ +/// Represents a proc or verb path. +/// +/// Despite having no DM-defined static type, proc paths have some variables, +/// listed below. These are not modifiable, but for a given procpath P, +/// `new P(null, "Name", "Desc")` can be used to create a new procpath with the +/// same code but new `name` and `desc` values. The other variables cannot be +/// changed in this way. +/// +/// This type exists only to act as an annotation, providing reasonable static +/// typing for procpaths. Previously, types like `/atom/verb` were used, with +/// the `name` and `desc` vars of `/atom` thus being accessible. Proc and verb +/// paths will fail `istype` and `ispath` checks against `/procpath`. +/procpath + // Although these variables are effectively const, if they are marked const + // below, their accesses are optimized away. + + /// A text string of the verb's name. + var/name as text + /// The verb's help text or description. + var/desc as text + /// The category or tab the verb will appear in. + var/category as text + /// Only clients/mobs with `see_invisibility` higher can use the verb. + var/invisibility as num diff --git a/code/__DEFINES/radio.dm b/code/__DEFINES/radio.dm index 943acdbc7ef..bfba80a80cb 100644 --- a/code/__DEFINES/radio.dm +++ b/code/__DEFINES/radio.dm @@ -103,3 +103,13 @@ #define RADIO_MAGNETS "magnets" #define DEFAULT_SIGNALER_CODE 30 + +//Requests Console +#define REQ_NO_NEW_MESSAGE 0 +#define REQ_NORMAL_MESSAGE_PRIORITY 1 +#define REQ_HIGH_MESSAGE_PRIORITY 2 +#define REQ_EXTREME_MESSAGE_PRIORITY 3 + +#define REQ_DEP_TYPE_ASSISTANCE (1<<0) +#define REQ_DEP_TYPE_SUPPLIES (1<<1) +#define REQ_DEP_TYPE_INFORMATION (1<<2) diff --git a/code/__DEFINES/reactions.dm b/code/__DEFINES/reactions.dm index 79db63a2a67..2c9f76b6a59 100644 --- a/code/__DEFINES/reactions.dm +++ b/code/__DEFINES/reactions.dm @@ -10,6 +10,10 @@ #define FIRE_PLASMA_ENERGY_RELEASED 3000000 //Amount of heat released per mole of burnt plasma into the tile //General assmos defines. #define WATER_VAPOR_FREEZE 200 + +#define N2O_DECOMPOSITION_MIN_ENERGY 1400 +#define N2O_DECOMPOSITION_ENERGY_RELEASED 200000 + #define NITRYL_FORMATION_ENERGY 100000 #define TRITIUM_BURN_OXY_FACTOR 100 #define TRITIUM_BURN_TRIT_FACTOR 10 @@ -24,6 +28,7 @@ #define STIMULUM_ABSOLUTE_DROP 0.00000335 #define REACTION_OPPRESSION_THRESHOLD 5 #define NOBLIUM_FORMATION_ENERGY 2e9 //1 Mole of Noblium takes the planck energy to condense. +#define STIM_BALL_GAS_AMOUNT 5 //Research point amounts #define NOBLIUM_RESEARCH_AMOUNT 1000 #define BZ_RESEARCH_SCALE 4 @@ -32,41 +37,14 @@ #define STIMULUM_RESEARCH_AMOUNT 50 //Plasma fusion properties #define FUSION_ENERGY_THRESHOLD 3e9 //Amount of energy it takes to start a fusion reaction -#define FUSION_TEMPERATURE_THRESHOLD 1000 //Temperature required to start a fusion reaction #define FUSION_MOLE_THRESHOLD 250 //Mole count required (tritium/plasma) to start a fusion reaction -#define FUSION_RELEASE_ENERGY_SUPER 3e9 //Amount of energy released in the fusion process, super tier -#define FUSION_RELEASE_ENERGY_HIGH 1e9 //Amount of energy released in the fusion process, high tier -#define FUSION_RELEASE_ENERGY_MID 5e8 //Amount of energy released in the fusion process, mid tier -#define FUSION_RELEASE_ENERGY_LOW 1e8 //Amount of energy released in the fusion process, low tier -#define FUSION_MEDIATION_FACTOR 80 //Arbitrary -#define FUSION_SUPER_TIER_THRESHOLD 50 //anything above this is super tier -#define FUSION_HIGH_TIER_THRESHOLD 20 //anything above this and below 50 is high tier -#define FUSION_MID_TIER_THRESHOLD 5 //anything above this and below 20 is mid tier - below this is low tier, but that doesnt need a define -#define FUSION_ENERGY_DIVISOR_SUPER 25 //power_ratio is divided by this during energy calculations -#define FUSION_ENERGY_DIVISOR_HIGH 20 -#define FUSION_ENERGY_DIVISOR_MID 10 -#define FUSION_ENERGY_DIVISOR_LOW 2 -#define FUSION_GAS_CREATION_FACTOR_TRITIUM 0.40 //trit - one gas rather than two, so think about that when calculating stuff - 40% in total -#define FUSION_GAS_CREATION_FACTOR_STIM 0.05 //stim percentage creation from high tier - 5%, 60% in total with pluox -#define FUSION_GAS_CREATION_FACTOR_PLUOX 0.55 //pluox percentage creation from high tier - 55%, 60% in total with stim -#define FUSION_GAS_CREATION_FACTOR_NITRYL 0.20 //nitryl and N2O - 80% in total -#define FUSION_GAS_CREATION_FACTOR_N2O 0.60 //nitryl and N2O - 80% in total -#define FUSION_GAS_CREATION_FACTOR_BZ 0.05 //BZ - 5% - 90% in total with CO2 -#define FUSION_GAS_CREATION_FACTOR_CO2 0.85 //CO2 - 85% - 90% in total with BZ -#define FUSION_MID_TIER_RAD_PROB_FACTOR 2 //probability of radpulse is power ratio * this for whatever tier -#define FUSION_LOW_TIER_RAD_PROB_FACTOR 5 -#define FUSION_EFFICIENCY_BASE 60 //used in the fusion efficiency calculations -#define FUSION_EFFICIENCY_DIVISOR 0.6 //ditto -#define FUSION_RADIATION_FACTOR 15000 //horizontal asymptote -#define FUSION_RADIATION_CONSTANT 30 //equation is form of (ax) / (x + b), where a = radiation factor and b = radiation constant and x = power ratio (https://www.desmos.com/calculator/4i1f296phl) -#define FUSION_ZAP_POWER_ASYMPTOTE 50000 //maximum value - not enough to instacrit but it'll still hurt like shit -#define FUSION_ZAP_POWER_CONSTANT 75 //equation is of from [ax / (x + b)] + c, where a = zap power asymptote, b = zap power constant, c = zap power base and x = power ratio -#define FUSION_ZAP_POWER_BASE 1000 //(https://www.desmos.com/calculator/vvbmhf4unm) -#define FUSION_ZAP_RANGE_SUPER 9 //range of the tesla zaps that occur from fusion -#define FUSION_ZAP_RANGE_HIGH 7 -#define FUSION_ZAP_RANGE_MID 5 -#define FUSION_ZAP_RANGE_LOW 3 -#define FUSION_PARTICLE_FACTOR_SUPER 4 //# of particles fired out is equal to rand(3,6) * this for whatever tier -#define FUSION_PARTICLE_FACTOR_HIGH 3 -#define FUSION_PARTICLE_FACTOR_MID 2 -#define FUSION_PARTICLE_FACTOR_LOW 1 +#define FUSION_TRITIUM_CONVERSION_COEFFICIENT (1e-10) +#define INSTABILITY_GAS_POWER_FACTOR 0.003 +#define FUSION_TRITIUM_MOLES_USED 1 +#define PLASMA_BINDING_ENERGY 20000000 +#define TOROID_VOLUME_BREAKEVEN 1000 +#define FUSION_TEMPERATURE_THRESHOLD 10000 +#define PARTICLE_CHANCE_CONSTANT (-20000000) +#define FUSION_RAD_MAX 2000 +#define FUSION_RAD_COEFFICIENT (-1000) +#define FUSION_INSTABILITY_ENDOTHERMALITY 2 diff --git a/code/__DEFINES/robots.dm b/code/__DEFINES/robots.dm index 9c813052419..0820d632473 100644 --- a/code/__DEFINES/robots.dm +++ b/code/__DEFINES/robots.dm @@ -35,6 +35,7 @@ #define CLEAN_BOT (1<<3) // Cleanbots #define MED_BOT (1<<4) // Medibots #define HONK_BOT (1<<5) // Honkbots & ED-Honks +#define FIRE_BOT (1<<6) // Firebots //AI notification defines #define NEW_BORG 1 diff --git a/code/__DEFINES/shuttles.dm b/code/__DEFINES/shuttles.dm index c8a583a55ea..14d9060b84b 100644 --- a/code/__DEFINES/shuttles.dm +++ b/code/__DEFINES/shuttles.dm @@ -7,6 +7,8 @@ #define SHUTTLE_STRANDED "stranded" #define SHUTTLE_ESCAPE "escape" #define SHUTTLE_ENDGAME "endgame: game over" +#define SHUTTLE_RECHARGING "recharging" +#define SHUTTLE_PREARRIVAL "landing" #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))) diff --git a/code/__DEFINES/status_effects.dm b/code/__DEFINES/status_effects.dm index c6ca0c72d0c..47d7a8dff3b 100644 --- a/code/__DEFINES/status_effects.dm +++ b/code/__DEFINES/status_effects.dm @@ -38,6 +38,8 @@ #define STATUS_EFFECT_REGENERATIVE_CORE /datum/status_effect/regenerative_core +#define STATUS_EFFECT_ANTIMAGIC /datum/status_effect/antimagic //grants antimagic (and reapplies if lost) for the duration + ///////////// // DEBUFFS // ///////////// @@ -88,6 +90,12 @@ #define STATUS_EFFECT_SPASMS /datum/status_effect/spasms //causes random muscle spasms +#define STATUS_EFFECT_DNA_MELT /datum/status_effect/dna_melt //usually does something horrible to you when you hit 100 genetic instability + +#define STATUS_EFFECT_GO_AWAY /datum/status_effect/go_away //makes you launch through walls in a single direction for a while + +#define STATUS_EFFECT_STASIS /datum/status_effect/incapacitating/stasis //Halts biological functions like bleeding, chemical processing, blood regeneration, walking, etc + ///////////// // NEUTRAL // ///////////// @@ -100,13 +108,21 @@ #define STATUS_EFFECT_INLOVE /datum/status_effect/in_love //Displays you as being in love with someone else, and makes hearts appear around them. +#define STATUS_EFFECT_BUGGED /datum/status_effect/bugged //Lets other mobs listen in on what it hears + #define STATUS_EFFECT_HIVE_TRACKER /datum/status_effect/hive_track #define STATUS_EFFECT_HIVE_RADAR /datum/status_effect/agent_pinpointer/hivemind +#define STATUS_EFFECT_BOUNTY /datum/status_effect/bounty //rewards the person who added this to the target with refreshed spells and a fair heal + ///////////// // SLIME // ///////////// #define STATUS_EFFECT_RAINBOWPROTECTION /datum/status_effect/rainbow_protection //Invulnerable and pacifistic #define STATUS_EFFECT_SLIMESKIN /datum/status_effect/slimeskin //Increased armor + +// Stasis helpers + +#define IS_IN_STASIS(mob) (mob.has_status_effect(STATUS_EFFECT_STASIS)) diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index 0fcab54f0f8..dc045037ada 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -1,7 +1,8 @@ //Update this whenever the db schema changes //make sure you add an update to the schema_version stable in the db changelog #define DB_MAJOR_VERSION 5 -#define DB_MINOR_VERSION 0 +#define DB_MINOR_VERSION 1 + //Timing subsystem //Don't run if there is an identical unique timer active @@ -24,10 +25,6 @@ #define TIMER_ID_NULL -1 -//For servers that can't do with any additional lag, set this to none in flightpacks.dm in subsystem/processing. -#define FLIGHTSUIT_PROCESSING_NONE 0 -#define FLIGHTSUIT_PROCESSING_FULL 1 - #define INITIALIZATION_INSSATOMS 0 //New should not call Initialize #define INITIALIZATION_INNEW_MAPLOAD 2 //New should call Initialize(TRUE) #define INITIALIZATION_INNEW_REGULAR 1 //New should call Initialize(FALSE) @@ -106,10 +103,10 @@ #define FIRE_PRIOTITY_BURNING 40 #define FIRE_PRIORITY_DEFAULT 50 #define FIRE_PRIORITY_PARALLAX 65 -#define FIRE_PRIORITY_FLIGHTPACKS 80 #define FIRE_PRIORITY_MOBS 100 #define FIRE_PRIORITY_TGUI 110 #define FIRE_PRIORITY_TICKER 200 +#define FIRE_PRIORITY_ATMOS_ADJACENCY 300 #define FIRE_PRIORITY_OVERLAYS 500 #define FIRE_PRIORITY_INPUT 1000 // This must always always be the max highest priority. Player input must never be lost. diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm index ab1905dcd53..cb7e9b02042 100644 --- a/code/__DEFINES/traits.dm +++ b/code/__DEFINES/traits.dm @@ -1,3 +1,63 @@ +// trait accessor defines +#define ADD_TRAIT(target, trait, source) \ + do { \ + var/list/_L; \ + if (!target.status_traits) { \ + target.status_traits = list(); \ + _L = target.status_traits; \ + _L[trait] = list(source); \ + } else { \ + _L = target.status_traits; \ + if (_L[trait]) { \ + _L[trait] |= list(source); \ + } else { \ + _L[trait] = list(source); \ + } \ + } \ + } while (0) +#define REMOVE_TRAIT(target, trait, sources) \ + do { \ + var/list/_L = target.status_traits; \ + var/list/_S; \ + if (sources && !islist(sources)) { \ + _S = list(sources); \ + } else { \ + _S = sources\ + }; \ + if (_L && _L[trait]) { \ + for (var/_T in _L[trait]) { \ + if ((!_S && (_T != ROUNDSTART_TRAIT)) || (_T in _S)) { \ + _L[trait] -= _T \ + } \ + };\ + if (!length(_L[trait])) { \ + _L -= trait \ + }; \ + if (!length(_L)) { \ + target.status_traits = null \ + }; \ + } \ + } while (0) +#define REMOVE_TRAITS_NOT_IN(target, sources) \ + do { \ + var/list/_L = target.status_traits; \ + var/list/_S = sources; \ + if (_L) { \ + for (var/_T in _L) { \ + _L[_T] &= _S;\ + if (!length(_L[_T])) { \ + _L -= _T } \ + };\ + if (!length(_L)) { \ + target.status_traits = null\ + };\ + }\ + } while (0) +#define HAS_TRAIT(target, trait) (target.status_traits ? (target.status_traits[trait] ? TRUE : FALSE) : FALSE) +#define HAS_TRAIT_FROM(target, trait, source) (target.status_traits ? (target.status_traits[trait] ? (source in target.status_traits[trait]) : FALSE) : FALSE) + + + //mob traits #define TRAIT_BLIND "blind" #define TRAIT_MUTE "mute" @@ -63,6 +123,7 @@ #define TRAIT_DISK_VERIFIER "disk-verifier" #define TRAIT_NOMOBSWAP "no-mob-swap" #define TRAIT_XRAY_VISION "xray_vision" +#define TRAIT_THERMAL_VISION "thermal_vision" #define TRAIT_ABDUCTOR_TRAINING "abductor-training" #define TRAIT_ABDUCTOR_SCIENTIST_TRAINING "abductor-scientist-training" #define TRAIT_SURGEON "surgeon" @@ -74,6 +135,7 @@ #define TRAIT_ALWAYS_CLEAN "always-clean" #define TRAIT_BOOZE_SLIDER "booze-slider" #define TRAIT_UNINTELLIGIBLE_SPEECH "unintelligible-speech" +#define TRAIT_UNSTABLE "unstable" //non-mob traits #define TRAIT_PARALYSIS "paralysis" //Used for limb-based paralysis, where replacing the limb will fix it @@ -102,6 +164,8 @@ #define TRAIT_PHOTOGRAPHER "photographer" #define TRAIT_MUSICIAN "musician" #define TRAIT_LIGHT_DRINKER "light_drinker" +#define TRAIT_EMPATH "empath" +#define TRAIT_FRIENDLY "friendly" // common trait sources #define TRAIT_GENERIC "generic" @@ -160,3 +224,5 @@ #define LOCKED_HELMET_TRAIT "locked-helmet" #define NINJA_SUIT_TRAIT "ninja-suit" #define ANTI_DROP_IMPLANT_TRAIT "anti-drop-implant" +#define HIVEMIND_ONE_MIND_TRAIT "one_mind" +#define VR_ZONE_TRAIT "vr_zone_trait" diff --git a/code/__DEFINES/turf_flags.dm b/code/__DEFINES/turf_flags.dm index 5ceb6f2e2ed..881a535a40e 100644 --- a/code/__DEFINES/turf_flags.dm +++ b/code/__DEFINES/turf_flags.dm @@ -3,3 +3,4 @@ #define CHANGETURF_FORCEOP 4 #define CHANGETURF_SKIP 8 // A flag for PlaceOnTop to just instance the new turf instead of calling ChangeTurf. Used for uninitialized turfs NOTHING ELSE #define CHANGETURF_INHERIT_AIR 16 // Inherit air from previous turf. Implies CHANGETURF_IGNORE_AIR +#define CHANGETURF_RECALC_ADJACENT 32 //Immediately recalc adjacent atmos turfs instead of queuing. diff --git a/code/__HELPERS/_logging.dm b/code/__HELPERS/_logging.dm index b0d9cbcdaeb..f76e4322b0c 100644 --- a/code/__HELPERS/_logging.dm +++ b/code/__HELPERS/_logging.dm @@ -62,6 +62,20 @@ if (CONFIG_GET(flag/log_mecha)) WRITE_LOG(GLOB.world_mecha_log, "MECHA: [text]") +/proc/log_virus(text) + if (CONFIG_GET(flag/log_virus)) + WRITE_LOG(GLOB.world_virus_log, "VIRUS: [text]") + +/proc/log_cloning(text, mob/initiator) + if(CONFIG_GET(flag/log_cloning)) + WRITE_LOG(GLOB.world_cloning_log, "CLONING: [text]") + +/proc/log_paper(text) + WRITE_LOG(GLOB.world_paper_log, "PAPER: [text]") + +/proc/log_asset(text) + WRITE_LOG(GLOB.world_asset_log, "ASSET: [text]") + /proc/log_access(text) if (CONFIG_GET(flag/log_access)) WRITE_LOG(GLOB.world_game_log, "ACCESS: [text]") @@ -170,6 +184,8 @@ WRITE_LOG(GLOB.config_error_log, text) SEND_TEXT(world.log, text) +/proc/log_mapping(text) + WRITE_LOG(GLOB.world_map_error_log, text) /* For logging round startup. */ /proc/start_log(log) diff --git a/code/__HELPERS/areas.dm b/code/__HELPERS/areas.dm index 1f5b82f7bf1..ec669a49dd5 100644 --- a/code/__HELPERS/areas.dm +++ b/code/__HELPERS/areas.dm @@ -1,5 +1,10 @@ #define BP_MAX_ROOM_SIZE 300 +GLOBAL_LIST_INIT(typecache_powerfailure_safe_areas, typecacheof(/area/engine/engineering, \ + /area/engine/supermatter, \ + /area/engine/atmospherics_engine, \ + /area/ai_monitored/turret_protected/ai)) + // Gets an atmos isolated contained space // Returns an associative list of turf|dirs pairs // The dirs are connected turfs in the same space diff --git a/code/__HELPERS/dna.dm b/code/__HELPERS/dna.dm index bb0c89d1f37..5ec66923ea5 100644 --- a/code/__HELPERS/dna.dm +++ b/code/__HELPERS/dna.dm @@ -5,6 +5,7 @@ #define GET_INITIALIZED_MUTATION(A) GLOB.all_mutations[A] #define GET_GENE_STRING(A, B) (B.mutation_index[A]) #define GET_SEQUENCE(A) (GLOB.full_sequences[A]) +#define GET_MUTATION_TYPE_FROM_ALIAS(A) (GLOB.alias_mutations[A]) #define GET_MUTATION_STABILIZER(A) ((A.stabilizer_coeff < 0) ? 1 : A.stabilizer_coeff) #define GET_MUTATION_SYNCHRONIZER(A) ((A.synchronizer_coeff < 0) ? 1 : A.synchronizer_coeff) diff --git a/code/__HELPERS/files.dm b/code/__HELPERS/files.dm index 7f0b5a3c071..5d6106cf918 100644 --- a/code/__HELPERS/files.dm +++ b/code/__HELPERS/files.dm @@ -1,5 +1,5 @@ //Sends resource files to client cache -/client/proc/getFiles() +/client/proc/getFiles(...) for(var/file in args) src << browse_rsc(file) diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 62cff3e6bb7..f5644114338 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -8,12 +8,6 @@ #define Z_TURFS(ZLEVEL) block(locate(1,1,ZLEVEL), locate(world.maxx, world.maxy, ZLEVEL)) #define CULT_POLL_WAIT 2400 -/proc/get_area(atom/A) - if(isarea(A)) - return A - var/turf/T = get_turf(A) - return T ? T.loc : null - /proc/get_area_name(atom/X, format_text = FALSE) var/area/A = isarea(X) ? X : get_area(X) if(!A) @@ -498,11 +492,15 @@ //Recursively checks if an item is inside a given type, even through layers of storage. Returns the atom if it finds it. /proc/recursive_loc_check(atom/movable/target, type) var/atom/A = target + if(istype(A, type)) + return A + while(!istype(A.loc, type)) if(!A.loc) return A = A.loc - return A + + return A.loc /proc/AnnounceArrival(var/mob/living/carbon/human/character, var/rank) if(!SSticker.IsRoundInProgress() || QDELETED(character)) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 11068435096..a9bf023b7d2 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -376,11 +376,22 @@ GLOBAL_LIST_EMPTY(species_list) if(!T) CRASH("attempt to spawn atom type: [spawn_type] in nullspace") + var/list/spawned_mobs = new(amount) + for(var/j in 1 to amount) - var/atom/movable/X = new spawn_type(T) + var/atom/movable/X + + if (istype(spawn_type, /list)) + var/mob_type = pick(spawn_type) + X = new mob_type(T) + else + X = new spawn_type(T) + if (admin_spawn) X.flags_1 |= ADMIN_SPAWNED_1 + spawned_mobs[j] = X + if(always_max_walk || prob(walk_chance)) if(always_max_walk) step_count = max_walk @@ -390,6 +401,8 @@ GLOBAL_LIST_EMPTY(species_list) for(var/i in 1 to step_count) step(X, pick(NORTH, SOUTH, EAST, WEST)) + return spawned_mobs + /proc/deadchat_broadcast(message, mob/follow_target=null, turf/turf_target=null, speaker_key=null, message_type=DEADCHAT_REGULAR) message = "[message]" for(var/mob/M in GLOB.player_list) @@ -402,7 +415,7 @@ GLOBAL_LIST_EMPTY(species_list) var/override = FALSE if(M.client && M.client.holder && (prefs.chat_toggles & CHAT_DEAD)) override = TRUE - if(M.has_trait(TRAIT_SIXTHSENSE)) + if(HAS_TRAIT(M, TRAIT_SIXTHSENSE)) override = TRUE if(isnewplayer(M) && !override) continue diff --git a/code/__HELPERS/radio.dm b/code/__HELPERS/radio.dm index 84b354b6cd5..a5bf3a17150 100644 --- a/code/__HELPERS/radio.dm +++ b/code/__HELPERS/radio.dm @@ -12,3 +12,8 @@ /proc/format_frequency(frequency) frequency = text2num(frequency) return "[round(frequency / 10)].[frequency % 10]" + +//Opposite of format, returns as a number +/proc/unformat_frequency(frequency) + frequency = text2num(frequency) + return frequency * 10 \ No newline at end of file diff --git a/code/__HELPERS/roundend.dm b/code/__HELPERS/roundend.dm index 3f421c8421b..1959cf35cf6 100644 --- a/code/__HELPERS/roundend.dm +++ b/code/__HELPERS/roundend.dm @@ -163,6 +163,7 @@ set waitfor = FALSE to_chat(world, "


The round has ended.") + log_game("The round has ended.") if(LAZYLEN(GLOB.round_end_notifiees)) send2irc("Notice", "[GLOB.round_end_notifiees.Join(", ")] the round has ended.") diff --git a/code/__HELPERS/shell.dm b/code/__HELPERS/shell.dm index 8b615eac0a0..eed86a3bd10 100644 --- a/code/__HELPERS/shell.dm +++ b/code/__HELPERS/shell.dm @@ -25,7 +25,10 @@ shelleo_ids[shelleo_id] = TRUE out_file = "[SHELLEO_NAME][shelleo_id][SHELLEO_OUT]" err_file = "[SHELLEO_NAME][shelleo_id][SHELLEO_ERR]" - errorcode = shell("[interpreter] \"[command]\" > [out_file] 2> [err_file]") + if(world.system_type == UNIX) + errorcode = shell("[interpreter] \"[replacetext(command, "\"", "\\\"")]\" > [out_file] 2> [err_file]") + else + errorcode = shell("[interpreter] \"[command]\" > [out_file] 2> [err_file]") if(fexists(out_file)) stdout = file2text(out_file) fdel(out_file) diff --git a/code/__HELPERS/time.dm b/code/__HELPERS/time.dm index 5fe65af8f3f..677643b9edd 100644 --- a/code/__HELPERS/time.dm +++ b/code/__HELPERS/time.dm @@ -11,11 +11,11 @@ wtime = world.time return time2text(wtime - GLOB.timezoneOffset, format) -/proc/station_time(display_only = FALSE) - return ((((world.time - SSticker.round_start_time) * SSticker.station_time_rate_multiplier) + SSticker.gametime_offset) % 864000) - (display_only? GLOB.timezoneOffset : 0) +/proc/station_time(display_only = FALSE, wtime=world.time) + return ((((wtime - SSticker.round_start_time) * SSticker.station_time_rate_multiplier) + SSticker.gametime_offset) % 864000) - (display_only? GLOB.timezoneOffset : 0) -/proc/station_time_timestamp(format = "hh:mm:ss") - return time2text(station_time(TRUE), format) +/proc/station_time_timestamp(format = "hh:mm:ss", wtime) + return time2text(station_time(TRUE, wtime), format) /proc/station_time_debug(force_set) if(isnum(force_set)) diff --git a/code/__HELPERS/type2type.dm b/code/__HELPERS/type2type.dm index 1846529286e..9f473c32a0e 100644 --- a/code/__HELPERS/type2type.dm +++ b/code/__HELPERS/type2type.dm @@ -448,16 +448,6 @@ else . = max(0, min(255, 138.5177312231 * log(temp - 10) - 305.0447927307)) -/proc/fusionpower2text(power) //used when displaying fusion power on analyzers - switch(power) - if(0 to 5) - return "low" - if(5 to 20) - return "mid" - if(20 to 50) - return "high" - if(50 to INFINITY) - return "super" /proc/color2hex(color) //web colors if(!color) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 4b371819e1f..13a35209420 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -203,7 +203,7 @@ Turf and target are separate in case you want to teleport some distance from a t var/loop = 1 var/safety = 0 - var/banned = is_banned_from(C.ckey, "Appearance") + var/banned = C ? is_banned_from(C.ckey, "Appearance") : null while(loop && safety < 5) if(C && C.prefs.custom_names[role] && !safety && !banned) @@ -367,12 +367,7 @@ Turf and target are separate in case you want to teleport some distance from a t return "[round((powerused * 0.000000001),0.0001)] GW" // Format an energy value in J, kJ, MJ, or GJ. 1W = 1J/s. -/proc/DisplayEnergy(units) - // APCs process every (SSmachines.wait * 0.1) seconds, and turn 1 W of - // excess power into GLOB.CELLRATE energy units when charging cells. - // With the current configuration of wait=20 and CELLRATE=0.002, this - // means that one unit is 1 kJ. - units *= SSmachines.wait * 0.1 / GLOB.CELLRATE +/proc/DisplayJoules(units) if (units < 1000) // Less than a kJ return "[round(units, 0.1)] J" else if (units < 1000000) // Less than a MJ @@ -381,6 +376,14 @@ Turf and target are separate in case you want to teleport some distance from a t return "[round(units * 0.000001, 0.001)] MJ" return "[round(units * 0.000000001, 0.0001)] GJ" +// Format an energy value measured in Power Cell units. +/proc/DisplayEnergy(units) + // APCs process every (SSmachines.wait * 0.1) seconds, and turn 1 W of + // excess power into GLOB.CELLRATE energy units when charging cells. + // With the current configuration of wait=20 and CELLRATE=0.002, this + // means that one unit is 1 kJ. + return DisplayJoules(units * SSmachines.wait * 0.1 / GLOB.CELLRATE) + /proc/get_mob_by_ckey(key) if(!key) return @@ -1126,6 +1129,27 @@ B --><-- A /proc/get_random_station_turf() return safepick(get_area_turfs(pick(GLOB.the_station_areas))) +/proc/get_safe_random_station_turf() + for (var/i in 1 to 5) + var/list/L = get_area_turfs(pick(GLOB.the_station_areas)) + var/turf/target + while (L.len && !target) + var/I = rand(1, L.len) + var/turf/T = L[I] + if(!T.density) + var/clear = TRUE + for(var/obj/O in T) + if(O.density) + clear = FALSE + break + if(clear) + target = T + if (!target) + L.Cut(I,I+1) + if (target) + return target + + /proc/get_closest_atom(type, list, source) var/closest_atom var/closest_distance @@ -1319,7 +1343,7 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) #define UNTIL(X) while(!(X)) stoplag() -/proc/pass() +/proc/pass(...) return /proc/get_mob_or_brainmob(occupant) diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm index fe42800f7f6..9a805f0299d 100644 --- a/code/_globalvars/bitfields.dm +++ b/code/_globalvars/bitfields.dm @@ -167,7 +167,8 @@ GLOBAL_LIST_INIT(bitfields, list( "PICKUP" = MOBILITY_PICKUP, "USE" = MOBILITY_USE, "UI" = MOBILITY_UI, - "STORAGE" = MOBILITY_STORAGE + "STORAGE" = MOBILITY_STORAGE, + "PULL" = MOBILITY_PULL, ), "rad_flags" = list( "RAD_PROTECT_CONTENTS" = RAD_PROTECT_CONTENTS, diff --git a/code/_globalvars/genetics.dm b/code/_globalvars/genetics.dm index c95743e9dab..4582fe0a9a5 100644 --- a/code/_globalvars/genetics.dm +++ b/code/_globalvars/genetics.dm @@ -1,30 +1,9 @@ - ////////////// -GLOBAL_VAR_INIT(NEARSIGHTBLOCK, 0) -GLOBAL_VAR_INIT(EPILEPSYBLOCK, 0) -GLOBAL_VAR_INIT(COUGHBLOCK, 0) -GLOBAL_VAR_INIT(TOURETTESBLOCK, 0) -GLOBAL_VAR_INIT(NERVOUSBLOCK, 0) -GLOBAL_VAR_INIT(BLINDBLOCK, 0) -GLOBAL_VAR_INIT(DEAFBLOCK, 0) -GLOBAL_VAR_INIT(HULKBLOCK, 0) -GLOBAL_VAR_INIT(TELEBLOCK, 0) -GLOBAL_VAR_INIT(FIREBLOCK, 0) -GLOBAL_VAR_INIT(XRAYBLOCK, 0) -GLOBAL_VAR_INIT(CLUMSYBLOCK, 0) -GLOBAL_VAR_INIT(STRANGEBLOCK, 0) -GLOBAL_VAR_INIT(RACEBLOCK, 0) - -GLOBAL_LIST(bad_se_blocks) -GLOBAL_LIST(good_se_blocks) -GLOBAL_LIST(op_se_blocks) - -GLOBAL_VAR(NULLED_SE) -GLOBAL_VAR(NULLED_UI) - -GLOBAL_LIST_EMPTY(all_mutations) -GLOBAL_LIST_EMPTY(full_sequences) -GLOBAL_LIST_EMPTY(bad_mutations) -GLOBAL_LIST_EMPTY(good_mutations) -GLOBAL_LIST_EMPTY(not_good_mutations) +//faster than having to constantly loop for them +GLOBAL_LIST_EMPTY(all_mutations) //type = initialized mutation +GLOBAL_LIST_EMPTY(full_sequences) //type = correct sequence +GLOBAL_LIST_EMPTY(bad_mutations) //bad initialized mutations +GLOBAL_LIST_EMPTY(good_mutations) //good initialized mutations +GLOBAL_LIST_EMPTY(not_good_mutations) //neutral initialized mutations +GLOBAL_LIST_EMPTY(alias_mutations) //alias = type GLOBAL_LIST_EMPTY(mutation_recipes) \ No newline at end of file diff --git a/code/_globalvars/lists/maintenance_loot.dm b/code/_globalvars/lists/maintenance_loot.dm index b0b8d09c271..5ae3bdfbe6e 100644 --- a/code/_globalvars/lists/maintenance_loot.dm +++ b/code/_globalvars/lists/maintenance_loot.dm @@ -105,5 +105,6 @@ GLOBAL_LIST_INIT(maintenance_loot, list( /obj/item/storage/toolbox/artistic = 2, /obj/item/toy/eightball = 1, /obj/item/reagent_containers/pill/floorpill = 1, + /obj/item/reagent_containers/food/snacks/cannedpeaches/maint = 1, "" = 3 )) diff --git a/code/_globalvars/lists/mobs.dm b/code/_globalvars/lists/mobs.dm index 3400079d3d9..28d7d982180 100644 --- a/code/_globalvars/lists/mobs.dm +++ b/code/_globalvars/lists/mobs.dm @@ -26,7 +26,6 @@ GLOBAL_LIST_EMPTY(available_ai_shells) GLOBAL_LIST_INIT(simple_animals, list(list(),list(),list(),list())) // One for each AI_* status define GLOBAL_LIST_EMPTY(spidermobs) //all sentient spider mobs GLOBAL_LIST_EMPTY(bots_list) -GLOBAL_LIST_EMPTY(living_cameras) GLOBAL_LIST_EMPTY(aiEyes) GLOBAL_LIST_EMPTY(language_datum_instances) diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index b5ba352bab1..14c752613bf 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -13,7 +13,6 @@ GLOBAL_LIST_EMPTY(deliverybeacontags) //list of all tags associated with d GLOBAL_LIST_EMPTY(nuke_list) GLOBAL_LIST_EMPTY(alarmdisplay) //list of all machines or programs that can display station alerts GLOBAL_LIST_EMPTY(singularities) //list of all singularities on the station (actually technically all engines) -GLOBAL_LIST_EMPTY(vending_cache) GLOBAL_LIST(chemical_reactions_list) //list of all /datum/chemical_reaction datums. Used during chemical reactions GLOBAL_LIST(chemical_reagents_list) //list of all /datum/reagent datums indexed by reagent id. Used by chemistry stuff diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm index 94723cae38f..490ddd62e30 100644 --- a/code/_globalvars/lists/poll_ignore.dm +++ b/code/_globalvars/lists/poll_ignore.dm @@ -13,6 +13,7 @@ #define POLL_IGNORE_GOLEM "golem" #define POLL_IGNORE_SWARMER "swarmer" #define POLL_IGNORE_DRONE "drone" +#define POLL_IGNORE_FUGITIVE "fugitive" GLOBAL_LIST_INIT(poll_ignore_desc, list( POLL_IGNORE_SENTIENCE_POTION = "Sentience potion", @@ -28,6 +29,7 @@ GLOBAL_LIST_INIT(poll_ignore_desc, list( POLL_IGNORE_GOLEM = "Golems", POLL_IGNORE_SWARMER = "Swarmer shells", POLL_IGNORE_DRONE = "Drone shells", + POLL_IGNORE_FUGITIVE = "Fugitive Hunter", )) GLOBAL_LIST_INIT(poll_ignore, init_poll_ignore()) diff --git a/code/_globalvars/logging.dm b/code/_globalvars/logging.dm index 5184077bc84..45e96b9b9b6 100644 --- a/code/_globalvars/logging.dm +++ b/code/_globalvars/logging.dm @@ -28,6 +28,16 @@ GLOBAL_VAR(world_job_debug_log) GLOBAL_PROTECT(world_job_debug_log) GLOBAL_VAR(world_mecha_log) GLOBAL_PROTECT(world_mecha_log) +GLOBAL_VAR(world_virus_log) +GLOBAL_PROTECT(world_virus_log) +GLOBAL_VAR(world_asset_log) +GLOBAL_PROTECT(world_asset_log) +GLOBAL_VAR(world_cloning_log) +GLOBAL_PROTECT(world_cloning_log) +GLOBAL_VAR(world_map_error_log) +GLOBAL_PROTECT(world_map_error_log) +GLOBAL_VAR(world_paper_log) +GLOBAL_PROTECT(world_paper_log) GLOBAL_LIST_EMPTY(bombers) GLOBAL_PROTECT(bombers) diff --git a/code/_onclick/adjacent.dm b/code/_onclick/adjacent.dm index ddff0b6bd3a..f50e2e2b29f 100644 --- a/code/_onclick/adjacent.dm +++ b/code/_onclick/adjacent.dm @@ -68,9 +68,10 @@ /atom/movable/Adjacent(var/atom/neighbor) if(neighbor == loc) return TRUE - if(!isturf(loc)) + var/turf/T = loc + if(!istype(T)) return FALSE - if(loc.Adjacent(neighbor,target = neighbor, mover = src)) + if(T.Adjacent(neighbor,target = neighbor, mover = src)) return TRUE return FALSE diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm index f2376e01c11..f273e695d99 100644 --- a/code/_onclick/ai.dm +++ b/code/_onclick/ai.dm @@ -23,6 +23,9 @@ return next_click = world.time + 1 + if(!can_interact_with(A)) + return + if(multicam_on) var/turf/T = get_turf(A) if(T) @@ -59,8 +62,6 @@ if(controlled_mech) //Are we piloting a mech? Placed here so the modifiers are not overridden. controlled_mech.click_action(A, src, params) //Override AI normal click behavior. return - - return if(modifiers["shift"]) ShiftClickOn(A) return diff --git a/code/_onclick/drag_drop.dm b/code/_onclick/drag_drop.dm index c64f0d7a3ea..b048fa224c9 100644 --- a/code/_onclick/drag_drop.dm +++ b/code/_onclick/drag_drop.dm @@ -102,20 +102,6 @@ /obj/screen/click_catcher/IsAutoclickable() . = 1 -//Please don't roast me too hard -/client/MouseMove(object,location,control,params) - mouseParams = params - mouseLocation = location - mouseObject = object - mouseControlObject = control - if(mob && LAZYLEN(mob.mousemove_intercept_objects)) - for(var/datum/D in mob.mousemove_intercept_objects) - D.onMouseMove(object, location, control, params) - ..() - -/datum/proc/onMouseMove(object, location, control, params) - return - /client/MouseDrag(src_object,atom/over_object,src_location,over_location,src_control,over_control,params) var/list/L = params2list(params) if (L["middle"]) @@ -143,4 +129,4 @@ if (middragatom == src_object) middragtime = 0 middragatom = null - ..() \ No newline at end of file + ..() diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm index 326a9878209..5790320af48 100644 --- a/code/_onclick/hud/_defines.dm +++ b/code/_onclick/hud/_defines.dm @@ -138,6 +138,22 @@ #define ui_ai_multicam "SOUTH+1:6,WEST+13" #define ui_ai_add_multicam "SOUTH+1:6,WEST+14" +// pAI + +#define ui_pai_software "SOUTH:6,WEST" +#define ui_pai_shell "SOUTH:6,WEST+1" +#define ui_pai_chassis "SOUTH:6,WEST+2" +#define ui_pai_rest "SOUTH:6,WEST+3" +#define ui_pai_light "SOUTH:6,WEST+4" +#define ui_pai_newscaster "SOUTH:6,WEST+5" +#define ui_pai_host_monitor "SOUTH:6,WEST+6" +#define ui_pai_crew_manifest "SOUTH:6,WEST+7" +#define ui_pai_state_laws "SOUTH:6,WEST+8" +#define ui_pai_pda_send "SOUTH:6,WEST+9" +#define ui_pai_pda_log "SOUTH:6,WEST+10" +#define ui_pai_take_picture "SOUTH:6,WEST+12" +#define ui_pai_view_images "SOUTH:6,WEST+13" + //Pop-up inventory #define ui_shoes "WEST+1:8,SOUTH:5" diff --git a/code/_onclick/hud/action_button.dm b/code/_onclick/hud/action_button.dm index 4ae61169b7b..7a7e950195f 100644 --- a/code/_onclick/hud/action_button.dm +++ b/code/_onclick/hud/action_button.dm @@ -100,7 +100,7 @@ name = "Show Buttons" else name = "Hide Buttons" - UpdateIcon() + update_icon() usr.update_action_buttons() /obj/screen/movable/action_button/hide_toggle/AltClick(mob/user) @@ -121,9 +121,9 @@ hide_icon = settings["toggle_icon"] hide_state = settings["toggle_hide"] show_state = settings["toggle_show"] - UpdateIcon() + update_icon() -/obj/screen/movable/action_button/hide_toggle/proc/UpdateIcon() +/obj/screen/movable/action_button/hide_toggle/update_icon() cut_overlays() add_overlay(mutable_appearance(hide_icon, hidden ? show_state : hide_state)) diff --git a/code/_onclick/hud/blob_overmind.dm b/code/_onclick/hud/blob_overmind.dm index ab8bc459ae1..d4ace893680 100644 --- a/code/_onclick/hud/blob_overmind.dm +++ b/code/_onclick/hud/blob_overmind.dm @@ -48,7 +48,7 @@ if(isovermind(usr)) var/mob/camera/blob/B = usr if(!B.placed) - B.place_blob_core(B.base_point_rate, 0) + B.place_blob_core(0) B.transport_core() /obj/screen/blob/Blobbernaut @@ -91,26 +91,26 @@ var/mob/camera/blob/B = usr B.create_factory() -/obj/screen/blob/ReadaptChemical +/obj/screen/blob/ReadaptStrain icon_state = "ui_chemswap" name = "Readapt Chemical (40)" desc = "Randomly rerolls your chemical for 40 resources." -/obj/screen/blob/ReadaptChemical/MouseEntered(location,control,params) +/obj/screen/blob/ReadaptStrain/MouseEntered(location,control,params) if(hud && hud.mymob && isovermind(hud.mymob)) var/mob/camera/blob/B = hud.mymob - if(B.free_chem_rerolls) - name = "Readapt Chemical (FREE)" - desc = "Randomly rerolls your chemical for free." + if(B.free_strain_rerolls) + name = "Readapt Strain (FREE)" + desc = "Randomly rerolls your strain for free." else name = initial(name) desc = initial(desc) ..() -/obj/screen/blob/ReadaptChemical/Click() +/obj/screen/blob/ReadaptStrain/Click() if(isovermind(usr)) var/mob/camera/blob/B = usr - B.chemical_reroll() + B.strain_reroll() /obj/screen/blob/RelocateCore icon_state = "ui_swap" @@ -167,7 +167,7 @@ using.screen_loc = ui_hand_position(1) static_inventory += using - using = new /obj/screen/blob/ReadaptChemical() + using = new /obj/screen/blob/ReadaptStrain() using.screen_loc = ui_storage1 using.hud = src static_inventory += using diff --git a/code/_onclick/hud/pai.dm b/code/_onclick/hud/pai.dm new file mode 100644 index 00000000000..c045223d983 --- /dev/null +++ b/code/_onclick/hud/pai.dm @@ -0,0 +1,258 @@ +#define PAI_MISSING_SOFTWARE_MESSAGE "You must download the required software to use this." + +/obj/screen/pai + icon = 'icons/mob/screen_pai.dmi' + var/required_software + +/obj/screen/pai/Click() + if(isobserver(usr) || usr.incapacitated()) + return FALSE + var/mob/living/silicon/pai/pAI = usr + if(required_software && !pAI.software.Find(required_software)) + to_chat(pAI, PAI_MISSING_SOFTWARE_MESSAGE) + return FALSE + return TRUE + +/obj/screen/pai/software + name = "Software Interface" + icon_state = "pai" + +/obj/screen/pai/software/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.paiInterface() + +/obj/screen/pai/shell + name = "Toggle Holoform" + icon_state = "pai_holoform" + +/obj/screen/pai/shell/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + if(pAI.holoform) + pAI.fold_in(0) + else + pAI.fold_out() + +/obj/screen/pai/chassis + name = "Holochassis Appearance Composite" + icon_state = "pai_chassis" + +/obj/screen/pai/chassis/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.choose_chassis() + +/obj/screen/pai/rest + name = "Rest" + icon_state = "pai_rest" + +/obj/screen/pai/rest/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.lay_down() + +/obj/screen/pai/light + name = "Toggle Integrated Lights" + icon_state = "light" + +/obj/screen/pai/light/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.toggle_integrated_light() + +/obj/screen/pai/newscaster + name = "pAI Newscaster" + icon_state = "newscaster" + required_software = "newscaster" + +/obj/screen/pai/newscaster/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.newscaster.ui_interact(usr) + +/obj/screen/pai/host_monitor + name = "Host Health Scan" + icon_state = "host_monitor" + required_software = "host scan" + +/obj/screen/pai/host_monitor/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + if(iscarbon(pAI.card.loc)) + pAI.hostscan.attack(pAI.card.loc, pAI) + else + to_chat(src, "You are not being carried by anyone!") + return 0 + +/obj/screen/pai/crew_manifest + name = "Crew Manifest" + icon_state = "manifest" + required_software = "crew manifest" + +/obj/screen/pai/crew_manifest/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.ai_roster() + +/obj/screen/pai/state_laws + name = "State Laws" + icon_state = "state_laws" + +/obj/screen/pai/state_laws/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.checklaws() + +/obj/screen/pai/pda_msg_send + name = "PDA - Send Message" + icon_state = "pda_send" + required_software = "digital messenger" + +/obj/screen/pai/pda_msg_send/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.cmd_send_pdamesg(usr) + +/obj/screen/pai/pda_msg_show + name = "PDA - Show Message Log" + icon_state = "pda_receive" + required_software = "digital messenger" + +/obj/screen/pai/pda_msg_show/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.cmd_show_message_log(usr) + +/obj/screen/pai/image_take + name = "Take Image" + icon_state = "take_picture" + required_software = "photography module" + +/obj/screen/pai/image_take/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.aicamera.toggle_camera_mode(usr) + +/obj/screen/pai/image_view + name = "View Images" + icon_state = "view_images" + required_software = "photography module" + +/obj/screen/pai/image_view/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.aicamera.viewpictures(usr) + +/obj/screen/pai/radio + name = "radio" + icon = 'icons/mob/screen_cyborg.dmi' + icon_state = "radio" + +/obj/screen/pai/radio/Click() + if(!..()) + return + var/mob/living/silicon/pai/pAI = usr + pAI.radio.interact(usr) + +/datum/hud/pai/New(mob/living/silicon/pai/owner) + ..() + var/obj/screen/using + +// Software menu + using = new /obj/screen/pai/software + using.screen_loc = ui_pai_software + static_inventory += using + +// Holoform + using = new /obj/screen/pai/shell + using.screen_loc = ui_pai_shell + static_inventory += using + +// Chassis Select Menu + using = new /obj/screen/pai/chassis + using.screen_loc = ui_pai_chassis + static_inventory += using + +// Rest + using = new /obj/screen/pai/rest + using.screen_loc = ui_pai_rest + static_inventory += using + +// Integrated Light + using = new /obj/screen/pai/light + using.screen_loc = ui_pai_light + static_inventory += using + +// Newscaster + using = new /obj/screen/pai/newscaster + using.screen_loc = ui_pai_newscaster + static_inventory += using + +// Language menu + using = new /obj/screen/language_menu + using.screen_loc = ui_borg_language_menu + static_inventory += using + +// Host Monitor + using = new /obj/screen/pai/host_monitor() + using.screen_loc = ui_pai_host_monitor + static_inventory += using + +// Crew Manifest + using = new /obj/screen/pai/crew_manifest() + using.screen_loc = ui_pai_crew_manifest + static_inventory += using + +// Laws + using = new /obj/screen/pai/state_laws() + using.screen_loc = ui_pai_state_laws + static_inventory += using + +// PDA message + using = new /obj/screen/pai/pda_msg_send() + using.screen_loc = ui_pai_pda_send + static_inventory += using + +// PDA log + using = new /obj/screen/pai/pda_msg_show() + using.screen_loc = ui_pai_pda_log + static_inventory += using + +// Take image + using = new /obj/screen/pai/image_take() + using.screen_loc = ui_pai_take_picture + static_inventory += using + +// View images + using = new /obj/screen/pai/image_view() + using.screen_loc = ui_pai_view_images + static_inventory += using + +// Radio + using = new /obj/screen/pai/radio() + using.screen_loc = ui_borg_radio + static_inventory += using + + update_software_buttons() + +/datum/hud/pai/proc/update_software_buttons() + var/mob/living/silicon/pai/owner = mymob + for(var/obj/screen/pai/button in static_inventory) + if(button.required_software) + button.color = owner.software.Find(button.required_software) ? null : "#808080" + +#undef PAI_MISSING_SOFTWARE_MESSAGE diff --git a/code/_onclick/hud/radial.dm b/code/_onclick/hud/radial.dm index c6c9949431b..588af8e41a0 100644 --- a/code/_onclick/hud/radial.dm +++ b/code/_onclick/hud/radial.dm @@ -213,7 +213,6 @@ GLOBAL_LIST_EMPTY(radial_menus) choices_icons.Cut() choices_values.Cut() current_page = 1 - QDEL_NULL(custom_check_callback) /datum/radial_menu/proc/element_chosen(choice_id,mob/user) selected_choice = choices_values[choice_id] @@ -278,7 +277,9 @@ GLOBAL_LIST_EMPTY(radial_menus) /datum/radial_menu/Destroy() Reset() hide() + QDEL_NULL(custom_check_callback) . = ..() + /* Presents radial menu to user anchored to anchor (or user if the anchor is currently in users screen) Choices should be a list where list keys are movables or text used for element names and return value @@ -307,4 +308,4 @@ GLOBAL_LIST_EMPTY(radial_menus) var/answer = menu.selected_choice qdel(menu) GLOB.radial_menus -= uniqueid - return answer \ No newline at end of file + return answer diff --git a/code/_onclick/hud/radial_persistent.dm b/code/_onclick/hud/radial_persistent.dm new file mode 100644 index 00000000000..0b5e8dc3561 --- /dev/null +++ b/code/_onclick/hud/radial_persistent.dm @@ -0,0 +1,76 @@ +/* + A derivative of radial menu which persists onscreen until closed and invokes a callback each time an element is clicked +*/ + +/obj/screen/radial/persistent/center + name = "Close Menu" + icon_state = "radial_center" + +/obj/screen/radial/persistent/center/Click(location, control, params) + if(usr.client == parent.current_user) + parent.element_chosen(null,usr) + +/obj/screen/radial/persistent/center/MouseEntered(location, control, params) + . = ..() + icon_state = "radial_center_focus" + +/obj/screen/radial/persistent/center/MouseExited(location, control, params) + . = ..() + icon_state = "radial_center" + + + +/datum/radial_menu/persistent + var/uniqueid + var/datum/callback/select_proc_callback + +/datum/radial_menu/persistent/New() + close_button = new /obj/screen/radial/persistent/center + close_button.parent = src + + +/datum/radial_menu/persistent/element_chosen(choice_id,mob/user) + select_proc_callback.Invoke(choices_values[choice_id]) + + +/datum/radial_menu/persistent/proc/change_choices(list/newchoices, tooltips) + if(!newchoices.len) + return + Reset() + set_choices(newchoices,tooltips) + +/datum/radial_menu/persistent/Destroy() + QDEL_NULL(select_proc_callback) + GLOB.radial_menus -= uniqueid + Reset() + hide() + . = ..() + +/* + Creates a persistent radial menu and shows it to the user, anchored to anchor (or user if the anchor is currently in users screen). + Choices should be a list where list keys are movables or text used for element names and return value + and list values are movables/icons/images used for element icons + Select_proc is the proc to be called each time an element on the menu is clicked, and should accept the chosen element as its final argument + Clicking the center button will return a choice of null +*/ +/proc/show_radial_menu_persistent(mob/user, atom/anchor, list/choices, datum/callback/select_proc, uniqueid, radius, tooltips = FALSE) + if(!user || !anchor || !length(choices) || !select_proc) + return + if(!uniqueid) + uniqueid = "defmenu_[REF(user)]_[REF(anchor)]" + + if(GLOB.radial_menus[uniqueid]) + return + + var/datum/radial_menu/persistent/menu = new + menu.uniqueid = uniqueid + GLOB.radial_menus[uniqueid] = menu + if(radius) + menu.radius = radius + menu.select_proc_callback = select_proc + menu.anchor = anchor + menu.check_screen_border(user) //Do what's needed to make it look good near borders or on hud + menu.set_choices(choices, tooltips) + menu.show_to(user) + return menu + diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 05fc38ca1f6..5350500e79c 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -60,7 +60,7 @@ if(item_flags & NOBLUDGEON) return - if(force && user.has_trait(TRAIT_PACIFISM)) + if(force && HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm other living beings!") return diff --git a/code/_onclick/observer.dm b/code/_onclick/observer.dm index 299d7f64f8b..4d5914c970a 100644 --- a/code/_onclick/observer.dm +++ b/code/_onclick/observer.dm @@ -48,7 +48,9 @@ if(SEND_SIGNAL(src, COMSIG_ATOM_ATTACK_GHOST, user) & COMPONENT_NO_ATTACK_HAND) return TRUE if(user.client) - if(IsAdminGhost(user)) + if(user.gas_scan && atmosanalyzer_scan(user, src)) + return TRUE + else if(IsAdminGhost(user)) attack_ai(user) else if(user.client.prefs.inquisitive_ghost) user.examinate(src) diff --git a/code/_onclick/pai.dm b/code/_onclick/pai.dm new file mode 100644 index 00000000000..06c1d9dfdfe --- /dev/null +++ b/code/_onclick/pai.dm @@ -0,0 +1,6 @@ +/mob/living/silicon/pai/ClickOn(var/atom/A, params) + ..() + if(aicamera.in_camera_mode) //pAI picture taking + aicamera.camera_mode_off() + aicamera.captureimage(A, usr, null, aicamera.picture_size_x, aicamera.picture_size_y) + return diff --git a/code/controllers/configuration/configuration.dm b/code/controllers/configuration/configuration.dm index cb3b4b86072..5e3bf6c6eaf 100644 --- a/code/controllers/configuration/configuration.dm +++ b/code/controllers/configuration/configuration.dm @@ -34,7 +34,7 @@ if(_directory) directory = _directory if(entries) - CRASH("[THIS_PROC_TYPE_WEIRD] called more than once!") + CRASH("/datum/controller/configuration/Load() called more than once!") InitEntries() LoadModes() if(fexists("[directory]/config.txt") && LoadEntries("config.txt") <= 1) diff --git a/code/controllers/configuration/entries/game_options.dm b/code/controllers/configuration/entries/game_options.dm index f6781bbbe18..c32348cdf8e 100644 --- a/code/controllers/configuration/entries/game_options.dm +++ b/code/controllers/configuration/entries/game_options.dm @@ -272,6 +272,8 @@ movedelay_type = /mob/living/simple_animal ///////////////////////////////////////////////// +/datum/config_entry/flag/virtual_reality //Will virtual reality be loaded + /datum/config_entry/flag/roundstart_away //Will random away mission be loaded. /datum/config_entry/number/gateway_delay //How long the gateway takes before it activates. Default is half an hour. Only matters if roundstart_away is enabled. diff --git a/code/controllers/configuration/entries/general.dm b/code/controllers/configuration/entries/general.dm index e639485bbbc..4bcd6466784 100644 --- a/code/controllers/configuration/entries/general.dm +++ b/code/controllers/configuration/entries/general.dm @@ -5,6 +5,22 @@ config_entry_value = "Game Master" protection = CONFIG_ENTRY_LOCKED +/datum/config_entry/flag/auto_deadmin_players + protection = CONFIG_ENTRY_LOCKED + +/datum/config_entry/flag/auto_deadmin_antagonists + protection = CONFIG_ENTRY_LOCKED + +/datum/config_entry/flag/auto_deadmin_heads + protection = CONFIG_ENTRY_LOCKED + +/datum/config_entry/flag/auto_deadmin_silicons + protection = CONFIG_ENTRY_LOCKED + +/datum/config_entry/flag/auto_deadmin_security + protection = CONFIG_ENTRY_LOCKED + + /datum/config_entry/string/servername // server name (the name of the game window) /datum/config_entry/string/serversqlname // short form server name used for the DB @@ -40,6 +56,10 @@ /datum/config_entry/flag/log_mecha // log mech data +/datum/config_entry/flag/log_virus // log virology data + +/datum/config_entry/flag/log_cloning // log cloning actions. + /datum/config_entry/flag/log_vote // log voting /datum/config_entry/flag/log_whisper // log client whisper @@ -287,8 +307,13 @@ /datum/config_entry/string/extreme_popcap_message config_entry_value = "The server is currently serving a high number of users, find alternative servers." +/datum/config_entry/flag/byond_member_bypass_popcap + /datum/config_entry/flag/panic_bunker // prevents people the server hasn't seen before from connecting +/datum/config_entry/string/panic_bunker_message + config_entry_value = "Sorry but the server is currently not accepting connections from never before seen players." + /datum/config_entry/number/notify_new_player_age // how long do we notify admins of a new player min_val = -1 diff --git a/code/controllers/subsystem.dm b/code/controllers/subsystem.dm index 4fe0812c56e..24390c59235 100644 --- a/code/controllers/subsystem.dm +++ b/code/controllers/subsystem.dm @@ -63,7 +63,7 @@ //Sleeping in here prevents future fires until returned. /datum/controller/subsystem/proc/fire(resumed = 0) flags |= SS_NO_FIRE - throw EXCEPTION("Subsystem [src]([type]) does not fire() but did not set the SS_NO_FIRE flag. Please add the SS_NO_FIRE flag to any subsystem that doesn't fire so it doesn't get added to the processing list and waste cpu.") + CRASH("Subsystem [src]([type]) does not fire() but did not set the SS_NO_FIRE flag. Please add the SS_NO_FIRE flag to any subsystem that doesn't fire so it doesn't get added to the processing list and waste cpu.") /datum/controller/subsystem/Destroy() dequeue() @@ -215,3 +215,4 @@ if ("queued_priority") //editing this breaks things. return 0 . = ..() + diff --git a/code/controllers/subsystem/adjacent_air.dm b/code/controllers/subsystem/adjacent_air.dm new file mode 100644 index 00000000000..4254bfb83d8 --- /dev/null +++ b/code/controllers/subsystem/adjacent_air.dm @@ -0,0 +1,35 @@ +SUBSYSTEM_DEF(adjacent_air) + name = "Atmos Adjacency" + flags = SS_BACKGROUND + runlevels = RUNLEVEL_GAME | RUNLEVEL_POSTGAME + wait = 10 + priority = FIRE_PRIORITY_ATMOS_ADJACENCY + var/list/queue = list() + +/datum/controller/subsystem/adjacent_air/stat_entry() +#ifdef TESTING + ..("P:[length(queue)], S:[GLOB.atmos_adjacent_savings[1]], T:[GLOB.atmos_adjacent_savings[2]]") +#else + ..("P:[length(queue)]") +#endif + +/datum/controller/subsystem/adjacent_air/Initialize() + while(length(queue)) + fire(mc_check = FALSE) + return ..() + +/datum/controller/subsystem/adjacent_air/fire(resumed = FALSE, mc_check = TRUE) + + var/list/queue = src.queue + + while (length(queue)) + var/turf/currT = queue[1] + queue.Cut(1,2) + + currT.ImmediateCalculateAdjacentTurfs() + + if(mc_check) + if(MC_TICK_CHECK) + break + else + CHECK_TICK diff --git a/code/controllers/subsystem/air.dm b/code/controllers/subsystem/air.dm index 2a1c34e1d63..c4b6db03c03 100644 --- a/code/controllers/subsystem/air.dm +++ b/code/controllers/subsystem/air.dm @@ -303,7 +303,7 @@ SUBSYSTEM_DEF(air) var/starting_ats = active_turfs.len sleep(world.tick_lag) var/timer = world.timeofday - warning("There are [starting_ats] active turfs at roundstart, this is a mapping error caused by a difference of the air between the adjacent turfs. You can see its coordinates using \"Mapping -> Show roundstart AT list\" verb (debug verbs required)") + log_mapping("There are [starting_ats] active turfs at roundstart caused by a difference of the air between the adjacent turfs. You can see its coordinates using \"Mapping -> Show roundstart AT list\" verb (debug verbs required).") for(var/turf/T in active_turfs) GLOB.active_turfs_startlist += T diff --git a/code/controllers/subsystem/atoms.dm b/code/controllers/subsystem/atoms.dm index 38a18112508..eb3e65b54da 100644 --- a/code/controllers/subsystem/atoms.dm +++ b/code/controllers/subsystem/atoms.dm @@ -114,9 +114,10 @@ SUBSYSTEM_DEF(atoms) for(var/i in 1 to LAZYLEN(mutations)) var/path = mutations[i] //byond gets pissy when we do it in one line var/datum/mutation/human/B = new path () - B.alias = "Mutation #[i]" + B.alias = "Mutation [i]" GLOB.all_mutations[B.type] = B GLOB.full_sequences[B.type] = generate_gene_sequence(B.blocks) + GLOB.alias_mutations[B.alias] = B.type if(B.locked) continue if(B.quality == POSITIVE) diff --git a/code/controllers/subsystem/blackbox.dm b/code/controllers/subsystem/blackbox.dm index 32f9ad1c9c5..728308e286d 100644 --- a/code/controllers/subsystem/blackbox.dm +++ b/code/controllers/subsystem/blackbox.dm @@ -21,6 +21,7 @@ SUBSYSTEM_DEF(blackbox) triggertime = world.time record_feedback("amount", "random_seed", Master.random_seed) record_feedback("amount", "dm_version", DM_VERSION) + record_feedback("amount", "dm_build", DM_BUILD) record_feedback("amount", "byond_version", world.byond_version) record_feedback("amount", "byond_build", world.byond_build) . = ..() diff --git a/code/controllers/subsystem/dbcore.dm b/code/controllers/subsystem/dbcore.dm index efd06a9d376..ccbe8dc61ca 100644 --- a/code/controllers/subsystem/dbcore.dm +++ b/code/controllers/subsystem/dbcore.dm @@ -177,6 +177,27 @@ SUBSYSTEM_DEF(dbcore) return FALSE return new /datum/DBQuery(sql_query, connection) +/datum/controller/subsystem/dbcore/proc/QuerySelect(list/querys, warn = FALSE, qdel = FALSE) + if (!islist(querys)) + if (!istype(querys, /datum/DBQuery)) + CRASH("Invalid query passed to QuerySelect: [querys]") + querys = list(querys) + + for (var/thing in querys) + var/datum/DBQuery/query = thing + if (warn) + INVOKE_ASYNC(query, /datum/DBQuery.proc/warn_execute) + else + INVOKE_ASYNC(query, /datum/DBQuery.proc/Execute) + + for (var/thing in querys) + var/datum/DBQuery/query = thing + UNTIL(!query.in_progress) + if (qdel) + qdel(query) + + + /* Takes a list of rows (each row being an associated list of column => value) and inserts them via a single mass query. Rows missing columns present in other rows will resolve to SQL NULL diff --git a/code/controllers/subsystem/economy.dm b/code/controllers/subsystem/economy.dm index 3773fad3c02..e332384528e 100644 --- a/code/controllers/subsystem/economy.dm +++ b/code/controllers/subsystem/economy.dm @@ -15,7 +15,6 @@ SUBSYSTEM_DEF(economy) var/list/generated_accounts = list() var/full_ancap = FALSE // Enables extra money charges for things that normally would be free, such as sleepers/cryo/cloning. //Take care when enabling, as players will NOT respond well if the economy is set up for low cash flows. - var/datum/station_state/engineering_check = new /datum/station_state() var/alive_humans_bounty = 100 var/crew_safety_bounty = 1500 var/monster_bounty = 150 @@ -46,7 +45,7 @@ SUBSYSTEM_DEF(economy) "adamantine" = 750, // tier 4 "rainbow" = 1000) - var/list/bank_accounts = list() + var/list/bank_accounts = list() //List of normal accounts (not department accounts) var/list/dep_cards = list() /datum/controller/subsystem/economy/Initialize(timeofday) @@ -56,7 +55,7 @@ SUBSYSTEM_DEF(economy) return ..() /datum/controller/subsystem/economy/fire(resumed = 0) - boring_eng_payout() // Payout based on integrity. + boring_eng_payout() // Payout based on nothing. What will replace it? Surplus power, powered APC's, air alarms? Who knows. boring_sci_payout() // Payout based on slimes. boring_secmedsrv_payout() // Payout based on crew safety, health, and mood. boring_civ_payout() // Payout based on ??? Profit @@ -72,10 +71,6 @@ SUBSYSTEM_DEF(economy) /datum/controller/subsystem/economy/proc/boring_eng_payout() var/engineering_cash = 3000 - engineering_check.count() - var/station_integrity = min(PERCENT(GLOB.start_state.score(engineering_check)), 100) - station_integrity *= 0.01 - engineering_cash *= station_integrity var/datum/bank_account/D = get_dep_account(ACCOUNT_ENG) if(D) D.adjust_money(engineering_cash) @@ -132,4 +127,4 @@ SUBSYSTEM_DEF(economy) /datum/controller/subsystem/economy/proc/boring_civ_payout() var/datum/bank_account/D = get_dep_account(ACCOUNT_CIV) if(D) - D.adjust_money((rand(1,5) * 500)) \ No newline at end of file + D.adjust_money((rand(1,5) * 500)) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index e56bf79e797..a6297c4bec4 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -116,7 +116,7 @@ SUBSYSTEM_DEF(job) if(player.mind && job.title in player.mind.restricted_roles) JobDebug("FOC incompatible with antagonist role, Player: [player]") continue - if(player.client.prefs.GetJobDepartment(job, level) & job.flag) + if(player.client.prefs.job_preferences[job.title] == level) JobDebug("FOC pass, Player: [player], Level:[level]") candidates += player return candidates @@ -228,7 +228,7 @@ SUBSYSTEM_DEF(job) * fills var "assigned_role" for all ready players. * This proc must not have any side effect besides of modifying "assigned_role". **/ -/datum/controller/subsystem/job/proc/DivideOccupations() +/datum/controller/subsystem/job/proc/DivideOccupations(list/required_jobs) //Setup new player list and get the jobs list JobDebug("Running DO") @@ -241,14 +241,14 @@ SUBSYSTEM_DEF(job) //Get the players who are ready for(var/mob/dead/new_player/player in GLOB.player_list) - if(player.ready == PLAYER_READY_TO_PLAY && player.mind && !player.mind.assigned_role) + if(player.ready == PLAYER_READY_TO_PLAY && player.has_valid_preferences() && player.mind && !player.mind.assigned_role) unassigned += player initial_players_to_assign = unassigned.len JobDebug("DO, Len: [unassigned.len]") if(unassigned.len == 0) - return 0 + return validate_required_jobs(required_jobs) //Scale number of open security officer slots to population setup_officer_positions() @@ -297,7 +297,8 @@ SUBSYSTEM_DEF(job) // Loop through all levels from high to low var/list/shuffledoccupations = shuffle(occupations) - for(var/level = 1 to 3) + var/list/levels = list(JP_HIGH,JP_MEDIUM,JP_LOW) + for(var/level in levels) //Check the head jobs first each level CheckHeadPositions(level) @@ -332,7 +333,7 @@ SUBSYSTEM_DEF(job) continue // If the player wants that job on this level, then try give it to him. - if(player.client.prefs.GetJobDepartment(job, level) & job.flag) + if(player.client.prefs.job_preferences[job.title] == level) // If the job isn't filled if((job.current_positions < job.spawn_positions) || job.spawn_positions == -1) JobDebug("DO pass, Player: [player], Level:[level], Job:[job.title]") @@ -351,9 +352,28 @@ SUBSYSTEM_DEF(job) //Mop up people who can't leave. for(var/mob/dead/new_player/player in unassigned) //Players that wanted to back out but couldn't because they're antags (can you feel the edge case?) if(!GiveRandomJob(player)) - AssignRole(player, SSjob.overflow_role) //If everything is already filled, make them an assistant + if(!AssignRole(player, SSjob.overflow_role)) //If everything is already filled, make them an assistant + return FALSE //Living on the edge, the forced antagonist couldn't be assigned to overflow role (bans, client age) - just reroll + + return validate_required_jobs(required_jobs) - return 1 +/datum/controller/subsystem/job/proc/validate_required_jobs(list/required_jobs) + if(!required_jobs.len) + return TRUE + for(var/required_group in required_jobs) + var/group_ok = TRUE + for(var/rank in required_group) + var/datum/job/J = GetJob(rank) + if(!J) + SSticker.mode.setup_error = "Invalid job [rank] in gamemode required jobs." + return FALSE + if(J.current_positions < required_group[rank]) + group_ok = FALSE + break + if(group_ok) + return TRUE + SSticker.mode.setup_error = "Required jobs not present." + return FALSE //We couldn't find a job from prefs for this guy. /datum/controller/subsystem/job/proc/HandleUnassigned(mob/dead/new_player/player) @@ -406,7 +426,7 @@ SUBSYSTEM_DEF(job) if(length(GLOB.jobspawn_overrides[rank])) S = pick(GLOB.jobspawn_overrides[rank]) if(S) - SendToAtom(H, S, buckle = FALSE) + S.JoinPlayerHere(H, FALSE) if(!S) //if there isn't a spawnpoint send them to latejoin, if there's no latejoin go yell at your mapper log_world("Couldn't find a round start spawn point for [rank]") SendToLateJoin(H) @@ -426,6 +446,12 @@ SUBSYSTEM_DEF(job) SSpersistence.antag_rep_change[M.client.ckey] += job.GetAntagRep() + if(M.client.holder) + if(CONFIG_GET(flag/auto_deadmin_players) || (M.client.prefs?.toggles & DEADMIN_ALWAYS)) + M.client.holder.auto_deadmin() + else + handle_auto_deadmin_roles(M.client, rank) + to_chat(M, "You are the [rank].") if(job) to_chat(M, "As the [rank] you answer directly to [job.supervisors]. Special circumstances may change this.") @@ -433,21 +459,32 @@ SUBSYSTEM_DEF(job) if(job.req_admin_notify) to_chat(M, "You are playing a job that is important for Game Progression. If you have to disconnect, please notify the admins via adminhelp.") if(CONFIG_GET(number/minimal_access_threshold)) - to_chat(M, "As this station was initially staffed with a [CONFIG_GET(flag/jobs_have_minimal_access) ? "full crew, only your job's necessities" : "skeleton crew, additional access may"] have been added to your ID card.") + to_chat(M, "As this station was initially staffed with a [CONFIG_GET(flag/jobs_have_minimal_access) ? "full crew, only your job's necessities" : "skeleton crew, additional access may"] have been added to your ID card.") if(ishuman(H)) var/mob/living/carbon/human/wageslave = H - to_chat(M, "Your account ID is [wageslave.account_id].") H.add_memory("Your account ID is [wageslave.account_id].") if(job && H) job.after_spawn(H, M, joined_late) // note: this happens before the mob has a key! M will always have a client, H might not. return H +/datum/controller/subsystem/job/proc/handle_auto_deadmin_roles(client/C, rank) + if(!C?.holder) + return TRUE + var/datum/job/job = GetJob(rank) + if(!job) + return + if((job.auto_deadmin_role_flags & DEADMIN_POSITION_HEAD) && (CONFIG_GET(flag/auto_deadmin_heads) || (C.prefs?.toggles & DEADMIN_POSITION_HEAD))) + return C.holder.auto_deadmin() + else if((job.auto_deadmin_role_flags & DEADMIN_POSITION_SECURITY) && (CONFIG_GET(flag/auto_deadmin_security) || (C.prefs?.toggles & DEADMIN_POSITION_SECURITY))) + return C.holder.auto_deadmin() + else if((job.auto_deadmin_role_flags & DEADMIN_POSITION_SILICON) && (CONFIG_GET(flag/auto_deadmin_silicons) || (C.prefs?.toggles & DEADMIN_POSITION_SILICON))) //in the event there's ever psuedo-silicon roles added, ie synths. + return C.holder.auto_deadmin() /datum/controller/subsystem/job/proc/setup_officer_positions() var/datum/job/J = SSjob.GetJob("Security Officer") if(!J) - throw EXCEPTION("setup_officer_positions(): Security officer job is missing") + CRASH("setup_officer_positions(): Security officer job is missing") var/ssc = CONFIG_GET(number/security_scaling_coeff) if(ssc > 0) @@ -498,13 +535,15 @@ SUBSYSTEM_DEF(job) if(job.required_playtime_remaining(player.client)) young++ continue - if(player.client.prefs.GetJobDepartment(job, 1) & job.flag) - high++ - else if(player.client.prefs.GetJobDepartment(job, 2) & job.flag) - medium++ - else if(player.client.prefs.GetJobDepartment(job, 3) & job.flag) - low++ - else never++ //not selected + switch(player.client.prefs.job_preferences[job.title]) + if(JP_HIGH) + high++ + if(JP_MEDIUM) + medium++ + if(JP_LOW) + low++ + else + never++ SSblackbox.record_feedback("nested tally", "job_preferences", high, list("[job.title]", "high")) SSblackbox.record_feedback("nested tally", "job_preferences", medium, list("[job.title]", "medium")) SSblackbox.record_feedback("nested tally", "job_preferences", low, list("[job.title]", "low")) @@ -547,51 +586,61 @@ SUBSYSTEM_DEF(job) newjob.spawn_positions = J.spawn_positions newjob.current_positions = J.current_positions -/datum/controller/subsystem/job/proc/SendToAtom(mob/M, atom/A, buckle) - if(buckle && isliving(M) && istype(A, /obj/structure/chair)) - var/obj/structure/chair/C = A - if(C.buckle_mob(M, FALSE, FALSE)) - return - M.forceMove(get_turf(A)) +/atom/proc/JoinPlayerHere(mob/M, buckle) + // By default, just place the mob on the same turf as the marker or whatever. + M.forceMove(get_turf(src)) + +/obj/structure/chair/JoinPlayerHere(mob/M, buckle) + // Placing a mob in a chair will attempt to buckle it, or else fall back to default. + if (buckle && isliving(M) && buckle_mob(M, FALSE, FALSE)) + return + ..() /datum/controller/subsystem/job/proc/SendToLateJoin(mob/M, buckle = TRUE) + var/atom/destination if(M.mind && M.mind.assigned_role && length(GLOB.jobspawn_overrides[M.mind.assigned_role])) //We're doing something special today. - SendToAtom(M,pick(GLOB.jobspawn_overrides[M.mind.assigned_role]),FALSE) + destination = pick(GLOB.jobspawn_overrides[M.mind.assigned_role]) + destination.JoinPlayerHere(M, FALSE) return if(latejoin_trackers.len) - SendToAtom(M, pick(latejoin_trackers), buckle) - else - //bad mojo - var/area/shuttle/arrival/A = GLOB.areas_by_type[/area/shuttle/arrival] - if(A) - //first check if we can find a chair - var/obj/structure/chair/C = locate() in A - if(C) - SendToAtom(M, C, buckle) - return - else //last hurrah - var/list/avail = list() - for(var/turf/T in A) - if(!is_blocked_turf(T, TRUE)) - avail += T - if(avail.len) - SendToAtom(M, pick(avail), FALSE) - return + destination = pick(latejoin_trackers) + destination.JoinPlayerHere(M, buckle) + return - //pick an open spot on arrivals and dump em - var/list/arrivals_turfs = shuffle(get_area_turfs(/area/shuttle/arrival)) - if(arrivals_turfs.len) - for(var/turf/T in arrivals_turfs) - if(!is_blocked_turf(T, TRUE)) - SendToAtom(M, T, FALSE) - return - //last chance, pick ANY spot on arrivals and dump em - SendToAtom(M, arrivals_turfs[1], FALSE) - else - var/msg = "Unable to send mob [M] to late join!" - message_admins(msg) - CRASH(msg) + //bad mojo + var/area/shuttle/arrival/A = GLOB.areas_by_type[/area/shuttle/arrival] + if(A) + //first check if we can find a chair + var/obj/structure/chair/C = locate() in A + if(C) + C.JoinPlayerHere(M, buckle) + return + + //last hurrah + var/list/avail = list() + for(var/turf/T in A) + if(!is_blocked_turf(T, TRUE)) + avail += T + if(avail.len) + destination = pick(avail) + destination.JoinPlayerHere(M, FALSE) + return + + //pick an open spot on arrivals and dump em + var/list/arrivals_turfs = shuffle(get_area_turfs(/area/shuttle/arrival)) + if(arrivals_turfs.len) + for(var/turf/T in arrivals_turfs) + if(!is_blocked_turf(T, TRUE)) + T.JoinPlayerHere(M, FALSE) + return + //last chance, pick ANY spot on arrivals and dump em + destination = arrivals_turfs[1] + destination.JoinPlayerHere(M, FALSE) + else + var/msg = "Unable to send mob [M] to late join!" + message_admins(msg) + CRASH(msg) /////////////////////////////////// diff --git a/code/controllers/subsystem/lighting.dm b/code/controllers/subsystem/lighting.dm index 12b467b624c..3383db4e579 100644 --- a/code/controllers/subsystem/lighting.dm +++ b/code/controllers/subsystem/lighting.dm @@ -1,15 +1,14 @@ -GLOBAL_LIST_EMPTY(lighting_update_lights) // List of lighting sources queued for update. -GLOBAL_LIST_EMPTY(lighting_update_corners) // List of lighting corners queued for update. -GLOBAL_LIST_EMPTY(lighting_update_objects) // List of lighting objects queued for update. - SUBSYSTEM_DEF(lighting) name = "Lighting" wait = 2 init_order = INIT_ORDER_LIGHTING flags = SS_TICKER + var/static/list/sources_queue = list() // List of lighting sources queued for update. + var/static/list/corners_queue = list() // List of lighting corners queued for update. + var/static/list/objects_queue = list() // List of lighting objects queued for update. /datum/controller/subsystem/lighting/stat_entry() - ..("L:[GLOB.lighting_update_lights.len]|C:[GLOB.lighting_update_corners.len]|O:[GLOB.lighting_update_objects.len]") + ..("L:[length(sources_queue)]|C:[length(corners_queue)]|O:[length(objects_queue)]") /datum/controller/subsystem/lighting/Initialize(timeofday) @@ -31,9 +30,10 @@ SUBSYSTEM_DEF(lighting) MC_SPLIT_TICK_INIT(3) if(!init_tick_checks) MC_SPLIT_TICK + var/list/queue = sources_queue var/i = 0 - for (i in 1 to GLOB.lighting_update_lights.len) - var/datum/light_source/L = GLOB.lighting_update_lights[i] + for (i in 1 to length(queue)) + var/datum/light_source/L = queue[i] L.update_corners() @@ -44,14 +44,15 @@ SUBSYSTEM_DEF(lighting) else if (MC_TICK_CHECK) break if (i) - GLOB.lighting_update_lights.Cut(1, i+1) + queue.Cut(1, i+1) i = 0 if(!init_tick_checks) MC_SPLIT_TICK - for (i in 1 to GLOB.lighting_update_corners.len) - var/datum/lighting_corner/C = GLOB.lighting_update_corners[i] + queue = corners_queue + for (i in 1 to length(queue)) + var/datum/lighting_corner/C = queue[i] C.update_objects() C.needs_update = FALSE @@ -60,15 +61,16 @@ SUBSYSTEM_DEF(lighting) else if (MC_TICK_CHECK) break if (i) - GLOB.lighting_update_corners.Cut(1, i+1) + queue.Cut(1, i+1) i = 0 if(!init_tick_checks) MC_SPLIT_TICK - for (i in 1 to GLOB.lighting_update_objects.len) - var/atom/movable/lighting_object/O = GLOB.lighting_update_objects[i] + queue = objects_queue + for (i in 1 to length(queue)) + var/atom/movable/lighting_object/O = queue[i] if (QDELETED(O)) continue @@ -80,9 +82,9 @@ SUBSYSTEM_DEF(lighting) else if (MC_TICK_CHECK) break if (i) - GLOB.lighting_update_objects.Cut(1, i+1) + queue.Cut(1, i+1) /datum/controller/subsystem/lighting/Recover() initialized = SSlighting.initialized - ..() \ No newline at end of file + ..() diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index 7b4d3dc1f66..aa97b166557 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -74,6 +74,11 @@ SUBSYSTEM_DEF(mapping) if(CONFIG_GET(flag/roundstart_away)) createRandomZlevel() + // Load the virtual reality hub + if(CONFIG_GET(flag/virtual_reality)) + to_chat(world, "Loading virtual reality...") + load_new_z_level("_maps/RandomZLevels/VR/vrhub.dmm", "Virtual Reality Hub") + to_chat(world, "Virtual reality loaded.") // Generate mining ruins loading_ruins = TRUE @@ -257,10 +262,13 @@ GLOBAL_LIST_EMPTY(the_station_areas) /datum/controller/subsystem/mapping/proc/generate_station_area_list() var/list/station_areas_blacklist = typecacheof(list(/area/space, /area/mine, /area/ruin, /area/asteroid/nearstation)) for(var/area/A in world) - var/turf/picked = safepick(get_area_turfs(A.type)) - if(picked && is_station_level(picked.z)) - if(!(A.type in GLOB.the_station_areas) && !is_type_in_typecache(A, station_areas_blacklist)) - GLOB.the_station_areas.Add(A.type) + if (is_type_in_typecache(A, station_areas_blacklist)) + continue + if (!A.contents.len || !A.unique) + continue + var/turf/picked = A.contents[1] + if (is_station_level(picked.z)) + GLOB.the_station_areas += A.type if(!GLOB.the_station_areas.len) log_world("ERROR: Station areas list failed to generate!") diff --git a/code/controllers/subsystem/mobs.dm b/code/controllers/subsystem/mobs.dm index 56cdf2fa03e..8caf2a4623c 100644 --- a/code/controllers/subsystem/mobs.dm +++ b/code/controllers/subsystem/mobs.dm @@ -26,18 +26,16 @@ SUBSYSTEM_DEF(mobs) var/seconds = wait * 0.1 if (!resumed) src.currentrun = GLOB.mob_living_list.Copy() - if (GLOB.living_cameras.len) - src.currentrun += GLOB.living_cameras //cache for sanic speed (lists are references anyways) var/list/currentrun = src.currentrun var/times_fired = src.times_fired while(currentrun.len) - var/mob/M = currentrun[currentrun.len] + var/mob/living/L = currentrun[currentrun.len] currentrun.len-- - if(M) - M.Life(seconds, times_fired) + if(L) + L.Life(seconds, times_fired) else - GLOB.mob_living_list.Remove(M) + GLOB.mob_living_list.Remove(L) if (MC_TICK_CHECK) return diff --git a/code/controllers/subsystem/processing/quirks.dm b/code/controllers/subsystem/processing/quirks.dm index 3ddca57b341..bf003d0d470 100644 --- a/code/controllers/subsystem/processing/quirks.dm +++ b/code/controllers/subsystem/processing/quirks.dm @@ -30,11 +30,9 @@ PROCESSING_SUBSYSTEM_DEF(quirks) quirk_points[initial(T.name)] = initial(T.value) /datum/controller/subsystem/processing/quirks/proc/AssignQuirks(mob/living/user, client/cli, spawn_effects) - GenerateQuirks(cli) - for(var/V in cli.prefs.character_quirks) - user.add_quirk(V, spawn_effects) - -/datum/controller/subsystem/processing/quirks/proc/GenerateQuirks(client/user) - if(user.prefs.character_quirks.len) - return - user.prefs.character_quirks = user.prefs.all_quirks + for(var/V in cli.prefs.all_quirks) + var/datum/quirk/Q = quirks[V] + if(Q) + user.add_quirk(Q, spawn_effects) + else + stack_trace("Invalid quirk \"[V]\" in client [cli.ckey] preferences") diff --git a/code/controllers/subsystem/server_maint.dm b/code/controllers/subsystem/server_maint.dm index 8f88e6202f5..958c250c96c 100644 --- a/code/controllers/subsystem/server_maint.dm +++ b/code/controllers/subsystem/server_maint.dm @@ -9,6 +9,9 @@ SUBSYSTEM_DEF(server_maint) runlevels = RUNLEVEL_LOBBY | RUNLEVELS_DEFAULT var/list/currentrun +/datum/controller/subsystem/server_maint/PreInit() + world.hub_password = "" //quickly! before the hubbies see us. + /datum/controller/subsystem/server_maint/Initialize(timeofday) if (CONFIG_GET(flag/hub)) world.update_hub_visibility(TRUE) @@ -30,12 +33,13 @@ SUBSYSTEM_DEF(server_maint) for(var/I in currentrun) var/client/C = I //handle kicking inactive players - if(round_started && kick_inactive && C.is_afk(afk_period)) + if(round_started && kick_inactive && !C.holder && C.is_afk(afk_period)) var/cmob = C.mob - if(!(isobserver(cmob) || (isdead(cmob) && C.holder))) + if (!isnewplayer(cmob) || !SSticker.queued_players.Find(cmob)) log_access("AFK: [key_name(C)]") - to_chat(C, "You have been inactive for more than [DisplayTimeText(afk_period)] and have been disconnected.") - qdel(C) + to_chat(C, "You have been inactive for more than [DisplayTimeText(afk_period)] and have been disconnected.
clicking here to reconnect") + QDEL_IN(C, 1) //to ensure they get our message before getting disconnected + continue if (!(!C || world.time - C.connection_time < PING_BUFFER_TIME || C.inactivity >= (wait-1))) winset(C, null, "command=.update_ping+[world.time+world.tick_lag*TICK_USAGE_REAL/100]") diff --git a/code/controllers/subsystem/shuttle.dm b/code/controllers/subsystem/shuttle.dm index c340dbe5b43..892103d291c 100644 --- a/code/controllers/subsystem/shuttle.dm +++ b/code/controllers/subsystem/shuttle.dm @@ -127,7 +127,7 @@ SUBSYSTEM_DEF(shuttle) var/threshold = CONFIG_GET(number/emergency_shuttle_autocall_threshold) if(!threshold) return - + var/alive = 0 for(var/I in GLOB.player_list) var/mob/M = I @@ -135,6 +135,8 @@ SUBSYSTEM_DEF(shuttle) ++alive var/total = GLOB.joined_player_list.len + if(total <= 0) + return //no players no autoevac if(alive / total <= threshold) var/msg = "Automatically dispatching shuttle due to crew death." @@ -169,7 +171,7 @@ SUBSYSTEM_DEF(shuttle) WARNING("requestEvac(): There is no emergency shuttle, but the \ shuttle was called. Using the backup shuttle instead.") if(!backup_shuttle) - throw EXCEPTION("requestEvac(): There is no emergency shuttle, \ + CRASH("requestEvac(): There is no emergency shuttle, \ or backup shuttle! The game will be unresolvable. This is \ possibly a mapping error, more likely a bug with the shuttle \ manipulation system, or badminry. It is possible to manually \ @@ -401,7 +403,7 @@ SUBSYSTEM_DEF(shuttle) /datum/controller/subsystem/shuttle/proc/request_transit_dock(obj/docking_port/mobile/M) if(!istype(M)) - throw EXCEPTION("[M] is not a mobile docking port") + CRASH("[M] is not a mobile docking port") if(M.assigned_transit) return diff --git a/code/controllers/subsystem/stickyban.dm b/code/controllers/subsystem/stickyban.dm index 189efa99fed..5568be58c7b 100644 --- a/code/controllers/subsystem/stickyban.dm +++ b/code/controllers/subsystem/stickyban.dm @@ -1,34 +1,207 @@ SUBSYSTEM_DEF(stickyban) - name = "Sticky Ban" + name = "PRISM" init_order = INIT_ORDER_STICKY_BAN flags = SS_NO_FIRE var/list/cache = list() + var/list/dbcache = list() + var/list/confirmed_exempt = list() + var/dbcacheexpire = 0 + /datum/controller/subsystem/stickyban/Initialize(timeofday) - var/list/bannedkeys = world.GetConfig("ban") + var/list/bannedkeys = sticky_banned_ckeys() //sanitize the sticky ban list + + //delete db bans that no longer exist in the database and add new legacy bans to the database + if (SSdbcore.Connect() || length(SSstickyban.dbcache)) + for (var/oldban in (world.GetConfig("ban") - bannedkeys)) + var/ckey = ckey(oldban) + if (ckey != oldban && (ckey in bannedkeys)) + continue + + var/list/ban = params2list(world.GetConfig("ban", oldban)) + if (ban && !ban["fromdb"]) + if (!import_raw_stickyban_to_db(ckey, ban)) + log_world("Could not import stickyban on [oldban] into the database. Ignoring") + continue + dbcacheexpire = 0 + bannedkeys += ckey + world.SetConfig("ban", oldban, null) + + for (var/bannedkey in bannedkeys) var/ckey = ckey(bannedkey) - var/list/ban = stickyban2list(world.GetConfig("ban", bannedkey)) + var/list/ban = get_stickyban_from_ckey(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) + //byond stores sticky bans by key, that's lame + if (ckey != bannedkey) + 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() + ban["pending_matches_this_round"] = list() + cache[ckey] = ban - - for (var/bannedckey in cache) - world.SetConfig("ban", bannedckey, list2stickyban(cache[bannedckey])) + world.SetConfig("ban", ckey, list2stickyban(ban)) return ..() + +/datum/controller/subsystem/stickyban/proc/Populatedbcache() + var/newdbcache = list() //so if we runtime or the db connection dies we don't kill the existing cache + + var/datum/DBQuery/query_stickybans = SSdbcore.NewQuery("SELECT ckey, reason, banning_admin, datetime FROM [format_table_name("stickyban")] ORDER BY ckey") + var/datum/DBQuery/query_ckey_matches = SSdbcore.NewQuery("SELECT stickyban, matched_ckey, first_matched, last_matched, exempt FROM [format_table_name("stickyban_matched_ckey")] ORDER BY first_matched") + var/datum/DBQuery/query_cid_matches = SSdbcore.NewQuery("SELECT stickyban, matched_cid, first_matched, last_matched FROM [format_table_name("stickyban_matched_cid")] ORDER BY first_matched") + var/datum/DBQuery/query_ip_matches = SSdbcore.NewQuery("SELECT stickyban, INET_NTOA(matched_ip), first_matched, last_matched FROM [format_table_name("stickyban_matched_ip")] ORDER BY first_matched") + + SSdbcore.QuerySelect(list(query_stickybans, query_ckey_matches, query_cid_matches, query_ip_matches)) + + if (query_stickybans.last_error) + qdel(query_stickybans) + qdel(query_ckey_matches) + qdel(query_cid_matches) + qdel(query_ip_matches) + return + + while (query_stickybans.NextRow()) + var/list/ban = list() + + ban["ckey"] = query_stickybans.item[1] + ban["message"] = query_stickybans.item[2] + ban["reason"] = "(InGameBan)([query_stickybans.item[3]])" + ban["admin"] = query_stickybans.item[3] + ban["datetime"] = query_stickybans.item[4] + ban["type"] = list("sticky") + + newdbcache["[query_stickybans.item[1]]"] = ban + + + if (!query_ckey_matches.last_error) + while (query_ckey_matches.NextRow()) + var/list/match = list() + + match["stickyban"] = query_ckey_matches.item[1] + match["matched_ckey"] = query_ckey_matches.item[2] + match["first_matched"] = query_ckey_matches.item[3] + match["last_matched"] = query_ckey_matches.item[4] + match["exempt"] = text2num(query_ckey_matches.item[5]) + + var/ban = newdbcache[query_ckey_matches.item[1]] + if (!ban) + continue + var/keys = ban[text2num(query_ckey_matches.item[5]) ? "whitelist" : "keys"] + if (!keys) + keys = ban[text2num(query_ckey_matches.item[5]) ? "whitelist" : "keys"] = list() + keys[query_ckey_matches.item[2]] = match + + if (!query_cid_matches.last_error) + while (query_cid_matches.NextRow()) + var/list/match = list() + + match["stickyban"] = query_cid_matches.item[1] + match["matched_cid"] = query_cid_matches.item[2] + match["first_matched"] = query_cid_matches.item[3] + match["last_matched"] = query_cid_matches.item[4] + + var/ban = newdbcache[query_cid_matches.item[1]] + if (!ban) + continue + var/computer_ids = ban["computer_id"] + if (!computer_ids) + computer_ids = ban["computer_id"] = list() + computer_ids[query_cid_matches.item[2]] = match + + + if (!query_ip_matches.last_error) + while (query_ip_matches.NextRow()) + var/list/match = list() + + match["stickyban"] = query_ip_matches.item[1] + match["matched_ip"] = query_ip_matches.item[2] + match["first_matched"] = query_ip_matches.item[3] + match["last_matched"] = query_ip_matches.item[4] + + var/ban = newdbcache[query_ip_matches.item[1]] + if (!ban) + continue + var/IPs = ban["IP"] + if (!IPs) + IPs = ban["IP"] = list() + IPs[query_ip_matches.item[2]] = match + + dbcache = newdbcache + dbcacheexpire = world.time+STICKYBAN_DB_CACHE_TIME + + qdel(query_stickybans) + qdel(query_ckey_matches) + qdel(query_cid_matches) + qdel(query_ip_matches) + + +/datum/controller/subsystem/stickyban/proc/import_raw_stickyban_to_db(ckey, list/ban) + . = FALSE + if (!ban["admin"]) + ban["admin"] = "LEGACY" + if (!ban["message"]) + ban["message"] = "Evasion" + + var/datum/DBQuery/query_create_stickyban = SSdbcore.NewQuery("INSERT IGNORE INTO [format_table_name("stickyban")] (ckey, reason, banning_admin) VALUES ('[sanitizeSQL(ckey)]', '[sanitizeSQL(ban["message"])]', '[sanitizeSQL(ban["admin"])]')") + if (!query_create_stickyban.warn_execute()) + qdel(query_create_stickyban) + return + qdel(query_create_stickyban) + + var/list/sqlckeys = list() + var/list/sqlcids = list() + var/list/sqlips = list() + + if (ban["keys"]) + var/list/keys = splittext(ban["keys"], ",") + for (var/key in keys) + var/list/sqlckey = list() + sqlckey["stickyban"] = "'[sanitizeSQL(ckey)]'" + sqlckey["matched_ckey"] = "'[sanitizeSQL(ckey(key))]'" + sqlckey["exempt"] = FALSE + sqlckeys[++sqlckeys.len] = sqlckey + + if (ban["whitelist"]) + var/list/keys = splittext(ban["whitelist"], ",") + for (var/key in keys) + var/list/sqlckey = list() + sqlckey["stickyban"] = "'[sanitizeSQL(ckey)]'" + sqlckey["matched_ckey"] = "'[sanitizeSQL(ckey(key))]'" + sqlckey["exempt"] = TRUE + sqlckeys[++sqlckeys.len] = sqlckey + + if (ban["computer_id"]) + var/list/cids = splittext(ban["computer_id"], ",") + for (var/cid in cids) + var/list/sqlcid = list() + sqlcid["stickyban"] = "'[sanitizeSQL(ckey)]'" + sqlcid["matched_cid"] = "'[sanitizeSQL(cid)]'" + sqlcids[++sqlcids.len] = sqlcid + + if (ban["IP"]) + var/list/ips = splittext(ban["IP"], ",") + for (var/ip in ips) + var/list/sqlip = list() + sqlip["stickyban"] = "'[sanitizeSQL(ckey)]'" + sqlip["matched_ip"] = "'[sanitizeSQL(ip)]'" + sqlips[++sqlips.len] = sqlip + + if (length(sqlckeys)) + SSdbcore.MassInsert(format_table_name("stickyban_matched_ckey"), sqlckeys, FALSE, TRUE) + + if (length(sqlcids)) + SSdbcore.MassInsert(format_table_name("stickyban_matched_cid"), sqlcids, FALSE, TRUE) + + if (length(sqlips)) + SSdbcore.MassInsert(format_table_name("stickyban_matched_ip"), sqlips, FALSE, TRUE) + + + return TRUE diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 3b35a0373a2..83d1f6f17c6 100755 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -93,6 +93,8 @@ SUBSYSTEM_DEF(ticker) if((use_rare_music && L[1] == "rare") || (L[1] == SSmapping.config.map_name)) music += S if(1) //sound.ogg -- common sound + if(L[1] == "exclude") + continue music += S var/old_login_music = trim(file2text("data/last_round_lobby_music.txt")) @@ -115,9 +117,9 @@ SUBSYSTEM_DEF(ticker) if(!GLOB.syndicate_code_phrase) - GLOB.syndicate_code_phrase = generate_code_phrase() + GLOB.syndicate_code_phrase = generate_code_phrase(return_list=TRUE) if(!GLOB.syndicate_code_response) - GLOB.syndicate_code_response = generate_code_phrase() + GLOB.syndicate_code_response = generate_code_phrase(return_list=TRUE) start_at = world.time + (CONFIG_GET(number/lobby_countdown) * 10) if(CONFIG_GET(flag/randomize_shift_time)) @@ -202,7 +204,7 @@ SUBSYSTEM_DEF(ticker) if(GLOB.secret_force_mode != "secret") var/datum/game_mode/smode = config.pick_mode(GLOB.secret_force_mode) if(!smode.can_start()) - message_admins("\blue Unable to force secret [GLOB.secret_force_mode]. [smode.required_players] players and [smode.required_enemies] eligible antagonists needed.") + message_admins("Unable to force secret [GLOB.secret_force_mode]. [smode.required_players] players and [smode.required_enemies] eligible antagonists needed.") else mode = smode @@ -228,7 +230,7 @@ SUBSYSTEM_DEF(ticker) var/can_continue = 0 can_continue = src.mode.pre_setup() //Choose antagonists CHECK_TICK - SSjob.DivideOccupations() //Distribute jobs + can_continue = can_continue && SSjob.DivideOccupations(mode.required_jobs) //Distribute jobs CHECK_TICK if(!GLOB.Debug2) @@ -273,14 +275,14 @@ SUBSYSTEM_DEF(ticker) round_start_time = world.time SSdbcore.SetRoundStart() - to_chat(world, "Welcome to [station_name()], enjoy your stay!") + to_chat(world, "Welcome to [station_name()], enjoy your stay!") SEND_SOUND(world, sound('sound/ai/welcome.ogg')) current_state = GAME_STATE_PLAYING Master.SetRunLevel(RUNLEVEL_GAME) if(SSevents.holidays) - to_chat(world, "and...") + to_chat(world, "and...") for(var/holidayname in SSevents.holidays) var/datum/holiday/holiday = SSevents.holidays[holidayname] to_chat(world, "

[holiday.greet()]

") @@ -395,11 +397,20 @@ SUBSYSTEM_DEF(ticker) m = pick(memetips) if(m) - to_chat(world, "Tip of the round: [html_encode(m)]") + to_chat(world, "Tip of the round: [html_encode(m)]") /datum/controller/subsystem/ticker/proc/check_queue() + if(!queued_players.len) + return var/hpc = CONFIG_GET(number/hard_popcap) - if(!queued_players.len || !hpc) + if(!hpc) + listclearnulls(queued_players) + for (var/mob/dead/new_player/NP in queued_players) + to_chat(NP, "The alive players limit has been released!
[html_encode(">>Join Game<<")]
") + SEND_SOUND(NP, sound('sound/misc/notice1.ogg')) + NP.LateChoices() + queued_players.len = 0 + queue_delay = 0 return queue_delay++ @@ -407,6 +418,7 @@ SUBSYSTEM_DEF(ticker) switch(queue_delay) if(5) //every 5 ticks check if there is a slot available + listclearnulls(queued_players) if(living_player_count() < hpc) if(next_in_line && next_in_line.client) to_chat(next_in_line, "A slot has opened! You have approximately 20 seconds to join. \>\>Join Game\<\<") @@ -618,7 +630,8 @@ SUBSYSTEM_DEF(ticker) 'sound/roundend/leavingtg.ogg', 'sound/roundend/its_only_game.ogg', 'sound/roundend/yeehaw.ogg', - 'sound/roundend/disappointed.ogg'\ + 'sound/roundend/disappointed.ogg', + 'sound/roundend/scrunglartiy.ogg'\ ) SEND_SOUND(world, sound(round_end_sound)) diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm index 39c9e307ecf..1d6f2b97f58 100644 --- a/code/controllers/subsystem/timer.dm +++ b/code/controllers/subsystem/timer.dm @@ -268,7 +268,7 @@ SUBSYSTEM_DEF(timer) var/new_bucket_count var/i = 1 for (i in 1 to length(alltimers)) - var/datum/timedevent/timer = alltimers[1] + var/datum/timedevent/timer = alltimers[i] if (!timer) continue diff --git a/code/controllers/subsystem/title.dm b/code/controllers/subsystem/title.dm index 5bbc2b45ea6..3757b963d37 100644 --- a/code/controllers/subsystem/title.dm +++ b/code/controllers/subsystem/title.dm @@ -25,7 +25,7 @@ SUBSYSTEM_DEF(title) SSmapping.HACK_LoadMapConfig() for(var/S in provisional_title_screens) var/list/L = splittext(S,"+") - if((L.len == 1 && L[1] != "blank.png")|| (L.len > 1 && ((use_rare_screens && lowertext(L[1]) == "rare") || (lowertext(L[1]) == lowertext(SSmapping.config.map_name))))) + if((L.len > 1 && ((use_rare_screens && lowertext(L[1]) == "rare") || (lowertext(L[1]) == lowertext(SSmapping.config.map_name))))) title_screens += S if(length(title_screens)) diff --git a/code/controllers/subsystem/traumas.dm b/code/controllers/subsystem/traumas.dm index 9f5373cd5bc..df5df35aa89 100644 --- a/code/controllers/subsystem/traumas.dm +++ b/code/controllers/subsystem/traumas.dm @@ -62,7 +62,7 @@ SUBSYSTEM_DEF(traumas) "security" = typecacheof(list(/obj/item/clothing/under/rank/security, /obj/item/clothing/under/rank/warden, /obj/item/clothing/under/rank/head_of_security, /obj/item/clothing/under/rank/det, /obj/item/melee/baton, /obj/item/gun/energy/taser, /obj/item/restraints/handcuffs, - /obj/machinery/door/airlock/security)), + /obj/machinery/door/airlock/security, /obj/effect/hallucination/simple/securitron)), "clowns" = typecacheof(list(/obj/item/clothing/under/rank/clown, /obj/item/clothing/shoes/clown_shoes, /obj/item/clothing/mask/gas/clown_hat, /obj/item/instrument/bikehorn, @@ -97,7 +97,7 @@ SUBSYSTEM_DEF(traumas) /obj/item/clothing/under/rank/nursesuit, /obj/item/clothing/under/rank/chief_medical_officer, /obj/item/reagent_containers/syringe, /obj/item/reagent_containers/pill/, /obj/item/reagent_containers/hypospray, /obj/item/storage/firstaid, /obj/item/storage/pill_bottle, /obj/item/healthanalyzer, - /obj/structure/sign/departments/medbay, /obj/machinery/door/airlock/medical, /obj/machinery/sleeper, + /obj/structure/sign/departments/medbay, /obj/machinery/door/airlock/medical, /obj/machinery/sleeper, /obj/machinery/stasis, /obj/machinery/dna_scannernew, /obj/machinery/atmospherics/components/unary/cryo_cell, /obj/item/surgical_drapes, /obj/item/retractor, /obj/item/hemostat, /obj/item/cautery, /obj/item/surgicaldrill, /obj/item/scalpel, /obj/item/circular_saw, /obj/item/clothing/suit/bio_suit/plaguedoctorsuit, /obj/item/clothing/head/plaguedoctorhat, /obj/item/clothing/mask/gas/plaguedoctor)), diff --git a/code/controllers/subsystem/vis_overlays.dm b/code/controllers/subsystem/vis_overlays.dm index f7945d1db34..df3ad1687bc 100644 --- a/code/controllers/subsystem/vis_overlays.dm +++ b/code/controllers/subsystem/vis_overlays.dm @@ -5,11 +5,13 @@ SUBSYSTEM_DEF(vis_overlays) init_order = INIT_ORDER_VIS var/list/vis_overlay_cache + var/list/unique_vis_overlays var/list/currentrun var/datum/callback/rotate_cb /datum/controller/subsystem/vis_overlays/Initialize() vis_overlay_cache = list() + unique_vis_overlays = list() rotate_cb = CALLBACK(src, .proc/rotate_vis_overlay) return ..() @@ -31,21 +33,23 @@ SUBSYSTEM_DEF(vis_overlays) return //the "thing" var can be anything with vis_contents which includes images -/datum/controller/subsystem/vis_overlays/proc/add_vis_overlay(atom/movable/thing, icon, iconstate, layer, plane, dir, alpha = 255, add_appearance_flags = NONE) - . = "[icon]|[iconstate]|[layer]|[plane]|[dir]|[alpha]|[add_appearance_flags]" - var/obj/effect/overlay/vis/overlay = vis_overlay_cache[.] - if(!overlay) - overlay = new - overlay.icon = icon - overlay.icon_state = iconstate - overlay.layer = layer - overlay.plane = plane - overlay.dir = dir - overlay.alpha = alpha - overlay.appearance_flags |= add_appearance_flags - vis_overlay_cache[.] = overlay +/datum/controller/subsystem/vis_overlays/proc/add_vis_overlay(atom/movable/thing, icon, iconstate, layer, plane, dir, alpha = 255, add_appearance_flags = NONE, unique = FALSE) + var/obj/effect/overlay/vis/overlay + if(!unique) + . = "[icon]|[iconstate]|[layer]|[plane]|[dir]|[alpha]|[add_appearance_flags]" + overlay = vis_overlay_cache[.] + if(!overlay) + overlay = _create_new_vis_overlay(icon, iconstate, layer, plane, dir, alpha, add_appearance_flags) + vis_overlay_cache[.] = overlay + else + overlay.unused = 0 else - overlay.unused = 0 + overlay = _create_new_vis_overlay(icon, iconstate, layer, plane, dir, alpha, add_appearance_flags) + overlay.cache_expiration = -1 + var/cache_id = "\ref[overlay]@{[world.time]}" + unique_vis_overlays += overlay + vis_overlay_cache[cache_id] = overlay + . = overlay thing.vis_contents += overlay if(!isatom(thing)) // Automatic rotation is not supported on non atoms @@ -57,6 +61,18 @@ SUBSYSTEM_DEF(vis_overlays) else thing.managed_vis_overlays += overlay +/datum/controller/subsystem/vis_overlays/proc/_create_new_vis_overlay(icon, iconstate, layer, plane, dir, alpha, add_appearance_flags) + var/obj/effect/overlay/vis/overlay = new + overlay.icon = icon + overlay.icon_state = iconstate + overlay.layer = layer + overlay.plane = plane + overlay.dir = dir + overlay.alpha = alpha + overlay.appearance_flags |= add_appearance_flags + return overlay + + /datum/controller/subsystem/vis_overlays/proc/remove_vis_overlay(atom/movable/thing, list/overlays) thing.vis_contents -= overlays if(!isatom(thing)) @@ -71,8 +87,11 @@ SUBSYSTEM_DEF(vis_overlays) return var/rotation = dir2angle(old_dir) - dir2angle(new_dir) var/list/overlays_to_remove = list() - for(var/i in thing.managed_vis_overlays) + for(var/i in thing.managed_vis_overlays - unique_vis_overlays) var/obj/effect/overlay/vis/overlay = i add_vis_overlay(thing, overlay.icon, overlay.icon_state, overlay.layer, overlay.plane, turn(overlay.dir, rotation), overlay.alpha, overlay.appearance_flags) overlays_to_remove += overlay + for(var/i in thing.managed_vis_overlays & unique_vis_overlays) + var/obj/effect/overlay/vis/overlay = i + overlay.dir = turn(overlay.dir, rotation) remove_vis_overlay(thing, overlays_to_remove) diff --git a/code/datums/action.dm b/code/datums/action.dm index 62842687c51..40237c1b25b 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -199,11 +199,16 @@ /datum/action/item_action/toggle_firemode name = "Toggle Firemode" -/datum/action/item_action/rcl +/datum/action/item_action/rcl_col name = "Change Cable Color" icon_icon = 'icons/mob/actions/actions_items.dmi' button_icon_state = "rcl_rainbow" +/datum/action/item_action/rcl_gui + name = "Toggle Fast Wiring Gui" + icon_icon = 'icons/mob/actions/actions_items.dmi' + button_icon_state = "rcl_gui" + /datum/action/item_action/startchainsaw name = "Pull The Starting Cord" @@ -289,10 +294,7 @@ /datum/action/item_action/synthswitch/Trigger() if(istype(target, /obj/item/instrument/piano_synth)) var/obj/item/instrument/piano_synth/synth = target - var/chosen = input("Choose the type of instrument you want to use", "Instrument Selection", "piano") as null|anything in synth.insTypes - if(!synth.insTypes[chosen]) - return - return synth.changeInstrument(chosen) + return synth.selectInstrument() return ..() /datum/action/item_action/vortex_recall diff --git a/code/datums/brain_damage/creepy_trauma.dm b/code/datums/brain_damage/creepy_trauma.dm index dbc03205886..bbbefc2cffe 100644 --- a/code/datums/brain_damage/creepy_trauma.dm +++ b/code/datums/brain_damage/creepy_trauma.dm @@ -60,7 +60,8 @@ SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "creeping", /datum/mood_event/notcreepingsevere, obsession.name) else SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "creeping", /datum/mood_event/notcreeping, obsession.name) -/datum/brain_trauma/special/creep/on_lose() + +/datum/brain_trauma/special/obsessed/on_lose() ..() owner.mind.remove_antag_datum(/datum/antagonist/obsessed) diff --git a/code/datums/brain_damage/hypnosis.dm b/code/datums/brain_damage/hypnosis.dm index 61e59026ebb..d3ce57ca672 100644 --- a/code/datums/brain_damage/hypnosis.dm +++ b/code/datums/brain_damage/hypnosis.dm @@ -7,11 +7,17 @@ resilience = TRAUMA_RESILIENCE_SURGERY var/hypnotic_phrase = "" + var/regex/target_phrase /datum/brain_trauma/hypnosis/New(phrase) if(!phrase) qdel(src) hypnotic_phrase = phrase + try + target_phrase = new("(\\b[hypnotic_phrase]\\b)","ig") + catch(var/exception/e) + stack_trace("[e] on [e.file]:[e.line]") + qdel(src) ..() /datum/brain_trauma/hypnosis/on_gain() @@ -43,6 +49,5 @@ new /datum/hallucination/chat(owner, TRUE, FALSE, "[hypnotic_phrase]") /datum/brain_trauma/hypnosis/on_hear(message, speaker, message_language, raw_message, radio_freq) - var/regex/target_phrase = new("(\\b[hypnotic_phrase]\\b)","ig") message = target_phrase.Replace(message, "$1") - return message \ No newline at end of file + return message diff --git a/code/datums/brain_damage/imaginary_friend.dm b/code/datums/brain_damage/imaginary_friend.dm index e80d20eb668..6d49d532100 100644 --- a/code/datums/brain_damage/imaginary_friend.dm +++ b/code/datums/brain_damage/imaginary_friend.dm @@ -74,26 +74,34 @@ /mob/camera/imaginary_friend/Login() ..() - to_chat(src, "You are the imaginary friend of [owner]!") - to_chat(src, "You are absolutely loyal to your friend, no matter what.") - to_chat(src, "You cannot directly influence the world around you, but you can see what [owner] cannot.") + greet() Show() +/mob/camera/imaginary_friend/proc/greet() + to_chat(src, "You are the imaginary friend of [owner]!") + to_chat(src, "You are absolutely loyal to your friend, no matter what.") + to_chat(src, "You cannot directly influence the world around you, but you can see what [owner] cannot.") + /mob/camera/imaginary_friend/Initialize(mapload, _trauma) . = ..() - var/gender = pick(MALE, FEMALE) - real_name = random_unique_name(gender) - name = real_name + trauma = _trauma owner = trauma.owner copy_known_languages_from(owner, TRUE) - human_image = get_flat_human_icon(null, pick(SSjob.occupations)) + + setup_friend() join = new join.Grant(src) hide = new hide.Grant(src) +/mob/camera/imaginary_friend/proc/setup_friend() + var/gender = pick(MALE, FEMALE) + real_name = random_unique_name(gender) + name = real_name + human_image = get_flat_human_icon(null, pick(SSjob.occupations)) + /mob/camera/imaginary_friend/proc/Show() if(!client) //nobody home return @@ -219,3 +227,41 @@ I.hidden = !I.hidden I.Show() update_status() + +//down here is the trapped mind +//like imaginary friend but a lot less imagination and more like mind prison// + +/datum/brain_trauma/special/imaginary_friend/trapped_owner + name = "Trapped Victim" + desc = "Patient appears to be targeted by an invisible entity." + gain_text = "" + lose_text = "" + random_gain = FALSE + +/datum/brain_trauma/special/imaginary_friend/trapped_owner/make_friend() + friend = new /mob/camera/imaginary_friend/trapped(get_turf(owner), src) + +/datum/brain_trauma/special/imaginary_friend/trapped_owner/reroll_friend() //no rerolling- it's just the last owner's hell + if(friend.client) //reconnected + return + friend_initialized = FALSE + QDEL_NULL(friend) + qdel(src) + +/datum/brain_trauma/special/imaginary_friend/trapped_owner/get_ghost() //no randoms + return + +/mob/camera/imaginary_friend/trapped + name = "figment of imagination?" + real_name = "figment of imagination?" + desc = "The previous host of this body." + +/mob/camera/imaginary_friend/trapped/greet() + to_chat(src, "You have managed to hold on as a figment of the new host's imagination!") + to_chat(src, "All hope is lost for you, but at least you may interact with your host. You do not have to be loyal to them.") + to_chat(src, "You cannot directly influence the world around you, but you can see what the host cannot.") + +/mob/camera/imaginary_friend/trapped/setup_friend() + real_name = "[owner.real_name]?" + name = real_name + human_image = icon('icons/mob/lavaland/lavaland_monsters.dmi', icon_state = "curseblob") diff --git a/code/datums/brain_damage/magic.dm b/code/datums/brain_damage/magic.dm index b2efd7bde42..ff04ceead93 100644 --- a/code/datums/brain_damage/magic.dm +++ b/code/datums/brain_damage/magic.dm @@ -53,11 +53,11 @@ lose_text = "You realize that magic might be real." /datum/brain_trauma/magic/antimagic/on_gain() - owner.add_trait(TRAIT_ANTIMAGIC, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_ANTIMAGIC, TRAUMA_TRAIT) ..() /datum/brain_trauma/magic/antimagic/on_lose() - owner.remove_trait(TRAIT_ANTIMAGIC, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_ANTIMAGIC, TRAUMA_TRAIT) ..() /datum/brain_trauma/magic/stalker diff --git a/code/datums/brain_damage/mild.dm b/code/datums/brain_damage/mild.dm index 84bb0149978..306a65a98fb 100644 --- a/code/datums/brain_damage/mild.dm +++ b/code/datums/brain_damage/mild.dm @@ -42,7 +42,7 @@ lose_text = "You feel smart again." /datum/brain_trauma/mild/dumbness/on_gain() - owner.add_trait(TRAIT_DUMB, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_DUMB, TRAUMA_TRAIT) SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "dumb", /datum/mood_event/oblivious) ..() @@ -55,7 +55,7 @@ ..() /datum/brain_trauma/mild/dumbness/on_lose() - owner.remove_trait(TRAIT_DUMB, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_DUMB, TRAUMA_TRAIT) owner.derpspeech = 0 SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "dumb") ..() @@ -68,11 +68,11 @@ lose_text = "Your mind feels more clear." /datum/brain_trauma/mild/speech_impediment/on_gain() - owner.add_trait(TRAIT_UNINTELLIGIBLE_SPEECH, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_UNINTELLIGIBLE_SPEECH, TRAUMA_TRAIT) ..() /datum/brain_trauma/mild/speech_impediment/on_lose() - owner.remove_trait(TRAIT_UNINTELLIGIBLE_SPEECH, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_UNINTELLIGIBLE_SPEECH, TRAUMA_TRAIT) ..() /datum/brain_trauma/mild/concussion @@ -173,7 +173,7 @@ lose_text = "Your throat stops itching." /datum/brain_trauma/mild/nervous_cough/on_life() - if(prob(12) && !owner.has_trait(TRAIT_SOOTHED_THROAT)) + if(prob(12) && !HAS_TRAIT(owner, TRAIT_SOOTHED_THROAT)) if(prob(5)) to_chat(owner, "[pick("You have a coughing fit!", "You can't stop coughing!")]") owner.Immobilize(20) @@ -182,3 +182,44 @@ addtimer(CALLBACK(owner, /mob/.proc/emote, "cough"), 12) owner.emote("cough") ..() + +/datum/brain_trauma/mild/expressive_aphasia + name = "Expressive Aphasia" + desc = "Patient is affected by partial loss of speech leading to a reduced vocabulary." + scan_desc = "inability to form complex sentences" + gain_text = "You lose your grasp on complex words." + lose_text = "You feel your vocabulary returning to normal again." + + var/static/list/common_words = world.file2list("strings/1000_most_common.txt") + +/datum/brain_trauma/mild/expressive_aphasia/on_say(message) + if(message) + var/list/message_split = splittext(message, " ") + var/list/new_message = list() + + for(var/word in message_split) + var/suffix = copytext(word,-1) + + // Check if we have a suffix and break it out of the word + if(suffix in list("." , "," , ";" , "!" , ":" , "?")) + word = copytext(word,1,-1) + else + suffix = "" + + word = html_decode(word) + + if(lowertext(word) in common_words) + new_message += word + suffix + else + if(prob(30) && message_split.len > 2) + new_message += pick("uh","erm") + break + else + var/list/charlist = string2charlist(word) // Stupid shit code + shuffle_inplace(charlist) + charlist.len = round(charlist.len * 0.5,1) + new_message += html_encode(jointext(charlist,"")) + suffix + + message = jointext(new_message, " ") + + return trim(message) diff --git a/code/datums/brain_damage/phobia.dm b/code/datums/brain_damage/phobia.dm index 4c9bfbe4620..05b1f4822fd 100644 --- a/code/datums/brain_damage/phobia.dm +++ b/code/datums/brain_damage/phobia.dm @@ -38,7 +38,7 @@ /datum/brain_trauma/mild/phobia/on_life() ..() - if(owner.has_trait(TRAIT_FEARLESS)) + if(HAS_TRAIT(owner, TRAIT_FEARLESS)) return if(is_blind(owner)) return @@ -79,7 +79,7 @@ /datum/brain_trauma/mild/phobia/on_hear(message, speaker, message_language, raw_message, radio_freq) if(!owner.can_hear() || world.time < next_scare) //words can't trigger you if you can't hear them *taps head* return message - if(owner.has_trait(TRAIT_FEARLESS)) + if(HAS_TRAIT(owner, TRAIT_FEARLESS)) return message for(var/word in trigger_words) var/regex/reg = regex("(\\b|\\A)[REGEX_QUOTE(word)]'?s*(\\b|\\Z)", "i") @@ -91,7 +91,7 @@ return message /datum/brain_trauma/mild/phobia/on_say(message) - if(owner.has_trait(TRAIT_FEARLESS)) + if(HAS_TRAIT(owner, TRAIT_FEARLESS)) return message for(var/word in trigger_words) var/regex/reg = regex("(\\b|\\A)[REGEX_QUOTE(word)]'?s*(\\b|\\Z)", "i") diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm index e84817360f0..2ba242c67e8 100644 --- a/code/datums/brain_damage/severe.dm +++ b/code/datums/brain_damage/severe.dm @@ -13,11 +13,11 @@ lose_text = "You suddenly remember how to speak." /datum/brain_trauma/severe/mute/on_gain() - owner.add_trait(TRAIT_MUTE, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_MUTE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/mute/on_lose() - owner.remove_trait(TRAIT_MUTE, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_MUTE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/aphasia @@ -109,13 +109,13 @@ /datum/brain_trauma/severe/paralysis/on_gain() ..() for(var/X in paralysis_traits) - owner.add_trait(X, "trauma_paralysis") + ADD_TRAIT(owner, X, "trauma_paralysis") owner.update_disabled_bodyparts() /datum/brain_trauma/severe/paralysis/on_lose() ..() for(var/X in paralysis_traits) - owner.remove_trait(X, "trauma_paralysis") + REMOVE_TRAIT(owner, X, "trauma_paralysis") owner.update_disabled_bodyparts() /datum/brain_trauma/severe/paralysis/paraplegic @@ -171,7 +171,7 @@ stress = max(stress - 4, 0) /datum/brain_trauma/severe/monophobia/proc/check_alone() - if(owner.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(owner, TRAIT_BLIND)) return TRUE for(var/mob/M in oview(owner, 7)) if(!isliving(M)) //ghosts ain't people @@ -233,11 +233,11 @@ lose_text = "You feel in control of your hands again." /datum/brain_trauma/severe/discoordination/on_gain() - owner.add_trait(TRAIT_MONKEYLIKE, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_MONKEYLIKE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/discoordination/on_lose() - owner.remove_trait(TRAIT_MONKEYLIKE, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_MONKEYLIKE, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/pacifism @@ -248,11 +248,11 @@ lose_text = "You no longer feel compelled to not harm." /datum/brain_trauma/severe/pacifism/on_gain() - owner.add_trait(TRAIT_PACIFISM, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_PACIFISM, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/pacifism/on_lose() - owner.remove_trait(TRAIT_PACIFISM, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_PACIFISM, TRAUMA_TRAIT) ..() /datum/brain_trauma/severe/hypnotic_stupor diff --git a/code/datums/brain_damage/special.dm b/code/datums/brain_damage/special.dm index b10933206d5..84676cede60 100644 --- a/code/datums/brain_damage/special.dm +++ b/code/datums/brain_damage/special.dm @@ -23,13 +23,13 @@ speak("neutral", prob(25)) /datum/brain_trauma/special/godwoken/on_gain() - owner.add_trait(TRAIT_HOLY, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_HOLY, TRAUMA_TRAIT) ..() /datum/brain_trauma/special/godwoken/on_lose() - owner.remove_trait(TRAIT_HOLY, TRAUMA_TRAIT) - ..() - + REMOVE_TRAIT(owner, TRAIT_HOLY, TRAUMA_TRAIT) + ..() + /datum/brain_trauma/special/godwoken/proc/speak(type, include_owner = FALSE) var/message switch(type) @@ -142,7 +142,8 @@ /datum/brain_trauma/special/psychotic_brawling/bath_salts name = "Chemical Violent Psychosis" - + clonable = FALSE + /datum/brain_trauma/special/tenacity name = "Tenacity" desc = "Patient is psychologically unaffected by pain and injuries, and can remain standing far longer than a normal person." @@ -151,15 +152,15 @@ lose_text = "You realize you can feel pain again." /datum/brain_trauma/special/tenacity/on_gain() - owner.add_trait(TRAIT_NOSOFTCRIT, TRAUMA_TRAIT) - owner.add_trait(TRAIT_NOHARDCRIT, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_NOSOFTCRIT, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_NOHARDCRIT, TRAUMA_TRAIT) ..() /datum/brain_trauma/special/tenacity/on_lose() - owner.remove_trait(TRAIT_NOSOFTCRIT, TRAUMA_TRAIT) - owner.remove_trait(TRAIT_NOHARDCRIT, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_NOSOFTCRIT, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_NOHARDCRIT, TRAUMA_TRAIT) ..() - + /datum/brain_trauma/special/death_whispers name = "Functional Cerebral Necrosis" desc = "Patient's brain is stuck in a functional near-death state, causing occasional moments of lucid hallucinations, which are often interpreted as the voices of the dead." @@ -172,18 +173,82 @@ ..() if(!active && prob(2)) whispering() - + /datum/brain_trauma/special/death_whispers/on_lose() if(active) cease_whispering() ..() /datum/brain_trauma/special/death_whispers/proc/whispering() - owner.add_trait(TRAIT_SIXTHSENSE, TRAUMA_TRAIT) + ADD_TRAIT(owner, TRAIT_SIXTHSENSE, TRAUMA_TRAIT) active = TRUE addtimer(CALLBACK(src, .proc/cease_whispering), rand(50, 300)) - + /datum/brain_trauma/special/death_whispers/proc/cease_whispering() - owner.remove_trait(TRAIT_SIXTHSENSE, TRAUMA_TRAIT) + REMOVE_TRAIT(owner, TRAIT_SIXTHSENSE, TRAUMA_TRAIT) active = FALSE +/datum/brain_trauma/special/beepsky + name = "Criminal" + desc = "Patient seems to be a criminal." + scan_desc = "criminal mind" + gain_text = "Justice is coming for you." + lose_text = "You were absolved for your crimes." + clonable = FALSE + var/obj/effect/hallucination/simple/securitron/beepsky + +/datum/brain_trauma/special/beepsky/on_gain() + create_securitron() + ..() + +/datum/brain_trauma/special/beepsky/proc/create_securitron() + var/turf/where = locate(owner.x + pick(-12, 12), owner.y + pick(-12, 12), owner.z) + beepsky = new(where, owner) + beepsky.victim = owner + +/datum/brain_trauma/special/beepsky/on_lose() + QDEL_NULL(beepsky) + ..() + +/datum/brain_trauma/special/beepsky/on_life() + if(get_dist(owner, beepsky) >= 10 && prob(20)) + QDEL_NULL(beepsky) + create_securitron() + if(owner.stat != CONSCIOUS) + if(prob(20)) + playsound(owner, 'sound/voice/beepsky/iamthelaw.ogg', 50) + return + if(QDELETED(beepsky) || !beepsky.loc || beepsky.z != owner.z) + QDEL_NULL(beepsky) + create_securitron() + if(get_dist(owner, beepsky) <= 1) + playsound(owner, 'sound/weapons/egloves.ogg', 50) + owner.visible_message("[owner] tries to fight the law.", "You feel the fist of the LAW.") + owner.take_bodypart_damage(0,0,rand(30, 50)) + QDEL_NULL(beepsky) + create_securitron() + if(prob(20) && get_dist(owner, beepsky) <= 8) + playsound(owner, 'sound/voice/beepsky/criminal.ogg', 40) + ..() + +/obj/effect/hallucination/simple/securitron + name = "Securitron" + desc = "The LAW is coming." + image_icon = 'icons/mob/aibots.dmi' + image_state = "secbot-c" + var/victim + +/obj/effect/hallucination/simple/securitron/New() + name = pick ( "officer Beepsky", "officer Johnson", "officer Pingsky") + START_PROCESSING(SSfastprocess,src) + ..() + +/obj/effect/hallucination/simple/securitron/process() + if(prob(60)) + forceMove(get_step_towards(src, victim)) + if(prob(5)) + say("Level 10 infraction alert!") + +/obj/effect/hallucination/simple/securitron/Destroy() + STOP_PROCESSING(SSfastprocess,src) + return ..() diff --git a/code/datums/brain_damage/split_personality.dm b/code/datums/brain_damage/split_personality.dm index 9ce65717f11..612af133926 100644 --- a/code/datums/brain_damage/split_personality.dm +++ b/code/datums/brain_damage/split_personality.dm @@ -192,7 +192,7 @@ return //no random switching /datum/brain_trauma/severe/split_personality/brainwashing/on_hear(message, speaker, message_language, raw_message, radio_freq) - if(owner.has_trait(TRAIT_DEAF) || owner == speaker) + if(HAS_TRAIT(owner, TRAIT_DEAF) || owner == speaker) return message if(findtext(message, codeword)) message = replacetext(message, codeword, "[codeword]") diff --git a/code/datums/browser.dm b/code/datums/browser.dm index 8099248c4c6..e5d466845e6 100644 --- a/code/datums/browser.dm +++ b/code/datums/browser.dm @@ -39,8 +39,12 @@ //title_image = ntitle_image /datum/browser/proc/add_stylesheet(name, file) - stylesheets["[ckey(name)].css"] = file - register_asset("[ckey(name)].css", file) + if (istype(name, /datum/asset/spritesheet)) + var/datum/asset/spritesheet/sheet = name + stylesheets["spritesheet_[sheet.name].css"] = "data/spritesheets/[sheet.name]" + else + stylesheets["[ckey(name)].css"] = file + register_asset("[ckey(name)].css", file) /datum/browser/proc/add_script(name, file) scripts["[ckey(name)].js"] = file @@ -194,7 +198,7 @@ .=..() opentime = 0 -/datum/browser/modal/open() +/datum/browser/modal/open(use_onclose) set waitfor = 0 opentime = world.time diff --git a/code/datums/components/_component.dm b/code/datums/components/_component.dm index 6822525a61d..f23d725aac6 100644 --- a/code/datums/components/_component.dm +++ b/code/datums/components/_component.dm @@ -2,6 +2,10 @@ var/dupe_mode = COMPONENT_DUPE_HIGHLANDER var/dupe_type var/datum/parent + //only set to true if you are able to properly transfer this component + //At a minimum RegisterWithParent and UnregisterFromParent should be used + //Make sure you also implement PostTransfer for any post transfer handling + var/can_transfer = FALSE /datum/component/New(datum/P, ...) parent = P @@ -154,7 +158,7 @@ return /datum/component/proc/PostTransfer() - return + return COMPONENT_INCOMPATIBLE //Do not support transfer by default as you must properly support it /datum/component/proc/_GetInverseTypeList(our_type = type) //we can do this one simple trick @@ -281,10 +285,13 @@ if(target.parent) target.RemoveComponent() target.parent = src - if(target.PostTransfer() == COMPONENT_INCOMPATIBLE) - var/c_type = target.type - qdel(target) - CRASH("Incompatible [c_type] transfer attempt to a [type]!") + var/result = target.PostTransfer() + switch(result) + if(COMPONENT_INCOMPATIBLE) + var/c_type = target.type + qdel(target) + CRASH("Incompatible [c_type] transfer attempt to a [type]!") + if(target == AddComponent(target)) target._JoinParent() @@ -294,10 +301,13 @@ return var/comps = dc[/datum/component] if(islist(comps)) - for(var/I in comps) - target.TakeComponent(I) + for(var/datum/component/I in comps) + if(I.can_transfer) + target.TakeComponent(I) else - target.TakeComponent(comps) + var/datum/component/C = comps + if(C.can_transfer) + target.TakeComponent(comps) /datum/component/ui_host() return parent diff --git a/code/datums/components/bane.dm b/code/datums/components/bane.dm new file mode 100644 index 00000000000..aac56d099e5 --- /dev/null +++ b/code/datums/components/bane.dm @@ -0,0 +1,45 @@ +/datum/component/bane + dupe_mode = COMPONENT_DUPE_ALLOWED + + var/mobtype + var/speciestype + var/damage_multiplier + +/datum/component/bane/Initialize(mobtype, damage_multiplier=1) + if(!isitem(parent)) + return COMPONENT_INCOMPATIBLE + + if(ispath(mobtype, /mob/living)) + src.mobtype = mobtype + else if(ispath(mobtype, /datum/species)) + speciestype = mobtype + else + return COMPONENT_INCOMPATIBLE + + src.damage_multiplier = damage_multiplier + +/datum/component/bane/RegisterWithParent() + if(speciestype) + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/speciesCheck) + else + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/mobCheck) + +/datum/component/bane/UnregisterFromParent() + UnregisterSignal(parent, COMSIG_ITEM_AFTERATTACK) + +/datum/component/bane/proc/speciesCheck(obj/item/source, atom/target, mob/user, proximity_flag, click_parameters) + if(!is_species(target, speciestype)) + return + activate(source, target, user) + +/datum/component/bane/proc/mobCheck(obj/item/source, atom/target, mob/user, proximity_flag, click_parameters) + if(!istype(target, mobtype)) + return + activate(source, target, user) + +/datum/component/bane/proc/activate(obj/item/source, mob/living/target, mob/attacker) + if(attacker.a_intent != INTENT_HARM) + return + + var/extra_damage = max(0, source.force * damage_multiplier) + target.apply_damage(extra_damage, source.damtype, attacker.zone_selected) diff --git a/code/datums/components/beetlejuice.dm b/code/datums/components/beetlejuice.dm new file mode 100644 index 00000000000..42123fdef18 --- /dev/null +++ b/code/datums/components/beetlejuice.dm @@ -0,0 +1,60 @@ +/datum/component/beetlejuice + var/keyword + var/list/first_heard + var/list/count + var/max_delay = 3 SECONDS //How fast they need to be said + var/min_count = 3 + var/cooldown = 30 SECONDS //Delay between teleports + var/active = TRUE + var/case_sensitive = FALSE + var/regex/R + +/datum/component/beetlejuice/Initialize() + if(!ismovableatom(parent)) + return COMPONENT_INCOMPATIBLE + + first_heard = list() + count = list() + + var/atom/movable/O = parent + keyword = O.name + if(ismob(O)) + var/mob/M = parent + keyword = M.real_name + update_regex() + + RegisterSignal(SSdcs, COMSIG_GLOB_LIVING_SAY_SPECIAL, .proc/say_react) + +/datum/component/beetlejuice/proc/update_regex() + R = regex("[REGEX_QUOTE(keyword)]","g[case_sensitive ? "" : "i"]") + +/datum/component/beetlejuice/vv_edit_var(var_name, var_value) + . = ..() + if (var_name == NAMEOF(src, keyword) || var_name == NAMEOF(src, case_sensitive)) + update_regex() + +/datum/component/beetlejuice/proc/say_react(datum/source, mob/speaker,message) + if(!speaker || !message || !active) + return + var/found = R.Find(message) + if(found) + var/occurences = 1 + while(R.Find(message)) + occurences++ + R.next = 1 + + if(!first_heard[speaker] || (first_heard[speaker] + max_delay < world.time)) + first_heard[speaker] = world.time + count[speaker] = 0 + count[speaker] += occurences + if(count[speaker] >= min_count) + first_heard -= speaker + count -= speaker + apport(speaker) + + +/datum/component/beetlejuice/proc/apport(atom/target) + var/atom/movable/AM = parent + do_teleport(AM,get_turf(target)) + active = FALSE + addtimer(VARSET_CALLBACK(src, active, TRUE), cooldown) \ No newline at end of file diff --git a/code/datums/components/caltrop.dm b/code/datums/components/caltrop.dm index 5c6866533c7..d6804564cb7 100644 --- a/code/datums/components/caltrop.dm +++ b/code/datums/components/caltrop.dm @@ -24,7 +24,7 @@ if(ishuman(AM)) var/mob/living/carbon/human/H = AM - if(H.has_trait(TRAIT_PIERCEIMMUNE)) + if(HAS_TRAIT(H, TRAIT_PIERCEIMMUNE)) return if((flags & CALTROP_IGNORE_WALKERS) && H.m_intent == MOVE_INTENT_WALK) @@ -46,7 +46,7 @@ return var/damage = rand(min_damage, max_damage) - if(H.has_trait(TRAIT_LIGHT_STEP)) + if(HAS_TRAIT(H, TRAIT_LIGHT_STEP)) damage *= 0.75 H.apply_damage(damage, BRUTE, picked_def_zone) diff --git a/code/datums/components/decal.dm b/code/datums/components/decal.dm index e5547ee0ecd..515ca650c78 100644 --- a/code/datums/components/decal.dm +++ b/code/datums/components/decal.dm @@ -1,6 +1,6 @@ /datum/component/decal dupe_mode = COMPONENT_DUPE_ALLOWED - + can_transfer = TRUE var/cleanable var/description var/mutable_appearance/pic @@ -72,4 +72,4 @@ qdel(src) /datum/component/decal/proc/examine(datum/source, mob/user) - to_chat(user, description) \ No newline at end of file + to_chat(user, description) diff --git a/code/datums/components/earhealing.dm b/code/datums/components/earhealing.dm index 9396eab3a33..6eb71285e0d 100644 --- a/code/datums/components/earhealing.dm +++ b/code/datums/components/earhealing.dm @@ -23,7 +23,7 @@ if (!wearer) STOP_PROCESSING(SSobj, src) return - if(!wearer.has_trait(TRAIT_DEAF)) + if(!HAS_TRAIT(wearer, TRAIT_DEAF)) var/obj/item/organ/ears/ears = wearer.getorganslot(ORGAN_SLOT_EARS) if (ears) ears.deaf = max(ears.deaf - 1, (ears.ear_damage < UNHEALING_EAR_DAMAGE ? 0 : 1)) // Do not clear deafness while above the unhealing ear damage threshold diff --git a/code/datums/components/fantasy/_fantasy.dm b/code/datums/components/fantasy/_fantasy.dm new file mode 100644 index 00000000000..485ec7432e7 --- /dev/null +++ b/code/datums/components/fantasy/_fantasy.dm @@ -0,0 +1,137 @@ +/datum/component/fantasy + dupe_mode = COMPONENT_DUPE_UNIQUE_PASSARGS + + var/quality + + var/canFail + var/announce + + var/originalName + var/list/affixes + var/list/appliedComponents + + var/static/list/affixListing + +/datum/component/fantasy/Initialize(quality, list/affixes = list(), canFail=FALSE, announce=FALSE) + if(!isitem(parent)) + return COMPONENT_INCOMPATIBLE + + src.quality = quality || randomQuality() + src.canFail = canFail + src.announce = announce + + src.affixes = affixes + appliedComponents = list() + randomAffixes() + +/datum/component/fantasy/Destroy() + unmodify() + affixes = null + return ..() + +/datum/component/fantasy/RegisterWithParent() + var/obj/item/master = parent + originalName = master.name + modify() + +/datum/component/fantasy/UnregisterFromParent() + unmodify() + +/datum/component/fantasy/InheritComponent(datum/component/fantasy/newComp, original, list/arguments) + unmodify() + if(newComp) + quality += newComp.quality + canFail = newComp.canFail + announce = newComp.announce + else + arguments.len = 5 // This is done to replicate what happens when an arglist smaller than the necessary arguments is given + quality += arguments[1] + canFail = arguments[4] || canFail + announce = arguments[5] || announce + modify() + +/datum/component/fantasy/proc/randomQuality() + var/quality = pick(1;15, 2;14, 2;13, 2;12, 3;11, 3;10, 3;9, 4;8, 4;7, 4;6, 5;5, 5;4, 5;3, 6;2, 6;1, 6;0) + if(prob(50)) + quality = -quality + return quality + +/datum/component/fantasy/proc/randomAffixes(force) + if(!affixListing) + affixListing = list() + for(var/T in subtypesof(/datum/fantasy_affix)) + var/datum/fantasy_affix/affix = new T + affixListing[affix] = affix.weight + + var/usedSlots = NONE + for(var/i in affixes) + var/datum/fantasy_affix/affix = i + usedSlots |= affix.placement + + var/alignment + if(quality >= 0) + alignment |= AFFIX_GOOD + if(quality <= 0) + alignment |= AFFIX_EVIL + + for(var/i in 1 to max(1, abs(quality))) // We want at least 1 affix applied + var/datum/fantasy_affix/affix = pickweight(affixListing) + if(affix.placement & usedSlots) + continue + if(!(affix.alignment & alignment)) + continue + affixes += affix + usedSlots |= affix.placement + +/datum/component/fantasy/proc/modify() + var/obj/item/master = parent + + master.force = max(0, master.force + quality) + master.throwforce = max(0, master.throwforce + quality) + master.armor = master.armor.modifyAllRatings(quality) + + var/newName = originalName + for(var/i in affixes) + var/datum/fantasy_affix/affix = i + newName = affix.apply(src, newName) + + if(quality != 0) + newName = "[newName] [quality > 0 ? "+" : ""][quality]" + + if(canFail && prob((quality - 9)*10)) + var/turf/place = get_turf(parent) + place.visible_message("[parent] violently glows blue for a while, then evaporates.") + master.burn() + return + else if(announce) + announce() + + master.name = newName + +/datum/component/fantasy/proc/unmodify() + var/obj/item/master = parent + + for(var/i in affixes) + var/datum/fantasy_affix/affix = i + affix.remove(src) + for(var/i in appliedComponents) + qdel(i) + + master.force = max(0, master.force - quality) + master.throwforce = max(0, master.throwforce - quality) + master.armor = master.armor.modifyAllRatings(-quality) + + master.name = originalName + +/datum/component/fantasy/proc/announce() + var/turf/location = get_turf(parent) + var/span + var/effect_description + if(quality >= 0) + span = "" + effect_description = "shimmering golden glow" + else + span = "" + effect_description = "mottled black glow" + + location.visible_message("[span][originalName] is covered by a [effect_description] and then transforms into [parent]!") diff --git a/code/datums/components/fantasy/affix.dm b/code/datums/components/fantasy/affix.dm new file mode 100644 index 00000000000..b111f1ca8cd --- /dev/null +++ b/code/datums/components/fantasy/affix.dm @@ -0,0 +1,9 @@ +/datum/fantasy_affix + var/placement // A bitflag of "slots" this affix takes up, for example pre/suffix + var/alignment + var/weight = 10 + +/datum/fantasy_affix/proc/apply(datum/component/fantasy/comp, newName) + return newName + +/datum/fantasy_affix/proc/remove(datum/component/fantasy/comp) \ No newline at end of file diff --git a/code/datums/components/fantasy/prefixes.dm b/code/datums/components/fantasy/prefixes.dm new file mode 100644 index 00000000000..9bf54745945 --- /dev/null +++ b/code/datums/components/fantasy/prefixes.dm @@ -0,0 +1,49 @@ +/datum/fantasy_affix/cosmetic_prefixes + placement = AFFIX_PREFIX + alignment = AFFIX_GOOD | AFFIX_EVIL + + var/list/goodPrefixes + var/list/badPrefixes + +/datum/fantasy_affix/cosmetic_prefixes/New() + goodPrefixes = list( + "greater", + "major", + "blessed", + "superior", + "empowered", + "honed", + "true", + "glorious", + "robust", + ) + badPrefixes = list( + "lesser", + "minor", + "blighted", + "inferior", + "enfeebled", + "rusted", + "unsteady", + "tragic", + "gimped", + "cursed", + ) + + weight = (length(goodPrefixes) + length(badPrefixes)) * 10 + +/datum/fantasy_affix/cosmetic_prefixes/apply(datum/component/fantasy/comp, newName) + if(comp.quality > 0 || (comp.quality == 0 && prob(50))) + return "[pick(goodPrefixes)] [newName]" + else + return "[pick(badPrefixes)] [newName]" + +/datum/fantasy_affix/tactical + placement = AFFIX_PREFIX + alignment = AFFIX_GOOD + weight = 1 // Very powerful, no one should have such power + +/datum/fantasy_affix/tactical/apply(datum/component/fantasy/comp, newName) + var/obj/item/master = comp.parent + comp.appliedComponents += master.AddComponent(/datum/component/tactical) + return "tactical [newName]" \ No newline at end of file diff --git a/code/datums/components/fantasy/suffixes.dm b/code/datums/components/fantasy/suffixes.dm new file mode 100644 index 00000000000..20d22734efe --- /dev/null +++ b/code/datums/components/fantasy/suffixes.dm @@ -0,0 +1,101 @@ +/datum/fantasy_affix/cosmetic_suffixes + placement = AFFIX_SUFFIX + alignment = AFFIX_GOOD | AFFIX_EVIL + + var/list/goodSuffixes + var/list/badSuffixes + +/datum/fantasy_affix/cosmetic_suffixes/New() + goodSuffixes = list( + "dexterity", + "constitution", + "intelligence", + "wisdom", + "charisma", + "the forest", + "the hills", + "the plains", + "the sea", + "the sun", + "the moon", + "the void", + "the world", + "many secrets", + "many tales", + "many colors", + "rending", + "sundering", + "the night", + "the day", + ) + badSuffixes = list( + "draining", + "burden", + "discomfort", + "awkwardness", + "poor hygiene", + "timidity", + ) + + weight = (length(goodSuffixes) + length(badSuffixes)) * 10 + +/datum/fantasy_affix/cosmetic_suffixes/apply(datum/component/fantasy/comp, newName) + if(comp.quality > 0 || (comp.quality == 0 && prob(50))) + return "[newName] of [pick(goodSuffixes)]" + else + return "[newName] of [pick(badSuffixes)]" + +//////////// Good suffixes +/datum/fantasy_affix/bane + placement = AFFIX_SUFFIX + alignment = AFFIX_GOOD + weight = 20 + +/datum/fantasy_affix/bane/apply(datum/component/fantasy/comp, newName) + . = ..() + // This is set up to be easy to add to these lists as I expect it will need modifications + var/static/list/possible_mobtypes + if(!possible_mobtypes) + // The base list of allowed mob/species types + possible_mobtypes = typecacheof(list( + /mob/living/simple_animal, + /mob/living/carbon, + /datum/species, + )) + // Some particular types to disallow if they're too broad/abstract + possible_mobtypes -= list( + /mob/living/simple_animal/hostile, + ) + // Some types to remove them and their subtypes + possible_mobtypes -= typecacheof(list( + /mob/living/carbon/human/species, + )) + + var/mob/picked_mobtype = pick(possible_mobtypes) + // This works even with the species picks since we're only accessing the name + + var/obj/item/master = comp.parent + comp.appliedComponents += master.AddComponent(/datum/component/bane, picked_mobtype) + return "[newName] of [initial(picked_mobtype.name)] slaying" + +/datum/fantasy_affix/strength + placement = AFFIX_SUFFIX + alignment = AFFIX_GOOD + +/datum/fantasy_affix/strength/apply(datum/component/fantasy/comp, newName) + . = ..() + var/obj/item/master = comp.parent + comp.appliedComponents += master.AddComponent(/datum/component/knockback, CEILING(comp.quality/2, 1)) + return "[newName] of strength" + +//////////// Bad suffixes + +/datum/fantasy_affix/fool + placement = AFFIX_SUFFIX + alignment = AFFIX_EVIL + +/datum/fantasy_affix/fool/apply(datum/component/fantasy/comp, newName) + . = ..() + var/obj/item/master = comp.parent + comp.appliedComponents += master.AddComponent(/datum/component/squeak/bikehorn) + return "[newName] of the fool" \ No newline at end of file diff --git a/code/datums/components/footstep.dm b/code/datums/components/footstep.dm index d9b9bb0ab12..35b7d5ecd5c 100644 --- a/code/datums/components/footstep.dm +++ b/code/datums/components/footstep.dm @@ -19,9 +19,8 @@ var/v = volume var/e = e_range if(!T.footstep || LM.buckled || LM.lying || !CHECK_MULTIPLE_BITFIELDS(LM.mobility_flags, MOBILITY_STAND | MOBILITY_MOVE) || LM.throwing || LM.movement_type & (VENTCRAWLING | FLYING)) - if (!T.footstep || LM.movement_type & (VENTCRAWLING | FLYING)) //don't play sounds if flying etc. - return - playsound(T, 'sound/effects/footstep/crawl1.ogg', 15 * v) //play crawling sound + if (LM.lying && !(!T.footstep || LM.movement_type & (VENTCRAWLING | FLYING))) //play crawling sound if we're lying + playsound(T, 'sound/effects/footstep/crawl1.ogg', 15 * v) return if(iscarbon(LM)) diff --git a/code/datums/components/forensics.dm b/code/datums/components/forensics.dm index 26d6caac5e2..f5a82ce5c4a 100644 --- a/code/datums/components/forensics.dm +++ b/code/datums/components/forensics.dm @@ -1,5 +1,6 @@ /datum/component/forensics dupe_mode = COMPONENT_DUPE_UNIQUE + can_transfer = TRUE var/list/fingerprints //assoc print = print var/list/hiddenprints //assoc ckey = realname/gloves/ckey var/list/blood_DNA //assoc dna = bloodtype @@ -21,8 +22,18 @@ blood_DNA = new_blood_DNA fibers = new_fibers check_blood() + +/datum/component/forensics/RegisterWithParent() + check_blood() RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT, .proc/clean_act) +/datum/component/forensics/UnregisterFromParent() + UnregisterSignal(parent, list(COMSIG_COMPONENT_CLEAN_ACT)) + +/datum/component/forensics/PostTransfer() + if(!isatom(parent)) + return COMPONENT_INCOMPATIBLE + /datum/component/forensics/proc/wipe_fingerprints() fingerprints = null return TRUE diff --git a/code/datums/components/knockback.dm b/code/datums/components/knockback.dm new file mode 100644 index 00000000000..1443a4b905b --- /dev/null +++ b/code/datums/components/knockback.dm @@ -0,0 +1,22 @@ +/datum/component/knockback + var/throw_distance + +/datum/component/knockback/Initialize(throw_distance=1) + if(!isitem(parent)) + return COMPONENT_INCOMPATIBLE + + src.throw_distance = throw_distance + +/datum/component/knockback/RegisterWithParent() + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/afterattack_react) + +/datum/component/knockback/UnregisterFromParent() + UnregisterSignal(parent, COMSIG_ITEM_AFTERATTACK) + +/datum/component/knockback/proc/afterattack_react(obj/item/source, atom/target, mob/user, proximity_flag, click_parameters) + if(!ismovableatom(target) || !proximity_flag) + return + var/obj/item/master = parent + var/atom/movable/throwee = target + var/atom/throw_target = get_edge_target_turf(throwee, get_dir(master, throwee)) + throwee.safe_throw_at(throw_target, throw_distance, 1, user) \ No newline at end of file diff --git a/code/datums/components/lockon_aiming.dm b/code/datums/components/lockon_aiming.dm index f944c6c5e43..c27b9ce0d60 100644 --- a/code/datums/components/lockon_aiming.dm +++ b/code/datums/components/lockon_aiming.dm @@ -47,14 +47,10 @@ if(icon_state) lock_icon_state = icon_state generate_lock_visuals() - var/mob/M = parent - LAZYOR(M.mousemove_intercept_objects, src) START_PROCESSING(SSfastprocess, src) /datum/component/lockon_aiming/Destroy() - var/mob/M = parent clear_visuals() - LAZYREMOVE(M.mousemove_intercept_objects, src) STOP_PROCESSING(SSfastprocess, src) return ..() @@ -120,27 +116,6 @@ return LAZYREMOVE(immune_weakrefs, A.weak_reference) -/datum/component/lockon_aiming/onMouseMove(object,location,control,params) - var/mob/M = parent - if(!istype(M) || !M.client) - return - var/datum/position/P = mouse_absolute_datum_map_position_from_client(M.client) - if(!P) - return - var/turf/T = P.return_turf() - LAZYINITLIST(last_location) - if(length(last_location) == 3 && last_location[1] == T.x && last_location[2] == T.y && last_location[3] == T.z) - return //Same turf, don't bother. - if(last_location) - last_location.Cut() - else - last_location = list() - last_location.len = 3 - last_location[1] = T.x - last_location[2] = T.y - last_location[3] = T.z - autolock() - /datum/component/lockon_aiming/process() if(update_disabled) return @@ -237,6 +212,3 @@ LOCKON_RANGING_BREAK_CHECK cd++ CHECK_TICK - -/datum/component/lockon_aiming/PostTransfer(datum/new_parent) - return COMPONENT_INCOMPATIBLE diff --git a/code/datums/components/mirage_border.dm b/code/datums/components/mirage_border.dm index f435a21f49e..d5d32010cd1 100644 --- a/code/datums/components/mirage_border.dm +++ b/code/datums/components/mirage_border.dm @@ -1,4 +1,5 @@ /datum/component/mirage_border + can_transfer = TRUE var/obj/effect/abstract/mirage_holder/holder /datum/component/mirage_border/Initialize(turf/target, direction, range=world.view) diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index a6f0672f579..96b7f70c953 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -8,7 +8,7 @@ var/mood_level = 5 //To track what stage of moodies they're on var/sanity_level = 5 //To track what stage of sanity they're on var/mood_modifier = 1 //Modifier to allow certain mobs to be less affected by moodlets - var/datum/mood_event/list/mood_events = list() + var/list/datum/mood_event/mood_events = list() var/insanity_effect = 0 //is the owner being punished for low mood? If so, how much? var/obj/screen/mood/screen_obj var/obj/screen/sanity/screen_obj_sanity @@ -191,19 +191,12 @@ if(9) setSanity(sanity+0.4, maximum=INFINITY) - if(owner.has_trait(TRAIT_DEPRESSION)) - if(prob(0.05)) - add_event(null, "depression", /datum/mood_event/depression) - clear_event(null, "jolly") - if(owner.has_trait(TRAIT_JOLLY)) - if(prob(0.05)) - add_event(null, "jolly", /datum/mood_event/jolly) - clear_event(null, "depression") - HandleNutrition(owner) HandleHygiene(owner) /datum/component/mood/proc/setSanity(amount, minimum=SANITY_INSANE, maximum=SANITY_NEUTRAL) + var/mob/living/owner = parent + if(amount == sanity) return // If we're out of the acceptable minimum-maximum range move back towards it in steps of 0.5 @@ -212,7 +205,12 @@ amount = sanity + 0.5 else if(sanity > maximum && amount > sanity - 0.5) amount = sanity - 0.5 - sanity = amount + + // Disturbed stops you from getting any more sane + if(HAS_TRAIT(owner, TRAIT_UNSTABLE)) + sanity = min(amount,sanity) + else + sanity = amount var/mob/living/master = parent switch(sanity) @@ -251,6 +249,8 @@ /datum/component/mood/proc/add_event(datum/source, category, type, param) //Category will override any events in the same category, should be unique unless the event is based on the same thing like hunger. var/datum/mood_event/the_event + if(!istext(category)) + category = REF(category) if(mood_events[category]) the_event = mood_events[category] if(the_event.type != type) @@ -269,6 +269,8 @@ addtimer(CALLBACK(src, .proc/clear_event, null, category), the_event.timeout, TIMER_UNIQUE|TIMER_OVERRIDE) /datum/component/mood/proc/clear_event(datum/source, category) + if(!istext(category)) + category = REF(category) var/datum/mood_event/event = mood_events[category] if(!event) return 0 @@ -316,11 +318,11 @@ var/mob/living/carbon/human/H = L if(isethereal(H)) HandleCharge(H) - if(H.has_trait(TRAIT_NOHUNGER)) + if(HAS_TRAIT(H, TRAIT_NOHUNGER)) return FALSE //no mood events for nutrition switch(L.nutrition) if(NUTRITION_LEVEL_FULL to INFINITY) - if (!L.has_trait(TRAIT_VORACIOUS)) + if (!HAS_TRAIT(L, TRAIT_VORACIOUS)) add_event(null, "nutrition", /datum/mood_event/fat) else add_event(null, "nutrition", /datum/mood_event/wellfed) // round and full @@ -347,25 +349,9 @@ if(ETHEREAL_CHARGE_ALMOSTFULL to ETHEREAL_CHARGE_FULL) add_event(null, "charge", /datum/mood_event/charged) - /datum/component/mood/proc/HandleHygiene(mob/living/carbon/human/H) - switch(H.hygiene) - if(0 to HYGIENE_LEVEL_DIRTY) - if(has_trait(TRAIT_NEAT)) - add_event(null, "neat", /datum/mood_event/dirty) - if(has_trait(TRAIT_NEET)) - add_event(null, "NEET", /datum/mood_event/happy_neet) - HygieneMiasma(H) - if(HYGIENE_LEVEL_DIRTY to HYGIENE_LEVEL_NORMAL) - if(has_trait(TRAIT_NEAT)) - clear_event(null, "neat") - if(has_trait(TRAIT_NEET)) - clear_event(null, "NEET") - if(HYGIENE_LEVEL_NORMAL to HYGIENE_LEVEL_CLEAN) - if(has_trait(TRAIT_NEAT)) - add_event(null, "neat", /datum/mood_event/neat) - if(has_trait(TRAIT_NEET)) - clear_event(null, "NEET") + if(H.hygiene <= HYGIENE_LEVEL_DIRTY) + HygieneMiasma(H) /datum/component/mood/proc/HygieneMiasma(mob/living/carbon/human/H) // Properly stored humans shouldn't create miasma diff --git a/code/datums/components/nanites.dm b/code/datums/components/nanites.dm index a4c14871e01..767d93f6700 100644 --- a/code/datums/components/nanites.dm +++ b/code/datums/components/nanites.dm @@ -56,6 +56,7 @@ RegisterSignal(parent, COMSIG_MOVABLE_HEAR, .proc/on_hear) RegisterSignal(parent, COMSIG_SPECIES_GAIN, .proc/check_viable_biotype) RegisterSignal(parent, COMSIG_NANITE_SIGNAL, .proc/receive_signal) + RegisterSignal(parent, COMSIG_NANITE_COMM_SIGNAL, .proc/receive_comm_signal) /datum/component/nanites/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_HAS_NANITES, @@ -77,7 +78,8 @@ COMSIG_LIVING_MINOR_SHOCK, COMSIG_MOVABLE_HEAR, COMSIG_SPECIES_GAIN, - COMSIG_NANITE_SIGNAL)) + COMSIG_NANITE_SIGNAL, + COMSIG_NANITE_COMM_SIGNAL)) /datum/component/nanites/Destroy() STOP_PROCESSING(SSnanites, src) @@ -205,6 +207,12 @@ var/datum/nanite_program/NP = X NP.receive_signal(code, source) +/datum/component/nanites/proc/receive_comm_signal(datum/source, comm_code, comm_message, comm_source = "an unidentified source") + for(var/X in programs) + if(istype(X, /datum/nanite_program/triggered/comm)) + var/datum/nanite_program/triggered/comm/NP = X + NP.receive_comm_signal(comm_code, comm_message, comm_source) + /datum/component/nanites/proc/check_viable_biotype() if(!(MOB_ORGANIC in host_mob.mob_biotypes) && !(MOB_UNDEAD in host_mob.mob_biotypes)) qdel(src) //bodytype no longer sustains nanites diff --git a/code/datums/components/orbiter.dm b/code/datums/components/orbiter.dm index f3993e0678b..b3de6f863fb 100644 --- a/code/datums/components/orbiter.dm +++ b/code/datums/components/orbiter.dm @@ -1,4 +1,5 @@ /datum/component/orbiter + can_transfer = TRUE dupe_mode = COMPONENT_DUPE_UNIQUE_PASSARGS var/list/orbiters var/datum/callback/orbiter_spy @@ -153,4 +154,4 @@ /atom/proc/transfer_observers_to(atom/target) if(!orbiters || !istype(target) || !get_turf(target) || target == src) return - target.TakeComponent(orbiters) \ No newline at end of file + target.TakeComponent(orbiters) diff --git a/code/datums/components/rot.dm b/code/datums/components/rot.dm index 5aa91c78367..488ccf29580 100644 --- a/code/datums/components/rot.dm +++ b/code/datums/components/rot.dm @@ -46,7 +46,7 @@ return // No decay if formaldehyde in corpse or when the corpse is charred - if(C.reagents.has_reagent("formaldehyde", 15) || C.has_trait(TRAIT_HUSK)) + if(C.reagents.has_reagent("formaldehyde", 15) || HAS_TRAIT(C, TRAIT_HUSK)) return // Also no decay if corpse chilled or not organic/undead diff --git a/code/datums/components/rotation.dm b/code/datums/components/rotation.dm index e82d8c2ed6b..273a4ed8172 100644 --- a/code/datums/components/rotation.dm +++ b/code/datums/components/rotation.dm @@ -44,15 +44,17 @@ if(src.rotation_flags & ROTATION_CLOCKWISE) default_rotation_direction = ROTATION_CLOCKWISE - if(src.rotation_flags & ROTATION_ALTCLICK) +/datum/component/simple_rotation/proc/add_signals() + if(rotation_flags & ROTATION_ALTCLICK) RegisterSignal(parent, COMSIG_CLICK_ALT, .proc/HandRot) RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/ExamineMessage) - if(src.rotation_flags & ROTATION_WRENCH) + if(rotation_flags & ROTATION_WRENCH) RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/WrenchRot) - if(src.rotation_flags & ROTATION_VERBS) +/datum/component/simple_rotation/proc/add_verbs() + if(rotation_flags & ROTATION_VERBS) var/atom/movable/AM = parent - if(src.rotation_flags & ROTATION_FLIP) + if(rotation_flags & ROTATION_FLIP) AM.verbs += /atom/movable/proc/simple_rotate_flip if(src.rotation_flags & ROTATION_CLOCKWISE) AM.verbs += /atom/movable/proc/simple_rotate_clockwise @@ -66,11 +68,30 @@ AM.verbs -= /atom/movable/proc/simple_rotate_clockwise AM.verbs -= /atom/movable/proc/simple_rotate_counterclockwise -/datum/component/simple_rotation/Destroy() +/datum/component/simple_rotation/proc/remove_signals() + UnregisterSignal(parent, list(COMSIG_CLICK_ALT, COMSIG_PARENT_EXAMINE, COMSIG_PARENT_ATTACKBY)) + +/datum/component/simple_rotation/RegisterWithParent() + add_verbs() + add_signals() + . = ..() + +/datum/component/simple_rotation/PostTransfer() + //Because of the callbacks which we don't track cleanly we can't transfer this + //item cleanly, better to let the new of the new item create a new rotation datum + //instead (there's no real state worth transferring) + return COMPONENT_NOTRANSFER + +/datum/component/simple_rotation/UnregisterFromParent() remove_verbs() + remove_signals() + . = ..() + +/datum/component/simple_rotation/Destroy() QDEL_NULL(can_user_rotate) QDEL_NULL(can_be_rotated) QDEL_NULL(after_rotation) + //Signals + verbs removed via UnRegister . = ..() /datum/component/simple_rotation/RemoveComponent() diff --git a/code/datums/components/snail_crawl.dm b/code/datums/components/snail_crawl.dm new file mode 100644 index 00000000000..555bbdeed74 --- /dev/null +++ b/code/datums/components/snail_crawl.dm @@ -0,0 +1,19 @@ +/datum/component/snailcrawl + var/mob/living/carbon/snail + +/datum/component/snailcrawl/Initialize() + RegisterSignal(parent, list(COMSIG_MOVABLE_MOVED), .proc/lubricate) + snail = parent + +/datum/component/snailcrawl/proc/lubricate() + if(snail.resting && !snail.buckled) //s l i d e + var/turf/open/OT = get_turf(snail) + if(isopenturf(OT)) + OT.MakeSlippery(TURF_WET_LUBE, 20) + snail.add_movespeed_modifier(MOVESPEED_ID_SNAIL_CRAWL, update=TRUE, priority=100, multiplicative_slowdown=-7, movetypes=GROUND) + else + snail.remove_movespeed_modifier(MOVESPEED_ID_SNAIL_CRAWL) + +/datum/component/snailcrawl/_RemoveFromParent() + snail.remove_movespeed_modifier(MOVESPEED_ID_SNAIL_CRAWL) + return ..() \ No newline at end of file diff --git a/code/datums/components/spill.dm b/code/datums/components/spill.dm index 9670d7993df..ae41590ddb1 100644 --- a/code/datums/components/spill.dm +++ b/code/datums/components/spill.dm @@ -2,6 +2,7 @@ // Yes this exists purely for the spaghetti meme /datum/component/spill + can_transfer = TRUE var/preexisting_item_flags var/list/droptext @@ -53,4 +54,4 @@ if(droptext) fool.visible_message(arglist(droptext)) if(dropsound) - playsound(master, pick(dropsound), 30) \ No newline at end of file + playsound(master, pick(dropsound), 30) diff --git a/code/datums/components/spooky.dm b/code/datums/components/spooky.dm index 68304e0f941..cb7eea70a42 100644 --- a/code/datums/components/spooky.dm +++ b/code/datums/components/spooky.dm @@ -27,7 +27,7 @@ C.stuttering = 20 if((!istype(H.dna.species, /datum/species/skeleton)) && (!istype(H.dna.species, /datum/species/golem)) && (!istype(H.dna.species, /datum/species/android)) && (!istype(H.dna.species, /datum/species/jelly))) C.adjustStaminaLoss(25) //boneless humanoids don't lose the will to live - to_chat(C, "DOOT") + to_chat(C, "DOOT") spectral_change(H) else //the sound will spook monkeys. diff --git a/code/datums/components/squeak.dm b/code/datums/components/squeak.dm index af7cff6a0fb..6a39c41c424 100644 --- a/code/datums/components/squeak.dm +++ b/code/datums/components/squeak.dm @@ -1,5 +1,4 @@ /datum/component/squeak - var/datum/outputs/squeak_datum var/squeak_chance = 100 var/volume = 30 @@ -11,7 +10,10 @@ var/last_use = 0 var/use_delay = 20 -/datum/component/squeak/Initialize(custom_datum, volume_override, chance_override, step_delay_override, use_delay_override) +/datum/component/squeak/Initialize(volume_override, chance_override, step_delay_override, use_delay_override) + if(datum_outputs) + for(var/i in 1 to length(datum_outputs)) + datum_outputs[i] = SSoutputs.outputs[datum_outputs[i]] if(!isatom(parent)) return COMPONENT_INCOMPATIBLE RegisterSignal(parent, list(COMSIG_ATOM_ENTERED, COMSIG_ATOM_BLOB_ACT, COMSIG_ATOM_HULK_ATTACK, COMSIG_PARENT_ATTACKBY), .proc/play_squeak) @@ -27,7 +29,6 @@ if(istype(parent, /obj/item/clothing/shoes)) RegisterSignal(parent, COMSIG_SHOES_STEP_ACTION, .proc/step_squeak) - squeak_datum = SSoutputs.outputs[custom_datum] if(chance_override) squeak_chance = chance_override if(volume_override) @@ -39,10 +40,10 @@ /datum/component/squeak/proc/play_squeak() if(prob(squeak_chance)) - if(!squeak_datum) + if(!datum_outputs) CRASH("Squeak datum attempted to play missing datum") else - playsound(parent, squeak_datum, volume, 1, -1) + playsound(parent, datum_outputs[1], volume, 1, -1, , , , , , src) /datum/component/squeak/proc/step_squeak() if(steps > step_delay) @@ -51,7 +52,7 @@ else steps++ -/datum/component/squeak/proc/play_squeak_crossed(atom/movable/AM) +/datum/component/squeak/proc/play_squeak_crossed(datum/source, atom/movable/AM) if(isitem(AM)) var/obj/item/I = AM if(I.item_flags & ABSTRACT) @@ -60,6 +61,8 @@ var/obj/item/projectile/P = AM if(P.original != parent) return + if(istype(AM, /obj/effect/dummy/phased_mob)) //don't squeek if they're in a phased/jaunting container. + return var/atom/current_parent = parent if(isturf(current_parent.loc)) play_squeak() @@ -84,3 +87,33 @@ //If the dir changes it means we're going through a bend in the pipes, let's pretend we bumped the wall if(old_dir != new_dir) play_squeak() + +/datum/component/squeak/carp + datum_outputs = list(/datum/outputs/bite) + +/datum/component/squeak/bubbleplush + datum_outputs = list(/datum/outputs/demonattack) + +/datum/component/squeak/lizardplushie + datum_outputs = list(/datum/outputs/slash) + +/datum/component/squeak/snakeplushie + datum_outputs = list(/datum/outputs/bite) + +/datum/component/squeak/nukeplushie + datum_outputs = list(/datum/outputs/punch) + +/datum/component/squeak/slimeplushie + datum_outputs = list(/datum/outputs/squelch) + +/datum/component/squeak/mouse + datum_outputs = list(/datum/outputs/squeak) + +/datum/component/squeak/clownstep + datum_outputs = list(/datum/outputs/clownstep) + +/datum/component/squeak/bikehorn + datum_outputs = list(/datum/outputs/bikehorn) + +/datum/component/squeak/airhorn + datum_outputs = list(/datum/outputs/airhorn) \ No newline at end of file diff --git a/code/datums/components/stationloving.dm b/code/datums/components/stationloving.dm index 91928656e11..29cad9f80ac 100644 --- a/code/datums/components/stationloving.dm +++ b/code/datums/components/stationloving.dm @@ -11,6 +11,7 @@ RegisterSignal(parent, list(COMSIG_MOVABLE_SECLUDED_LOCATION), .proc/relocate) RegisterSignal(parent, list(COMSIG_PARENT_PREQDELETED), .proc/check_deletion) RegisterSignal(parent, list(COMSIG_ITEM_IMBUE_SOUL), .proc/check_soul_imbue) + RegisterSignal(parent, list(COMSIG_ITEM_MARK_RETRIEVAL), .proc/check_mark_retrieval) src.inform_admins = inform_admins src.allow_death = allow_death check_in_bounds() // Just in case something is being created outside of station/centcom @@ -50,6 +51,9 @@ /datum/component/stationloving/proc/check_soul_imbue() return disallow_soul_imbue +/datum/component/stationloving/proc/check_mark_retrieval() + return COMPONENT_BLOCK_MARK_RETRIEVAL + /datum/component/stationloving/proc/in_bounds() var/static/list/allowed_shuttles = typecacheof(list(/area/shuttle/syndicate, /area/shuttle/escape, /area/shuttle/pod_1, /area/shuttle/pod_2, /area/shuttle/pod_3, /area/shuttle/pod_4)) var/turf/T = get_turf(parent) diff --git a/code/datums/components/storage/concrete/_concrete.dm b/code/datums/components/storage/concrete/_concrete.dm index 4d7e8bddc5d..709a21c0d00 100644 --- a/code/datums/components/storage/concrete/_concrete.dm +++ b/code/datums/components/storage/concrete/_concrete.dm @@ -4,6 +4,7 @@ // /mob/living/Move() in /modules/mob/living/living.dm - hiding storage boxes on mob movement /datum/component/storage/concrete + can_transfer = TRUE var/drop_all_on_deconstruct = TRUE var/drop_all_on_destroy = FALSE var/transfer_contents_on_component_transfer = FALSE diff --git a/code/datums/components/storage/concrete/pockets.dm b/code/datums/components/storage/concrete/pockets.dm index 1d59e8f0555..ada34e076b8 100644 --- a/code/datums/components/storage/concrete/pockets.dm +++ b/code/datums/components/storage/concrete/pockets.dm @@ -17,6 +17,7 @@ /datum/component/storage/concrete/pockets/small max_items = 1 + max_w_class = WEIGHT_CLASS_SMALL attack_hand_interact = FALSE /datum/component/storage/concrete/pockets/tiny @@ -24,7 +25,15 @@ max_w_class = WEIGHT_CLASS_TINY attack_hand_interact = FALSE -/datum/component/storage/concrete/pockets/small/detective +/datum/component/storage/concrete/pockets/small/fedora/Initialize() + . = ..() + var/static/list/exception_cache = typecacheof(list( + /obj/item/katana, /obj/item/toy/katana, /obj/item/nullrod/claymore/katana, + /obj/item/energy_katana, /obj/item/gun/ballistic/automatic/tommygun + )) + exception_hold = exception_cache + +/datum/component/storage/concrete/pockets/small/fedora/detective attack_hand_interact = TRUE // so the detectives would discover pockets in their hats /datum/component/storage/concrete/pockets/shoes @@ -71,3 +80,12 @@ /datum/component/storage/concrete/pockets/pocketprotector/real_location() // if the component is reparented to a jumpsuit, the items still go in the protector return original_parent + +/datum/component/storage/concrete/pockets/small/helmet + max_items = 1 + quickdraw = TRUE + +/datum/component/storage/concrete/pockets/small/helmet/Initialize() + . = ..() + can_hold = typecacheof(list(/obj/item/reagent_containers/glass/bottle, + /obj/item/ammo_box/a762)) diff --git a/code/datums/components/storage/storage.dm b/code/datums/components/storage/storage.dm index 5f90c178ad5..0285d83ff52 100644 --- a/code/datums/components/storage/storage.dm +++ b/code/datums/components/storage/storage.dm @@ -14,8 +14,9 @@ dupe_mode = COMPONENT_DUPE_UNIQUE var/datum/component/storage/concrete/master //If not null, all actions act on master and this is just an access point. - var/list/can_hold //if this is set, only things in this typecache will fit. + var/list/can_hold //if this is set, only things in this typecache will fit, if within the size limit. var/list/cant_hold //if this is set, anything in this typecache will not be able to fit. + var/list/exception_hold //if set, these items will be the exception to the max size of object that can fit. var/list/mob/is_using //lazy list of mobs looking at the contents of this storage. @@ -576,7 +577,7 @@ if(!stop_messages) to_chat(M, "[host] cannot hold [I]!") return FALSE - if(I.w_class > max_w_class) + if(I.w_class > max_w_class && !is_type_in_typecache(I, exception_hold)) if(!stop_messages) to_chat(M, "[I] is too big for [host]!") return FALSE @@ -594,7 +595,7 @@ if(!stop_messages) to_chat(M, "[IP] cannot hold [I] as it's a storage item of the same size!") return FALSE //To prevent the stacking of same sized storage items. - if(I.has_trait(TRAIT_NODROP)) //SHOULD be handled in unEquip, but better safe than sorry. + if(HAS_TRAIT(I, TRAIT_NODROP)) //SHOULD be handled in unEquip, but better safe than sorry. if(!stop_messages) to_chat(M, "\the [I] is stuck to your hand, you can't put it in \the [host]!") return FALSE diff --git a/code/datums/components/tactical.dm b/code/datums/components/tactical.dm new file mode 100644 index 00000000000..d7f035b449d --- /dev/null +++ b/code/datums/components/tactical.dm @@ -0,0 +1,34 @@ +/datum/component/tactical + var/allowed_slot + +/datum/component/tactical/Initialize(allowed_slot) + if(!isitem(parent)) + return COMPONENT_INCOMPATIBLE + + src.allowed_slot = allowed_slot + +/datum/component/tactical/RegisterWithParent() + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/modify) + RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/unmodify) + +/datum/component/tactical/UnregisterFromParent() + unmodify() + +/datum/component/fantasy/Destroy() + unmodify() + return ..() + +/datum/component/tactical/proc/modify(obj/item/source, mob/user, slot) + if(allowed_slot && slot != allowed_slot) + unmodify() + return + + var/obj/item/master = parent + var/image/I = image(icon = master.icon, icon_state = master.icon_state, loc = user) + I.copy_overlays(master) + I.override = TRUE + source.add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/everyone, "sneaking_mission", I) + I.layer = ABOVE_MOB_LAYER + +/datum/component/tactical/proc/unmodify(obj/item/source, mob/user) + user.remove_alt_appearance("sneaking_mission") \ No newline at end of file diff --git a/code/datums/components/tether.dm b/code/datums/components/tether.dm new file mode 100644 index 00000000000..faa6182208a --- /dev/null +++ b/code/datums/components/tether.dm @@ -0,0 +1,37 @@ +/datum/component/tether + dupe_mode = COMPONENT_DUPE_UNIQUE_PASSARGS + var/atom/tether_target + var/max_dist + var/tether_name + +/datum/component/tether/Initialize(atom/tether_target, max_dist = 4, tether_name) + if(!isliving(parent) || !istype(tether_target) || !tether_target.loc) + return COMPONENT_INCOMPATIBLE + src.tether_target = tether_target + src.max_dist = max_dist + if (ispath(tether_name, /atom)) + var/atom/tmp = tether_name + src.tether_name = initial(tmp.name) + else + src.tether_name = tether_name + RegisterSignal(parent, list(COMSIG_MOVABLE_PRE_MOVE), .proc/checkTether) + +/datum/component/tether/proc/checkTether(mob/mover, newloc) + if (get_dist(mover,newloc) > max_dist) + to_chat(mover, "The [tether_name] runs out of slack and prevents you from moving!") + return COMPONENT_MOVABLE_BLOCK_PRE_MOVE + + var/atom/blocker + out: + for(var/turf/T in getline(tether_target,newloc)) + if (T.density) + blocker = T + break out + for(var/a in T) + var/atom/A = a + if(A.density && A != mover && A != tether_target) + blocker = A + break out + if (blocker) + to_chat(mover, "The [tether_name] catches on [blocker] and prevents you from moving!") + return COMPONENT_MOVABLE_BLOCK_PRE_MOVE diff --git a/code/datums/components/uplink.dm b/code/datums/components/uplink.dm index 714b72a85f1..07083b6b29f 100644 --- a/code/datums/components/uplink.dm +++ b/code/datums/components/uplink.dm @@ -43,13 +43,14 @@ GLOBAL_LIST_EMPTY(uplinks) RegisterSignal(parent, COMSIG_IMPLANT_EXISTING_UPLINK, .proc/new_implant) else if(istype(parent, /obj/item/pda)) RegisterSignal(parent, COMSIG_PDA_CHANGE_RINGTONE, .proc/new_ringtone) + RegisterSignal(parent, COMSIG_PDA_CHECK_DETONATE, .proc/check_detonate) else if(istype(parent, /obj/item/radio)) RegisterSignal(parent, COMSIG_RADIO_NEW_FREQUENCY, .proc/new_frequency) else if(istype(parent, /obj/item/pen)) RegisterSignal(parent, COMSIG_PEN_ROTATED, .proc/pen_rotation) GLOB.uplinks += src - uplink_items = get_uplink_items(gamemode, TRUE, allow_restricted) + uplink_items = get_uplink_items(_gamemode, TRUE, allow_restricted) if(_owner) owner = _owner @@ -251,6 +252,9 @@ GLOBAL_LIST_EMPTY(uplinks) master.mode = 0 return COMPONENT_STOP_RINGTONE_CHANGE +/datum/component/uplink/proc/check_detonate() + return COMPONENT_PDA_NO_DETONATE + // Radio signal responses /datum/component/uplink/proc/new_frequency(datum/source, list/arguments) diff --git a/code/datums/components/wet_floor.dm b/code/datums/components/wet_floor.dm index b7a88badd31..cdda612446f 100644 --- a/code/datums/components/wet_floor.dm +++ b/code/datums/components/wet_floor.dm @@ -1,5 +1,6 @@ /datum/component/wet_floor dupe_mode = COMPONENT_DUPE_UNIQUE_PASSARGS + can_transfer = TRUE var/highest_strength = TURF_DRY var/lube_flags = NONE //why do we have this? var/list/time_left_list //In deciseconds. @@ -26,14 +27,19 @@ if(!isopenturf(parent)) return COMPONENT_INCOMPATIBLE add_wet(strength, duration_minimum, duration_add, duration_maximum) - RegisterSignal(parent, COMSIG_TURF_IS_WET, .proc/is_wet) - RegisterSignal(parent, COMSIG_TURF_MAKE_DRY, .proc/dry) permanent = _permanent if(!permanent) START_PROCESSING(SSwet_floors, src) addtimer(CALLBACK(src, .proc/gc, TRUE), 1) //GC after initialization. last_process = world.time +/datum/component/wet_floor/RegisterWithParent() + RegisterSignal(parent, COMSIG_TURF_IS_WET, .proc/is_wet) + RegisterSignal(parent, COMSIG_TURF_MAKE_DRY, .proc/dry) + +/datum/component/wet_floor/UnregisterFromParent() + UnregisterSignal(parent, list(COMSIG_TURF_IS_WET, COMSIG_TURF_MAKE_DRY)) + /datum/component/wet_floor/Destroy() STOP_PROCESSING(SSwet_floors, src) var/turf/T = parent @@ -136,12 +142,19 @@ /datum/component/wet_floor/PreTransfer() var/turf/O = parent O.cut_overlay(current_overlay) + //That turf is no longer slippery, we're out of here + //Slippery components don't transfer due to callbacks + qdel(O.GetComponent(/datum/component/slippery)) /datum/component/wet_floor/PostTransfer() if(!isopenturf(parent)) return COMPONENT_INCOMPATIBLE var/turf/T = parent T.add_overlay(current_overlay) + //Make sure to add/update any slippery component on the new turf (update_flags calls LoadComponent) + update_flags() + + //NB it's possible we get deleted after this, due to inherit /datum/component/wet_floor/proc/add_wet(type, duration_minimum = 0, duration_add = 0, duration_maximum = MAXIMUM_WET_TIME, _permanent = FALSE) var/static/list/allowed_types = list(TURF_WET_WATER, TURF_WET_LUBE, TURF_WET_ICE, TURF_WET_PERMAFROST) diff --git a/code/datums/dash_weapon.dm b/code/datums/dash_weapon.dm index 03badb20695..b0a4f417658 100644 --- a/code/datums/dash_weapon.dm +++ b/code/datums/dash_weapon.dm @@ -32,7 +32,7 @@ if(!IsAvailable()) return var/turf/T = get_turf(target) - if(target in view(user.client.view, get_turf(user))) + if(target in view(user.client.view, user)) var/obj/spot1 = new phaseout(get_turf(user), user.dir) user.forceMove(T) playsound(T, dash_sound, 25, 1) @@ -47,4 +47,4 @@ holder.update_action_buttons_icon() if(recharge_sound) playsound(dashing_item, recharge_sound, 50, 1) - to_chat(holder, "[src] now has [current_charges]/[max_charges] charges.") \ No newline at end of file + to_chat(holder, "[src] now has [current_charges]/[max_charges] charges.") diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 4fde3987c7b..bb6d271b450 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -105,7 +105,6 @@ .manifest td, th {border:1px solid [monochrome?"black":"#DEF; background-color:white; color:black"]; padding:.25em} .manifest th {height: 2em; [monochrome?"border-top-width: 3px":"background-color: #48C; color:white"]} .manifest tr.head th { [monochrome?"border-top-width: 1px":"background-color: #488;"] } - .manifest td:first-child {text-align:right} .manifest tr.alt td {[monochrome?"border-top-width: 2px":"background-color: #DEF"]} @@ -255,7 +254,7 @@ M.fields["alg_d"] = "No allergies have been detected in this patient." M.fields["cdi"] = "None" M.fields["cdi_d"] = "No diseases have been diagnosed at the moment." - M.fields["notes"] = "No notes." + M.fields["notes"] = H.get_trait_string(medical) medical += M //Security Record diff --git a/code/datums/datum.dm b/code/datums/datum.dm index cdb195dd821..14bf95d9904 100644 --- a/code/datums/datum.dm +++ b/code/datums/datum.dm @@ -4,10 +4,11 @@ var/list/datum_components //for /datum/components var/list/status_traits var/list/comp_lookup //it used to be for looking up components which had registered a signal but now anything can register - var/list/signal_procs + var/list/list/datum/callback/signal_procs var/signal_enabled = FALSE var/datum_flags = NONE var/datum/weakref/weak_reference + var/list/datum_outputs #ifdef TESTING var/running_find_references @@ -157,4 +158,4 @@ if(!istype(returned, /datum)) qdel(D) else - return returned + return returned \ No newline at end of file diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index 2c833d732d5..9ff4a5a2587 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -620,15 +620,17 @@ if("name") vv_update_display(D, "name", "[D]") if("dir") - if(isatom(D)) - var/dir = D.vars["dir"] - vv_update_display(D, "dir", dir2text(dir) || dir) + var/atom/A = D + if(istype(A)) + vv_update_display(D, "dir", dir2text(A.dir) || A.dir) if("ckey") - if(isliving(D)) - vv_update_display(D, "ckey", D.vars["ckey"] || "No ckey") + var/mob/living/L = D + if(istype(L)) + vv_update_display(D, "ckey", L.ckey || "No ckey") if("real_name") - if(isliving(D)) - vv_update_display(D, "real_name", D.vars["real_name"] || "No real name") + var/mob/living/L = D + if(istype(L)) + vv_update_display(D, "real_name", L.real_name || "No real name") else if(href_list["varnamechange"] && href_list["datumchange"]) if(!check_rights(NONE)) @@ -1246,9 +1248,17 @@ 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(BODY_ZONE_HEAD, BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) - if(edit_action == "augment") - limb_list += BODY_ZONE_CHEST + var/list/limb_list = list() + if(edit_action == "remove" || edit_action == "augment") + for(var/obj/item/bodypart/B in C.bodyparts) + limb_list += B.body_zone + if(edit_action == "remove") + limb_list -= BODY_ZONE_CHEST + else + limb_list = list(BODY_ZONE_HEAD, BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) + for(var/obj/item/bodypart/B in C.bodyparts) + limb_list -= B.body_zone + var/result = input(usr, "Please choose which body part to [edit_action]","[capitalize(edit_action)] Body Part") as null|anything in limb_list if(!C) @@ -1358,7 +1368,7 @@ var/log_msg = "[key_name(usr)] dealt [amount] amount of [Text] damage to [key_name(L)]" message_admins("[key_name(usr)] dealt [amount] amount of [Text] damage to [ADMIN_LOOKUPFLW(L)]") log_admin(log_msg) - admin_ticket_log(L, "[log_msg]") + admin_ticket_log(L, "[log_msg]") vv_update_display(L, Text, "[newamt]") else if(href_list["copyoutfit"]) if(!check_rights(R_SPAWN)) @@ -1366,3 +1376,30 @@ var/mob/living/carbon/human/H = locate(href_list["copyoutfit"]) in GLOB.carbon_list if(istype(H)) H.copy_outfit() + else if(href_list["modquirks"]) + if(!check_rights(R_SPAWN)) + return + + var/mob/living/carbon/human/H = locate(href_list["modquirks"]) in GLOB.mob_list + if(!istype(H)) + to_chat(usr, "This can only be done to instances of type /mob/living/carbon/human") + return + + var/list/options = list("Clear"="Clear") + for(var/x in subtypesof(/datum/quirk)) + var/datum/quirk/T = x + var/qname = initial(T.name) + options[H.has_quirk(T) ? "[qname] (Remove)" : "[qname] (Add)"] = T + + var/result = input(usr, "Choose quirk to add/remove","Quirk Mod") as null|anything in options + if(result) + if(result == "Clear") + for(var/datum/quirk/q in H.roundstart_quirks) + H.remove_quirk(q.type) + else + var/T = options[result] + if(H.has_quirk(T)) + H.remove_quirk(T) + else + H.add_quirk(T,TRUE) + diff --git a/code/datums/diseases/_MobProcs.dm b/code/datums/diseases/_MobProcs.dm index 8c8a68240b6..00a8850dfb3 100644 --- a/code/datums/diseases/_MobProcs.dm +++ b/code/datums/diseases/_MobProcs.dm @@ -8,7 +8,7 @@ /mob/living/proc/CanContractDisease(datum/disease/D) - if(stat == DEAD) + if(stat == DEAD && !D.process_dead) return FALSE if(D.GetDiseaseID() in disease_resistances) @@ -117,7 +117,7 @@ /mob/living/carbon/AirborneContractDisease(datum/disease/D, force_spread) if(internal) return - if(has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(src, TRAIT_NOBREATH)) return ..() @@ -137,7 +137,7 @@ /mob/living/carbon/human/CanContractDisease(datum/disease/D) if(dna) - if(has_trait(TRAIT_VIRUSIMMUNE) && !D.bypasses_immunity) + if(HAS_TRAIT(src, TRAIT_VIRUSIMMUNE) && !D.bypasses_immunity) return FALSE for(var/thing in D.required_organs) diff --git a/code/datums/diseases/_disease.dm b/code/datums/diseases/_disease.dm index e16da3c60c7..5e3f061ef1d 100644 --- a/code/datums/diseases/_disease.dm +++ b/code/datums/diseases/_disease.dm @@ -55,6 +55,13 @@ D.after_add() infectee.med_hud_set_status() + var/turf/source_turf = get_turf(infectee) + log_virus("[key_name(infectee)] was infected by virus: [src.admin_details()] at [loc_name(source_turf)]") + +//Return a string for admin logging uses, should describe the disease in detail +/datum/disease/proc/admin_details() + return "[src.name] : [src.type]" + /datum/disease/proc/stage_act() var/cure = has_cure() diff --git a/code/datums/diseases/advance/advance.dm b/code/datums/diseases/advance/advance.dm index dab992032bf..469495ffee0 100644 --- a/code/datums/diseases/advance/advance.dm +++ b/code/datums/diseases/advance/advance.dm @@ -117,6 +117,13 @@ //this is a new disease starting over at stage 1, so processing is not copied return A +//Describe this disease to an admin in detail (for logging) +/datum/disease/advance/admin_details() + var/list/name_symptoms = list() + for(var/datum/symptom/S in symptoms) + name_symptoms += S.name + return "[name] sym:[english_list(name_symptoms)] r:[totalResistance()] s:[totalStealth()] ss:[totalStageSpeed()] t:[totalTransmittable()]" + /* NEW PROCS @@ -431,7 +438,8 @@ var/list/name_symptoms = list() for(var/datum/symptom/S in D.symptoms) name_symptoms += S.name - message_admins("[key_name_admin(user)] has triggered a custom virus outbreak of [D.name]! It has these symptoms: [english_list(name_symptoms)]") + message_admins("[key_name_admin(user)] has triggered a custom virus outbreak of [D.admin_details()]") + log_virus("[key_name(user)] has triggered a custom virus outbreak of [D.admin_details()]!") /datum/disease/advance/proc/totalStageSpeed() diff --git a/code/datums/diseases/advance/symptoms/beard.dm b/code/datums/diseases/advance/symptoms/beard.dm index 6b261838289..e83132f082c 100644 --- a/code/datums/diseases/advance/symptoms/beard.dm +++ b/code/datums/diseases/advance/symptoms/beard.dm @@ -27,25 +27,17 @@ BONUS symptom_delay_min = 18 symptom_delay_max = 36 + var/list/beard_order = list("Beard (Jensen)", "Beard (Full)", "Beard (Dwarf)", "Beard (Very Long)") + /datum/symptom/beard/Activate(datum/disease/advance/A) if(!..()) return var/mob/living/M = A.affected_mob if(ishuman(M)) var/mob/living/carbon/human/H = M - switch(A.stage) - if(1, 2) - to_chat(H, "Your chin itches.") - if(H.facial_hair_style == "Shaved") - H.facial_hair_style = "Jensen Beard" - H.update_hair() - if(3, 4) - to_chat(H, "You feel tough.") - if(!(H.facial_hair_style == "Dwarf Beard") && !(H.facial_hair_style == "Very Long Beard") && !(H.facial_hair_style == "Full Beard")) - H.facial_hair_style = "Full Beard" - H.update_hair() - else - to_chat(H, "You feel manly!") - if(!(H.facial_hair_style == "Dwarf Beard") && !(H.facial_hair_style == "Very Long Beard")) - H.facial_hair_style = pick("Dwarf Beard", "Very Long Beard") - H.update_hair() + var/index = min(max(beard_order.Find(H.facial_hair_style)+1, A.stage-1), beard_order.len) + if(index > 0 && H.facial_hair_style != beard_order[index]) + to_chat(H, "Your chin itches.") + H.facial_hair_style = beard_order[index] + H.update_hair() + diff --git a/code/datums/diseases/advance/symptoms/cough.dm b/code/datums/diseases/advance/symptoms/cough.dm index 4741dba31e3..b0b9a8cbb77 100644 --- a/code/datums/diseases/advance/symptoms/cough.dm +++ b/code/datums/diseases/advance/symptoms/cough.dm @@ -40,7 +40,7 @@ BONUS return if(A.properties["stealth"] >= 4) suppress_warning = TRUE - if(A.spread_flags &= DISEASE_SPREAD_AIRBORNE) //infect bystanders + if(A.spread_flags & DISEASE_SPREAD_AIRBORNE) //infect bystanders infective = TRUE if(A.properties["resistance"] >= 3) //strong enough to drop items power = 1.5 diff --git a/code/datums/diseases/advance/symptoms/deafness.dm b/code/datums/diseases/advance/symptoms/deafness.dm index cc388f0b598..7fadbdc3637 100644 --- a/code/datums/diseases/advance/symptoms/deafness.dm +++ b/code/datums/diseases/advance/symptoms/deafness.dm @@ -48,7 +48,7 @@ Bonus if(prob(base_message_chance) && !suppress_warning) to_chat(M, "[pick("You hear a ringing in your ear.", "Your ears pop.")]") if(5) - if(power > 2) + if(power >= 2) var/obj/item/organ/ears/ears = M.getorganslot(ORGAN_SLOT_EARS) if(istype(ears) && ears.ear_damage < UNHEALING_EAR_DAMAGE) to_chat(M, "Your ears pop painfully and start bleeding!") diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index aff7eaa2841..39306b4b944 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -233,7 +233,7 @@ /datum/symptom/heal/coma/CanHeal(datum/disease/advance/A) var/mob/living/M = A.affected_mob - if(M.has_trait(TRAIT_DEATHCOMA)) + if(HAS_TRAIT(M, TRAIT_DEATHCOMA)) return power else if(M.IsUnconscious() || M.stat == UNCONSCIOUS) return power * 0.9 @@ -286,7 +286,7 @@ /datum/symptom/heal/water name = "Tissue Hydration" - desc = "The virus uses excess water inside and outside the body to repair damaged tissue cells. More effective against burns." + desc = "The virus uses excess water inside and outside the body to repair damaged tissue cells. More effective when using holy water and against burns." stealth = 0 resistance = -1 stage_speed = 0 @@ -302,7 +302,7 @@ return if(A.properties["stage_rate"] >= 7) power = 2 - if(A.properties["stealth"] >= 2) + if(A.properties["resistance"] >= 5) absorption_coeff = 0.25 /datum/symptom/heal/water/CanHeal(datum/disease/advance/A) diff --git a/code/datums/diseases/advance/symptoms/oxygen.dm b/code/datums/diseases/advance/symptoms/oxygen.dm index 12647494dac..177df0fbd79 100644 --- a/code/datums/diseases/advance/symptoms/oxygen.dm +++ b/code/datums/diseases/advance/symptoms/oxygen.dm @@ -57,13 +57,13 @@ Bonus var/mob/living/carbon/M = A.affected_mob switch(A.stage) if(3) - M.remove_trait(TRAIT_NOBREATH, DISEASE_TRAIT) + REMOVE_TRAIT(M, TRAIT_NOBREATH, DISEASE_TRAIT) if(4) - M.add_trait(TRAIT_NOBREATH, DISEASE_TRAIT) + ADD_TRAIT(M, TRAIT_NOBREATH, DISEASE_TRAIT) return TRUE /datum/symptom/oxygen/End(datum/disease/advance/A) if(!..()) return if(A.stage >= 4) - A.affected_mob.remove_trait(TRAIT_NOBREATH, DISEASE_TRAIT) + REMOVE_TRAIT(A.affected_mob, TRAIT_NOBREATH, DISEASE_TRAIT) diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm index ffc145bd722..8d7cc5ed708 100644 --- a/code/datums/diseases/advance/symptoms/sensory.dm +++ b/code/datums/diseases/advance/symptoms/sensory.dm @@ -85,14 +85,14 @@ if(4, 5) M.restoreEars() - if(M.has_trait(TRAIT_BLIND, EYE_DAMAGE)) + if(HAS_TRAIT_FROM(M, TRAIT_BLIND, EYE_DAMAGE)) if(prob(20)) to_chat(M, "Your vision slowly returns...") M.cure_blind(EYE_DAMAGE) M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(35) - else if(M.has_trait(TRAIT_NEARSIGHT, EYE_DAMAGE)) + else if(HAS_TRAIT_FROM(M, TRAIT_NEARSIGHT, EYE_DAMAGE)) to_chat(M, "You can finally focus your eyes on distant objects.") M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(10) diff --git a/code/datums/diseases/advance/symptoms/species.dm b/code/datums/diseases/advance/symptoms/species.dm index d0c32f32449..e56179383f4 100644 --- a/code/datums/diseases/advance/symptoms/species.dm +++ b/code/datums/diseases/advance/symptoms/species.dm @@ -27,4 +27,4 @@ /datum/symptom/inorganic_adaptation/Start(datum/disease/advance/A) if(!..()) return - A.infectable_biotypes |= MOB_INORGANIC \ No newline at end of file + A.infectable_biotypes |= MOB_INORGANIC diff --git a/code/datums/diseases/advance/symptoms/vision.dm b/code/datums/diseases/advance/symptoms/vision.dm index 0b42012f76b..eec16a30cd7 100644 --- a/code/datums/diseases/advance/symptoms/vision.dm +++ b/code/datums/diseases/advance/symptoms/vision.dm @@ -61,11 +61,11 @@ Bonus M.become_nearsighted(EYE_DAMAGE) if(prob(eyes.eye_damage - 10 + 1)) if(!remove_eyes) - if(!M.has_trait(TRAIT_BLIND)) + if(!HAS_TRAIT(M, TRAIT_BLIND)) to_chat(M, "You go blind!") M.become_blind(EYE_DAMAGE) else - M.visible_message("[M]'s eyes fall off their sockets!", "Your eyes fall off their sockets!") + M.visible_message("[M]'s eyes fall out of their sockets!", "Your eyes fall out of their sockets!") eyes.Remove(M) eyes.forceMove(get_turf(M)) else diff --git a/code/datums/diseases/advance/symptoms/voice_change.dm b/code/datums/diseases/advance/symptoms/voice_change.dm index 5f0b83e5c8d..7a4abfc757a 100644 --- a/code/datums/diseases/advance/symptoms/voice_change.dm +++ b/code/datums/diseases/advance/symptoms/voice_change.dm @@ -31,6 +31,7 @@ Bonus var/scramble_language = FALSE var/datum/language/current_language var/datum/language_holder/original_language + var/datum/language_holder/mob_language threshold_desc = "Transmission 14: The host's language center of the brain is damaged, leading to complete inability to speak or understand any language.
\ Stage Speed 7: Changes voice more often.
\ Stealth 3: The symptom remains hidden until active." @@ -47,7 +48,7 @@ Bonus if(A.properties["transmittable"] >= 14) //random language scramble_language = TRUE var/mob/living/M = A.affected_mob - var/datum/language_holder/mob_language = M.get_language_holder() + mob_language = M.get_language_holder() original_language = mob_language.copy() /datum/symptom/voice_change/Activate(datum/disease/advance/A) @@ -66,7 +67,7 @@ Bonus H.remove_language(current_language) current_language = pick(subtypesof(/datum/language) - /datum/language/common) H.grant_language(current_language) - var/datum/language_holder/mob_language = H.get_language_holder() + mob_language = H.get_language_holder() mob_language.only_speaks_language = current_language /datum/symptom/voice_change/End(datum/disease/advance/A) @@ -77,5 +78,8 @@ Bonus if(scramble_language) var/mob/living/M = A.affected_mob M.copy_known_languages_from(original_language, TRUE) + mob_language = M.get_language_holder() + mob_language.only_speaks_language = null + M.selected_default_language = original_language current_language = null QDEL_NULL(original_language) diff --git a/code/datums/diseases/decloning.dm b/code/datums/diseases/decloning.dm new file mode 100644 index 00000000000..2b668e11599 --- /dev/null +++ b/code/datums/diseases/decloning.dm @@ -0,0 +1,59 @@ +/datum/disease/decloning + form = "Virus" + name = "Cellular Degeneration" + max_stages = 5 + stage_prob = 1 + cure_text = "Rezadone or death." + agent = "Severe Genetic Damage" + viable_mobtypes = list(/mob/living/carbon/human) + desc = @"If left untreated the subject will [REDACTED]!" + severity = "Dangerous!" + cures = list("rezadone") + disease_flags = CAN_CARRY|CAN_RESIST + spread_flags = DISEASE_SPREAD_NON_CONTAGIOUS + process_dead = TRUE + +/datum/disease/decloning/stage_act() + ..() + if(affected_mob.stat == DEAD) + cure() + return + switch(stage) + if(2) + if(prob(2)) + affected_mob.emote("itch") + if(prob(2)) + affected_mob.emote("yawn") + if(3) + if(prob(2)) + affected_mob.emote("itch") + if(prob(2)) + affected_mob.emote("drool") + if(prob(3)) + affected_mob.adjustCloneLoss(1) + if(prob(2)) + to_chat(affected_mob, "Your skin feels strange.") + + if(4) + if(prob(2)) + affected_mob.emote("itch") + if(prob(2)) + affected_mob.emote("drool") + if(prob(5)) + affected_mob.adjustBrainLoss(1, 170) + affected_mob.adjustCloneLoss(2) + if(prob(15)) + affected_mob.stuttering += 3 + if(5) + if(prob(2)) + affected_mob.emote("itch") + if(prob(2)) + affected_mob.emote("drool") + if(prob(5)) + to_chat(affected_mob, "Your skin starts degrading!") + if(prob(10)) + affected_mob.adjustCloneLoss(5) + affected_mob.adjustBrainLoss(2, 170) + if(affected_mob.cloneloss >= 100) + affected_mob.visible_message("[affected_mob] skin turns to dust!", "Your skin turns to dust!") + affected_mob.dust() \ No newline at end of file diff --git a/code/datums/diseases/gastrolisis.dm b/code/datums/diseases/gastrolisis.dm new file mode 100644 index 00000000000..6ae1eb01a26 --- /dev/null +++ b/code/datums/diseases/gastrolisis.dm @@ -0,0 +1,85 @@ +/datum/disease/gastrolosis + name = "Invasive Gastrolosis" + max_stages = 4 + spread_text = "Degenerative Virus" + spread_flags = DISEASE_SPREAD_SPECIAL + cure_text = "Salt and mutadone" + agent = "Agent S and DNA restructuring" + viable_mobtypes = list(/mob/living/carbon/human) + stage_prob = 1 + disease_flags = CURABLE + cures = list("sodiumchloride", "mutadone") + +/datum/disease/gastrolosis/stage_act() + ..() + if(is_species(affected_mob, /datum/species/snail)) + cure() + switch(stage) + if(2) + if(prob(2)) + affected_mob.emote("gag") + if(prob(1)) + var/turf/open/OT = get_turf(affected_mob) + if(isopenturf(OT)) + OT.MakeSlippery(TURF_WET_LUBE, 40) + if(3) + if(prob(5)) + affected_mob.emote("gag") + if(prob(5)) + var/turf/open/OT = get_turf(affected_mob) + if(isopenturf(OT)) + OT.MakeSlippery(TURF_WET_LUBE, 100) + if(4) + var/obj/item/organ/eyes/eyes = locate(/obj/item/organ/eyes/snail) in affected_mob.internal_organs + if(!eyes && prob(5)) + var/obj/item/organ/eyes/snail/new_eyes = new() + new_eyes.Insert(affected_mob, drop_if_replaced = TRUE) + affected_mob.visible_message("[affected_mob]'s eyes fall out, with snail eyes taking its place!", \ + "You scream in pain as your eyes are pushed out by your new snail eyes!") + affected_mob.emote("scream") + return + var/obj/item/shell = affected_mob.get_item_by_slot(SLOT_BACK) + if(!istype(shell, /obj/item/storage/backpack/snail)) + shell = null + if(!shell && prob(5)) + if(affected_mob.dropItemToGround(affected_mob.get_item_by_slot(SLOT_BACK))) + affected_mob.equip_to_slot_or_del(new /obj/item/storage/backpack/snail(affected_mob), SLOT_BACK) + affected_mob.visible_message("[affected_mob] grows a grotesque shell on their back!", \ + "You scream in pain as a shell pushes itself out from under your skin!") + affected_mob.emote("scream") + return + var/obj/item/organ/tongue/tongue = locate(/obj/item/organ/tongue/snail) in affected_mob.internal_organs + if(!tongue && prob(5)) + var/obj/item/organ/tongue/snail/new_tongue = new() + new_tongue.Insert(affected_mob) + to_chat(affected_mob, "You feel your speech slow down") + return + if(shell && eyes && tongue && prob(5)) + affected_mob.set_species(/datum/species/snail) + affected_mob.visible_message("[affected_mob] turns into a snail!", \ + "You turned into a snail person! You feel an urge to cccrrraaawwwlll...") + cure() + if(prob(10)) + affected_mob.emote("gag") + if(prob(10)) + var/turf/open/OT = get_turf(affected_mob) + if(isopenturf(OT)) + OT.MakeSlippery(TURF_WET_LUBE, 100) + +/datum/disease/gastrolosis/cure() + . = ..() + if(!is_species(affected_mob, /datum/species/snail)) //undo all the snail fuckening + var/mob/living/carbon/human/H = affected_mob + var/obj/item/organ/tongue/tongue = locate(/obj/item/organ/tongue/snail) in H.internal_organs + if(tongue) + var/obj/item/organ/tongue/new_tongue = new H.dna.species.mutanttongue () + new_tongue.Insert(H) + var/obj/item/organ/eyes/eyes = locate(/obj/item/organ/eyes/snail) in H.internal_organs + if(eyes) + var/obj/item/organ/eyes/new_eyes = new H.dna.species.mutanteyes () + new_eyes.Insert(H) + var/obj/item/storage/backpack/bag = H.get_item_by_slot(SLOT_BACK) + if(istype(bag, /obj/item/storage/backpack/snail)) + bag.emptyStorage() + H.doUnEquip(bag, TRUE, no_move = TRUE) + qdel(bag) \ No newline at end of file diff --git a/code/datums/diseases/transformation.dm b/code/datums/diseases/transformation.dm index 51abd1f47ac..b967b7a5861 100644 --- a/code/datums/diseases/transformation.dm +++ b/code/datums/diseases/transformation.dm @@ -120,7 +120,7 @@ if(affected_mob.mind && !is_monkey(affected_mob.mind)) add_monkey(affected_mob.mind) if(ishuman(affected_mob)) - var/mob/living/carbon/monkey/M = affected_mob.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSE) + var/mob/living/carbon/monkey/M = affected_mob.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSTUNS | TR_KEEPREAGENTS | TR_KEEPSE) M.ventcrawler = VENTCRAWLER_ALWAYS diff --git a/code/datums/dna.dm b/code/datums/dna.dm index 040aeffc026..5d4e6f08876 100644 --- a/code/datums/dna.dm +++ b/code/datums/dna.dm @@ -249,61 +249,22 @@ if(-INFINITY to 0) message = "You can feel your DNA exploding, we need to do something fast!" if(stability <= 0) - addtimer(CALLBACK(src, .proc/something_horrible), 600) //you've got 60 seconds to get your shit togheter + holder.apply_status_effect(STATUS_EFFECT_DNA_MELT) if(message) to_chat(holder, message) -/datum/dna/proc/something_horrible() - if(!holder || (stability > 0)) - return - var/instability = -stability - remove_all_mutations() - stability = 100 - if(!ishuman(holder)) - holder.gib() - return - var/mob/living/carbon/human/H = holder - if(prob(max(70-instability,0))) - switch(rand(0,3)) //not complete and utter death - if(0) - H.monkeyize() - if(1) - H.gain_trauma(/datum/brain_trauma/severe/paralysis) - if(2) - H.corgize() - if(3) - to_chat(H, "Oh, we actually feel quite alright!") - else - switch(rand(0,3)) - if(0) - H.gib() - if(1) - H.dust() - - if(2) - H.death() - H.petrify(INFINITY) - if(3) - if(prob(90)) - var/obj/item/bodypart/BP = H.get_bodypart(pick(BODY_ZONE_CHEST,BODY_ZONE_HEAD)) - if(BP) - BP.dismember() - else - H.gib() - else - H.set_species(/datum/species/dullahan) - //used to update dna UI, UE, and dna.real_name. /datum/dna/proc/update_dna_identity() uni_identity = generate_uni_identity() unique_enzymes = generate_unique_enzymes() -/datum/dna/proc/initialize_dna(newblood_type) +/datum/dna/proc/initialize_dna(newblood_type, skip_index = FALSE) if(newblood_type) blood_type = newblood_type unique_enzymes = generate_unique_enzymes() uni_identity = generate_uni_identity() - generate_dna_blocks() + if(!skip_index) //I hate this + generate_dna_blocks() features = random_features() @@ -318,7 +279,7 @@ /datum/dna/stored/check_mutation(mutation_name) return -/datum/dna/stored/remove_all_mutations() +/datum/dna/stored/remove_all_mutations(list/classes, mutadone = FALSE) return /datum/dna/stored/remove_mutation_group(list/group) @@ -368,8 +329,8 @@ return dna -/mob/living/carbon/human/proc/hardset_dna(ui, list/mutation_index, newreal_name, newblood_type, datum/species/mrace, newfeatures) - +/mob/living/carbon/human/proc/hardset_dna(ui, list/mutation_index, newreal_name, newblood_type, datum/species/mrace, newfeatures, list/mutations, force_transfer_mutations) +//Do not use force_transfer_mutations for stuff like cloners without some precautions, otherwise some conditional mutations could break (timers, drill hat etc) if(newfeatures) dna.features = newfeatures @@ -399,6 +360,11 @@ update_body_parts() update_mutations_overlay() + if(LAZYLEN(mutations)) + for(var/M in mutations) + var/datum/mutation/human/HM = M + if(HM.allow_transfer || force_transfer_mutations) + dna.force_give(new HM.type(HM.class, copymut=HM)) //using force_give since it may include exotic mutations that otherwise wont be handled properly /mob/living/carbon/proc/create_dna() dna = new /datum/dna(src) @@ -596,3 +562,91 @@ return value /////////////////////////// DNA HELPER-PROCS + +/mob/living/carbon/human/proc/something_horrible(ignore_stability) + if(!has_dna()) //shouldn't ever happen anyway so it's just in really weird cases + return + if(!ignore_stability && (dna.stability > 0)) + return + var/instability = -dna.stability + dna.remove_all_mutations() + dna.stability = 100 + if(prob(max(70-instability,0))) + switch(rand(0,10)) //not complete and utter death + if(0) + monkeyize() + if(1) + gain_trauma(/datum/brain_trauma/severe/paralysis/paraplegic) + new/obj/vehicle/ridden/wheelchair(get_turf(src)) //don't buckle, because I can't imagine to plethora of things to go through that could otherwise break + to_chat(src, "My flesh turned into a wheelchair and I can't feel my legs.") + if(2) + corgize() + if(3) + to_chat(src, "Oh, I actually feel quite alright!") + if(4) + to_chat(src, "Oh, I actually feel quite alright!") //you thought + physiology.damage_resistance = -20000 + if(5) + to_chat(src, "Oh, I actually feel quite alright!") + reagents.add_reagent("mutationtoxin2", 10) + if(6) + apply_status_effect(STATUS_EFFECT_GO_AWAY) + if(7) + to_chat(src, "Oh, I actually feel quite alright!") + ForceContractDisease(new/datum/disease/decloning()) //slow acting, non-viral clone damage based GBS + if(8) + var/list/elligible_organs = list() + for(var/obj/item/organ/O in internal_organs) //make sure we dont get an implant or cavity item + elligible_organs += O + vomit(20, TRUE) + if(elligible_organs.len) + var/obj/item/organ/O = pick(elligible_organs) + O.Remove(src) + visible_message("[src] vomits up their [O.name]!", "You vomit up your [O.name]") //no "vomit up your the heart" + O.forceMove(drop_location()) + if(prob(20)) + O.animate_atom_living() + if(9 to 10) + ForceContractDisease(new/datum/disease/gastrolosis()) + to_chat(src, "Oh, I actually feel quite alright!") + else + switch(rand(0,5)) + if(0) + gib() + if(1) + dust() + + if(2) + death() + petrify(INFINITY) + if(3) + if(prob(95)) + var/obj/item/bodypart/BP = get_bodypart(pick(BODY_ZONE_CHEST,BODY_ZONE_HEAD)) + if(BP) + BP.dismember() + else + gib() + else + set_species(/datum/species/dullahan) + if(4) + visible_message("[src]'s skin melts off!", "Your skin melts off!") + spawn_gibs() + set_species(/datum/species/skeleton) + if(prob(90)) + addtimer(CALLBACK(src, .proc/death), 30) + if(mind) + mind.hasSoul = FALSE + if(5) + to_chat(src, "LOOK UP!") + addtimer(CALLBACK(src, .proc/something_horrible_mindmelt), 30) + + +/mob/living/carbon/human/proc/something_horrible_mindmelt() + if(!HAS_TRAIT(src, TRAIT_BLIND)) + var/obj/item/organ/eyes/eyes = locate(/obj/item/organ/eyes) in internal_organs + if(!eyes) + return + eyes.Remove(src) + qdel(eyes) + visible_message("[src] looks up and their eyes melt away!", "='userdanger'>I understand now.") + addtimer(CALLBACK(src, .proc/adjustBrainLoss, 200), 20) diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index e25baf18ea2..4f5cc583357 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -148,5 +148,5 @@ if(isliving(user)) var/mob/living/L = user - if(L.has_trait(TRAIT_EMOTEMUTE)) + if(HAS_TRAIT(L, TRAIT_EMOTEMUTE)) return FALSE diff --git a/code/datums/ert.dm b/code/datums/ert.dm index 2eb76f924e2..7fd7b8c526d 100644 --- a/code/datums/ert.dm +++ b/code/datums/ert.dm @@ -56,7 +56,7 @@ /datum/ert/janitor roles = list(/datum/antagonist/ert/janitor, /datum/antagonist/ert/janitor/heavy) - leader_role = /datum/outfit/ert/janitor/heavy + leader_role = /datum/antagonist/ert/janitor/heavy teamsize = 4 opendoors = FALSE rename_team = "Janitor" diff --git a/code/datums/explosion.dm b/code/datums/explosion.dm index 4c2659e37a2..27c483bc12a 100644 --- a/code/datums/explosion.dm +++ b/code/datums/explosion.dm @@ -221,7 +221,6 @@ GLOBAL_LIST_EMPTY(explosions) if(!I.anchored) var/throw_range = rand(throw_dist, max_range) var/turf/throw_at = get_ranged_target_turf(I, throw_dir, throw_range) - I.throw_speed = EXPLOSION_THROW_SPEED //Temporarily change their throw_speed for embedding purposes (Reset when it finishes throwing, regardless of hitting anything) I.throw_at(throw_at, throw_range, EXPLOSION_THROW_SPEED) //wait for the lists to repop diff --git a/code/datums/helper_datums/getrev.dm b/code/datums/helper_datums/getrev.dm index 3ff0d04c692..c9e96d6bc1f 100644 --- a/code/datums/helper_datums/getrev.dm +++ b/code/datums/helper_datums/getrev.dm @@ -27,8 +27,8 @@ for(var/line in testmerge) var/datum/tgs_revision_information/test_merge/tm = line - msg += "Test merge active of PR #[tm.number] commit [tm.commit]" - SSblackbox.record_feedback("associative", "testmerged_prs", 1, list("number" = "[tm.number]", "commit" = "[tm.commit]", "title" = "[tm.title]", "author" = "[tm.author]")) + msg += "Test merge active of PR #[tm.number] commit [tm.pull_request_commit]" + SSblackbox.record_feedback("associative", "testmerged_prs", 1, list("number" = "[tm.number]", "commit" = "[tm.pull_request_commit]", "title" = "[tm.title]", "author" = "[tm.author]")) if(commit && commit != originmastercommit) msg += "HEAD: [commit]" diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index 1f78eeec079..7a8d772d4d4 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -56,7 +56,7 @@ var/area/A = get_area(curturf) var/area/B = get_area(destturf) - if(!forced && (teleatom.has_trait(TRAIT_NO_TELEPORT) || A.noteleport || B.noteleport)) + if(!forced && (HAS_TRAIT(teleatom, TRAIT_NO_TELEPORT) || A.noteleport || B.noteleport)) return FALSE if(SEND_SIGNAL(destturf, COMSIG_ATOM_INTERCEPT_TELEPORT, channel, curturf, destturf)) diff --git a/code/datums/helper_datums/topic_input.dm b/code/datums/helper_datums/topic_input.dm deleted file mode 100644 index 3e43905f1fe..00000000000 --- a/code/datums/helper_datums/topic_input.dm +++ /dev/null @@ -1,62 +0,0 @@ -/datum/topic_input - var/href - var/list/href_list - -/datum/topic_input/New(thref,list/thref_list) - href = thref - href_list = thref_list.Copy() - return - -/datum/topic_input/proc/get(i) - return listgetindex(href_list,i) - -/datum/topic_input/proc/getAndLocate(i) - var/t = get(i) - if(t) - t = locate(t) - if (istext(t)) - t = null - return t || null - -/datum/topic_input/proc/getNum(i) - var/t = get(i) - if(t) - t = text2num(t) - return isnum(t) ? t : null - -/datum/topic_input/proc/getObj(i) - var/t = getAndLocate(i) - return isobj(t) ? t : null - -/datum/topic_input/proc/getMob(i) - var/t = getAndLocate(i) - return ismob(t) ? t : null - -/datum/topic_input/proc/getTurf(i) - var/t = getAndLocate(i) - return isturf(t) ? t : null - -/datum/topic_input/proc/getAtom(i) - return getType(i, /atom) - -/datum/topic_input/proc/getArea(i) - var/t = getAndLocate(i) - return isarea(t) ? t : null - -/datum/topic_input/proc/getStr(i)//params should always be text, but... - var/t = get(i) - return istext(t) ? t : null - -/datum/topic_input/proc/getType(i,type) - var/t = getAndLocate(i) - return istype(t,type) ? t : null - -/datum/topic_input/proc/getPath(i) - var/t = get(i) - if(t) - t = text2path(t) - return ispath(t) ? t : null - -/datum/topic_input/proc/getList(i) - var/t = getAndLocate(i) - return islist(t) ? t : null diff --git a/code/datums/holocall.dm b/code/datums/holocall.dm index 46e583eb572..9c61ea81b3c 100644 --- a/code/datums/holocall.dm +++ b/code/datums/holocall.dm @@ -12,7 +12,12 @@ /mob/camera/aiEye/remote/holo/setLoc() . = ..() var/obj/machinery/holopad/H = origin - H.move_hologram(eye_user, loc) + H?.move_hologram(eye_user, loc) + +/obj/machinery/holopad/remove_eye_control(mob/living/user) + if(user.client) + user.reset_perspective(null) + user.remote_control = null //this datum manages it's own references @@ -54,11 +59,6 @@ /datum/holocall/Destroy() QDEL_NULL(hangup) - var/user_good = !QDELETED(user) - if(user_good) - user.reset_perspective() - user.remote_control = null - if(!QDELETED(eye)) QDEL_NULL(eye) diff --git a/code/datums/hud.dm b/code/datums/hud.dm index 21999eeda65..7b69da07778 100644 --- a/code/datums/hud.dm +++ b/code/datums/hud.dm @@ -28,7 +28,9 @@ GLOBAL_LIST_INIT(huds, list( ANTAG_HUD_CLOCKWORK = new/datum/atom_hud/antag(), ANTAG_HUD_BROTHER = new/datum/atom_hud/antag/hidden(), ANTAG_HUD_HIVE = new/datum/atom_hud/antag/hidden(), - ANTAG_HUD_OBSESSED = new/datum/atom_hud/antag/hidden() + ANTAG_HUD_OBSESSED = new/datum/atom_hud/antag/hidden(), + ANTAG_HUD_FUGITIVE = new/datum/atom_hud/antag(), + ANTAG_HUD_HIVEAWAKE = new/datum/atom_hud/antag() )) /datum/atom_hud diff --git a/code/datums/martial/cqc.dm b/code/datums/martial/cqc.dm index c305b1c2541..fb8acbe2e49 100644 --- a/code/datums/martial/cqc.dm +++ b/code/datums/martial/cqc.dm @@ -72,6 +72,7 @@ D.apply_damage(10, A.dna.species.attack_type) log_combat(A, D, "kicked (CQC)") if(D.IsParalyzed() && !D.stat) + log_combat(A, D, "knocked out (Head kick)(CQC)") D.visible_message("[A] kicks [D]'s head, knocking [D.p_them()] out!", \ "[A] kicks your head, knocking you out!") playsound(get_turf(A), 'sound/weapons/genhit1.ogg', 50, 1, -1) @@ -82,7 +83,8 @@ /datum/martial_art/cqc/proc/Pressure(mob/living/carbon/human/A, mob/living/carbon/human/D) if(!can_use(A)) return FALSE - D.visible_message("[A] forces their arm on [D]'s neck!") + log_combat(A, D, "pressured (CQC)") + D.visible_message("[A] punches [D]'s neck!") D.adjustStaminaLoss(60) playsound(get_turf(A), 'sound/weapons/cqchit1.ogg', 50, 1, -1) return TRUE @@ -93,6 +95,7 @@ if(!can_use(A)) return FALSE if(!D.stat) + log_combat(A, D, "restrained (CQC)") D.visible_message("[A] locks [D] into a restraining position!", \ "[A] locks you into a restraining position!") D.adjustStaminaLoss(20) @@ -105,6 +108,7 @@ if(!can_use(A)) return FALSE if(!D.stat) + log_combat(A, D, "consecutive CQC'd (CQC)") 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) @@ -116,20 +120,21 @@ return TRUE /datum/martial_art/cqc/grab_act(mob/living/carbon/human/A, mob/living/carbon/human/D) - if(!can_use(A)) - return FALSE - add_to_streak("G",D) - if(check_streak(A,D)) - return TRUE - if(A.grab_state >= GRAB_AGGRESSIVE) + if(A==D) + return FALSE //prevents grabbing yourself + if(A.a_intent == INTENT_GRAB) + add_to_streak("G",D) + if(check_streak(A,D)) //doing combos is prioritized over upgrading grabs + return TRUE D.grabbedby(A, 1) - else - A.start_pulling(D, supress_message = TRUE) - if(A.pulling) - D.stop_pulling() + if(A.grab_state == GRAB_PASSIVE) + D.drop_all_held_items() + A.grab_state = GRAB_AGGRESSIVE //Instant agressive grab if on grab intent log_combat(A, D, "grabbed", addition="aggressively") - A.grab_state = GRAB_AGGRESSIVE //Instant aggressive grab - + D.visible_message("[A] violently grabs [D]!", \ + "[A] violently grabs you!") + else + D.grabbedby(A, 1) return TRUE /datum/martial_art/cqc/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -185,6 +190,7 @@ playsound(D, 'sound/weapons/punchmiss.ogg', 25, 1, -1) log_combat(A, D, "disarmed (CQC)", "[I ? " grabbing \the [I]" : ""]") if(restraining && A.pulling == D) + log_combat(A, D, "knocked out (Chokehold)(CQC)") D.visible_message("[A] puts [D] into a chokehold!", \ "[A] puts you into a chokehold!") D.SetSleeping(400) @@ -203,8 +209,8 @@ to_chat(usr, "You try to remember some of the basics of CQC.") to_chat(usr, "Slam: Grab Harm. Slam opponent into the ground, knocking them down.") - to_chat(usr, "CQC Kick: Disarm Harm Harm. Knocks opponent away. Knocks out stunned or knocked down opponents.") - to_chat(usr, "Restrain: Grab Grab. Locks opponents into a restraining position, disarm to knock them out with a choke hold.") + to_chat(usr, "CQC Kick: Harm Harm. Knocks opponent away. Knocks out stunned or knocked down opponents.") + to_chat(usr, "Restrain: Grab Grab. Locks opponents into a restraining position, disarm to knock them out with a chokehold.") to_chat(usr, "Pressure: Disarm Grab. Decent stamina damage.") to_chat(usr, "Consecutive CQC: Disarm Disarm Harm. Mainly offensive move, huge damage and decent stamina damage.") diff --git a/code/datums/martial/sleeping_carp.dm b/code/datums/martial/sleeping_carp.dm index 1ae54936f5f..a6a5bbe4a5d 100644 --- a/code/datums/martial/sleeping_carp.dm +++ b/code/datums/martial/sleeping_carp.dm @@ -38,6 +38,7 @@ /datum/martial_art/the_sleeping_carp/proc/wristWrench(mob/living/carbon/human/A, mob/living/carbon/human/D) if(!D.stat && !D.IsStun() && !D.IsParalyzed()) + log_combat(A, D, "wrist wrenched (Sleeping Carp)") A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) D.visible_message("[A] grabs [D]'s wrist and wrenches it sideways!", \ "[A] grabs your wrist and violently wrenches it to the side!") @@ -47,23 +48,29 @@ D.apply_damage(5, BRUTE, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) D.Stun(60) return 1 - log_combat(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.IsParalyzed()) - A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) - 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.Paralyze(80) - playsound(get_turf(D), 'sound/weapons/punch1.ogg', 50, 1, -1) - return 1 - log_combat(A, D, "back-kicked (Sleeping Carp)") + if(!D.stat && !D.IsParalyzed()) + if(A.dir == D.dir) + log_combat(A, D, "back-kicked (Sleeping Carp)") + A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) + 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.Paralyze(80) + playsound(get_turf(D), 'sound/weapons/punch1.ogg', 50, 1, -1) + return 1 + else + log_combat(A, D, "missed a back-kick (Sleeping Carp) on") + D.visible_message("[A] tries to kick [D] in the back, but misses!", \ + "[A] tries to kick you in the back, but misses!") 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.IsParalyzed()) + log_combat(A, D, "stomach kneed (Sleeping Carp)") A.do_attack_animation(D, ATTACK_EFFECT_KICK) D.visible_message("[A] knees [D] in the stomach!", \ "[A] winds you with a knee in the stomach!") @@ -72,11 +79,11 @@ D.Stun(40) playsound(get_turf(D), 'sound/weapons/punch1.ogg', 50, 1, -1) return 1 - log_combat(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.IsParalyzed()) + log_combat(A, D, "head kicked (Sleeping Carp)") A.do_attack_animation(D, ATTACK_EFFECT_KICK) D.visible_message("[A] kicks [D] in the head!", \ "[A] kicks you in the jaw!") @@ -85,41 +92,37 @@ playsound(get_turf(D), 'sound/weapons/punch1.ogg', 50, 1, -1) D.Stun(80) return 1 - log_combat(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.mobility_flags & MOBILITY_STAND)) + log_combat(A, D, "elbow dropped (Sleeping Carp)") A.do_attack_animation(D, ATTACK_EFFECT_PUNCH) D.visible_message("[A] elbow drops [D]!", \ - "[A] piledrives you with their elbow!") + "[A] piledrives you with their elbow!") if(D.stat) D.death() //FINISH HIM! D.apply_damage(50, A.dna.species.attack_type, BODY_ZONE_CHEST) playsound(get_turf(D), 'sound/weapons/punch1.ogg', 75, 1, -1) return 1 - log_combat(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) - add_to_streak("G",D) - if(check_streak(A,D)) - return 1 - if(A.grab_state >= GRAB_AGGRESSIVE) + if(A==D) + return 0 //prevents grabbing yourself + if(A.a_intent == INTENT_GRAB) + add_to_streak("G",D) + if(check_streak(A,D)) //doing combos is prioritized over upgrading grabs + return 1 D.grabbedby(A, 1) - else - A.start_pulling(D, supress_message = TRUE) - if(A.pulling) + if(A.grab_state == GRAB_PASSIVE) D.drop_all_held_items() - D.stop_pulling() - if(A.a_intent == INTENT_GRAB) - log_combat(A, D, "grabbed", addition="aggressively") - D.visible_message("[A] violently grabs [D]!", \ - "[A] violently grabs you!") - A.grab_state = GRAB_AGGRESSIVE //Instant aggressive grab - else - log_combat(A, D, "grabbed", addition="passively") - A.grab_state = GRAB_PASSIVE + A.grab_state = GRAB_AGGRESSIVE //Instant agressive grab if on grab intent + log_combat(A, D, "grabbed", addition="aggressively") + D.visible_message("[A] violently grabs [D]!", \ + "[A] violently grabs you!") + else + D.grabbedby(A, 1) return 1 /datum/martial_art/the_sleeping_carp/harm_act(mob/living/carbon/human/A, mob/living/carbon/human/D) @@ -181,7 +184,7 @@ /obj/item/twohanded/bostaff/attack(mob/target, mob/living/user) add_fingerprint(user) - if((user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) to_chat(user, "You club yourself over the head with [src].") user.Paralyze(60) if(ishuman(user)) diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 03f812c9c08..4c2c4e76a17 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -192,7 +192,7 @@ if (T && isturf(T)) if (!D.stat) D.emote("scream") - D.throw_at(T, 10, 4, A, TRUE, TRUE, callback = CALLBACK(D, /mob/living/carbon/human/.Paralyze, 20)) + D.throw_at(T, 10, 4, A, TRUE, TRUE, callback = CALLBACK(D, /mob/living/carbon/human.proc/Paralyze, 20)) log_combat(A, D, "has thrown with wrestling") return 0 diff --git a/code/datums/mind.dm b/code/datums/mind.dm index b73bfd4ffab..a12ebd90c11 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -64,6 +64,8 @@ var/force_escaped = FALSE // Set by Into The Sunset command of the shuttle manipulator + var/list/learned_recipes //List of learned recipe TYPES. + /datum/mind/New(var/key) src.key = key soulOwner = src diff --git a/code/datums/mood_events/drink_events.dm b/code/datums/mood_events/drink_events.dm index 5a9880bb5d7..1ba31342d3c 100644 --- a/code/datums/mood_events/drink_events.dm +++ b/code/datums/mood_events/drink_events.dm @@ -5,19 +5,19 @@ /datum/mood_event/quality_nice description = "That drink wasn't bad at all.\n" mood_change = 1 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/quality_good description = "That drink was pretty good.\n" mood_change = 2 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/quality_verygood description = "That drink was great!\n" mood_change = 3 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/quality_fantastic description = "That drink was amazing!\n" mood_change = 4 - timeout = 1200 + timeout = 2 MINUTES diff --git a/code/datums/mood_events/drug_events.dm b/code/datums/mood_events/drug_events.dm index 6e86fd02c6a..aa4d89d799c 100644 --- a/code/datums/mood_events/drug_events.dm +++ b/code/datums/mood_events/drug_events.dm @@ -5,16 +5,16 @@ /datum/mood_event/smoked description = "I have had a smoke recently.\n" mood_change = 2 - timeout = 3600 + timeout = 6 MINUTES /datum/mood_event/wrong_brand description = "I hate that brand of cigarettes.\n" mood_change = -2 - timeout = 3600 + timeout = 6 MINUTES /datum/mood_event/overdose mood_change = -8 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/overdose/add_effects(drug_name) description = "I think I took a bit too much of that [drug_name]\n" @@ -50,11 +50,11 @@ /datum/mood_event/happiness_drug_good_od description = "YES! YES!! YES!!!\n" mood_change = 100 - timeout = 300 + timeout = 30 SECONDS special_screen_obj = "mood_happiness_good" /datum/mood_event/happiness_drug_bad_od description = "NO! NO!! NO!!!\n" mood_change = -100 - timeout = 300 + timeout = 30 SECONDS special_screen_obj = "mood_happiness_bad" diff --git a/code/datums/mood_events/generic_negative_events.dm b/code/datums/mood_events/generic_negative_events.dm index 213d9789509..daca0678052 100644 --- a/code/datums/mood_events/generic_negative_events.dm +++ b/code/datums/mood_events/generic_negative_events.dm @@ -17,7 +17,7 @@ /datum/mood_event/burnt_thumb description = "I shouldn't play with lighters...\n" mood_change = -1 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/cold description = "It's way too cold in here.\n" @@ -30,46 +30,42 @@ /datum/mood_event/creampie description = "I've been creamed. Tastes like pie flavor.\n" mood_change = -2 - timeout = 1800 + timeout = 3 MINUTES /datum/mood_event/slipped description = "I slipped. I should be more careful next time...\n" mood_change = -2 - timeout = 1800 + timeout = 3 MINUTES /datum/mood_event/eye_stab description = "I used to be an adventurer like you, until I took a screwdriver to the eye.\n" mood_change = -4 - timeout = 1800 + timeout = 3 MINUTES /datum/mood_event/delam //SM delamination description = "Those God damn engineers can't do anything right...\n" mood_change = -2 - timeout = 2400 + timeout = 4 MINUTES /datum/mood_event/depression description = "I feel sad for no particular reason.\n" mood_change = -9 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/shameful_suicide //suicide_acts that return SHAME, like sord description = "I can't even end it all!\n" mood_change = -10 - timeout = 600 + timeout = 60 SECONDS /datum/mood_event/dismembered description = "AHH! I WAS USING THAT LIMB!\n" mood_change = -8 - timeout = 2400 - -/datum/mood_event/noshoes - description = "I am a disgrace to comedy everywhere!\n" - mood_change = -5 + timeout = 4 MINUTES /datum/mood_event/tased description = "There's no \"z\" in \"taser\". It's in the zap.\n" mood_change = -3 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/embedded description = "Pull it out!\n" @@ -78,7 +74,7 @@ /datum/mood_event/table description = "Someone threw me on a table!\n" mood_change = -2 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/table/add_effects() if(ishuman(owner)) @@ -103,7 +99,7 @@ /datum/mood_event/epilepsy //Only when the mutation causes a seizure description = "I should have paid attention to the epilepsy warning.\n" mood_change = -3 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/nyctophobia description = "It sure is dark around here...\n" @@ -116,7 +112,7 @@ /datum/mood_event/healsbadman description = "I feel like I'm held together by flimsy string, and could fall apart at any moment!\n" mood_change = -4 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/jittery description = "I'm nervous and on edge and I can't stand still!!\n" @@ -125,27 +121,27 @@ /datum/mood_event/vomit description = "I just threw up. Gross.\n" mood_change = -2 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/vomitself description = "I just threw up all over myself. This is disgusting.\n" mood_change = -4 - timeout = 1800 + timeout = 3 MINUTES /datum/mood_event/painful_medicine description = "Medicine may be good for me but right now it stings like hell.\n" mood_change = -5 - timeout = 600 + timeout = 60 SECONDS /datum/mood_event/spooked description = "The rattling of those bones...It still haunts me.\n" mood_change = -4 - timeout = 2400 + timeout = 4 MINUTES /datum/mood_event/loud_gong description = "That loud gong noise really hurt my ears!\n" mood_change = -3 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/notcreeping description = "The voices are not happy, and they painfully contort my thoughts into getting back on task.\n" @@ -153,7 +149,6 @@ timeout = 30 hidden = TRUE - /datum/mood_event/notcreepingsevere//not hidden since it's so severe description = "THEY NEEEEEEED OBSESSIONNNN!!\n" mood_change = -30 @@ -166,10 +161,22 @@ var/unhinged = uppertext(unstable.Join(""))//example Tinea Luxor > TINEA LUXORRRR (with randomness in how long that slur is) description = "THEY NEEEEEEED [unhinged]!!\n" -/datum/mood_event/idiot_shower - description = "I showered with my clothes on, I'm a fucking idiot.\n" - mood_change = -3 - timeout = 900 +/datum/mood_event/sapped + description = "Some unexplainable sadness is consuming me...\n" + mood_change = -15 + timeout = 90 SECONDS + +/datum/mood_event/back_pain + description = "Bags never sit right on my back, this hurts like hell!\n" + mood_change = -15 + +/datum/mood_event/sad_empath + description = "Someone seems upset...\n" + mood_change = -2 + timeout = 60 SECONDS + +/datum/mood_event/sad_empath/add_effects(mob/sadtarget) + description = "[sadtarget.name] seems upset...\n" //These are unused so far but I want to remember them to use them later /datum/mood_event/cloned_corpse diff --git a/code/datums/mood_events/generic_positive_events.dm b/code/datums/mood_events/generic_positive_events.dm index f6fb64550e5..f9e7097ace2 100644 --- a/code/datums/mood_events/generic_positive_events.dm +++ b/code/datums/mood_events/generic_positive_events.dm @@ -1,32 +1,48 @@ /datum/mood_event/hug description = "Hugs are nice.\n" mood_change = 1 - timeout = 1200 + timeout = 2 MINUTES + +/datum/mood_event/betterhug + description = "Someone was very nice to me.\n" + mood_change = 3 + timeout = 5 MINUTES + +/datum/mood_event/betterhug/add_effects(mob/friend) + description = "[friend.name] was very nice to me.\n" + +/datum/mood_event/besthug + description = "Someone is great to be around, they make me feel so happy!\n" + mood_change = 5 + timeout = 5 MINUTES + +/datum/mood_event/besthug/add_effects(mob/friend) + description = "[friend.name] is great to be around, [friend.p_they()] makes me feel so happy!\n" /datum/mood_event/arcade description = "I beat the arcade game!\n" mood_change = 3 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/blessing description = "I've been blessed.\n" mood_change = 3 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/book_nerd description = "I have recently read a book.\n" mood_change = 3 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/exercise description = "Working out releases those endorphins!\n" mood_change = 3 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/pet_animal description = "Animals are adorable! I can't stop petting them!\n" mood_change = 3 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/pet_animal/add_effects(mob/animal) description = "\The [animal.name] is adorable! I can't stop petting [animal.p_them()]!\n" @@ -34,12 +50,12 @@ /datum/mood_event/honk description = "Maybe clowns aren't so bad after all. Honk!\n" mood_change = 2 - timeout = 2400 + timeout = 4 MINUTES /datum/mood_event/perform_cpr description = "It feels good to save a life.\n" mood_change = 6 - timeout = 3000 + timeout = 5 MINUTES /datum/mood_event/oblivious description = "What a lovely day.\n" @@ -48,7 +64,7 @@ /datum/mood_event/jolly description = "I feel happy for no particular reason.\n" mood_change = 6 - timeout = 1200 + timeout = 2 MINUTES /datum/mood_event/focused description = "I have a goal, and I will reach it, whatever it takes!\n" //Used for syndies, nukeops etc so they can focus on their goals @@ -65,7 +81,7 @@ /datum/mood_event/creeping description = "The voices have released their hooks on my mind! I feel free again!\n" //creeps get it when they are around their obsession mood_change = 18 - timeout = 30 + timeout = 3 SECONDS hidden = TRUE /datum/mood_event/revolution @@ -85,7 +101,7 @@ /datum/mood_event/goodmusic description = "There is something soothing about this music.\n" mood_change = 3 - timeout = 600 + timeout = 60 SECONDS /datum/mood_event/chemical_euphoria description = "Heh...hehehe...hehe...\n" @@ -94,13 +110,18 @@ /datum/mood_event/chemical_laughter description = "Laughter really is the best medicine! Or is it?\n" mood_change = 4 - timeout = 1800 + timeout = 3 MINUTES /datum/mood_event/chemical_superlaughter description = "*WHEEZE*\n" mood_change = 12 - timeout = 1800 + timeout = 3 MINUTES /datum/mood_event/religiously_comforted - description = "You are comforted by the presence of a holy person." + description = "You are comforted by the presence of a holy person.\n" mood_change = 3 + timeout = 5 MINUTES + +/datum/mood_event/clownshoes + description = "The shoes are a clown's legacy, I never want to take them off!\n" + mood_change = 5 diff --git a/code/datums/mood_events/needs_events.dm b/code/datums/mood_events/needs_events.dm index 914763225d0..2b97d3181ad 100644 --- a/code/datums/mood_events/needs_events.dm +++ b/code/datums/mood_events/needs_events.dm @@ -70,22 +70,22 @@ /datum/mood_event/favorite_food description = "I really enjoyed eating that.\n" mood_change = 3 - timeout = 2400 + timeout = 4 MINUTES /datum/mood_event/gross_food description = "I really didn't like that food.\n" mood_change = -2 - timeout = 2400 + timeout = 4 MINUTES /datum/mood_event/disgusting_food description = "That food was disgusting!\n" mood_change = -4 - timeout = 2400 + timeout = 4 MINUTES /datum/mood_event/nice_shower description = "I have recently had a nice shower.\n" mood_change = 2 - timeout = 1800 + timeout = 3 MINUTES /datum/mood_event/fresh_laundry description = "There's nothing like the feeling of a freshly laundered jumpsuit.\n" diff --git a/code/datums/mutations.dm b/code/datums/mutations.dm index 6d0f9dd47da..cc79ec42fc6 100644 --- a/code/datums/mutations.dm +++ b/code/datums/mutations.dm @@ -28,6 +28,7 @@ var/scrambled = FALSE //Wheter we can read it if it's active. To avoid cheesing with mutagen var/class //Decides player accesibility, sorta var/list/conflicts //any mutations that might conflict. put mutation typepath defines in here. make sure to enter it both ways (so that A conflicts with B, and B with A) + var/allow_transfer //Do we transfer upon cloning? //MUT_NORMAL - A mutation that can be activated and deactived by completing a sequence //MUT_EXTRA - A mutation that is in the mutations tab, and can be given and taken away through though the DNA console. Has a 0 before it's name in the mutation section of the dna console //MUT_OTHER Cannot be interacted with by players through normal means. I.E. wizards mutate @@ -96,9 +97,6 @@ /datum/mutation/human/proc/on_ranged_attack(atom/target) return -/datum/mutation/human/proc/on_move(new_loc) - return - /datum/mutation/human/proc/on_life() return @@ -182,7 +180,7 @@ qdel(src) /datum/mutation/human/proc/grant_spell() - if(!power || !owner) + if(!ispath(power) || !owner) return FALSE power = new power() diff --git a/code/datums/mutations/_combined.dm b/code/datums/mutations/_combined.dm index d11e0a6681e..ea3b5e4a852 100644 --- a/code/datums/mutations/_combined.dm +++ b/code/datums/mutations/_combined.dm @@ -17,6 +17,10 @@ required = "/datum/mutation/human/strong; /datum/mutation/human/radioactive" result = HULK +/datum/generecipe/x_ray + required = "/datum/mutation/human/thermal; /datum/mutation/human/radioactive" + result = /datum/mutation/human/thermal/x_ray + /datum/generecipe/mindread required = "/datum/mutation/human/antenna; /datum/mutation/human/paranoia" result = MINDREAD diff --git a/code/datums/mutations/actions.dm b/code/datums/mutations/actions.dm index 517cccdda43..b90295e064c 100644 --- a/code/datums/mutations/actions.dm +++ b/code/datums/mutations/actions.dm @@ -19,16 +19,17 @@ text_lose_indication = "Your sense of smell goes back to normal." power = /obj/effect/proc_holder/spell/targeted/olfaction instability = 30 + synchronizer_coeff = 1 var/reek = 200 /datum/mutation/human/olfaction/on_life() var/hygiene_now = owner.hygiene if(hygiene_now < 100 && prob(5)) - owner.adjust_disgust(rand(3,5)) + owner.adjust_disgust(GET_MUTATION_SYNCHRONIZER(src) * (rand(3,5))) if(hygiene_now < HYGIENE_LEVEL_DIRTY && prob(50)) to_chat(owner,"You get a whiff of your stench and feel sick!") - owner.adjust_disgust(rand(5,10)) + owner.adjust_disgust(GET_MUTATION_SYNCHRONIZER(src) * rand(5,10)) if(hygiene_now < HYGIENE_LEVEL_NORMAL && reek >= HYGIENE_LEVEL_NORMAL) to_chat(owner,"Your inhumanly strong nose picks up a faint odor. Maybe you should shower soon.") diff --git a/code/datums/mutations/antenna.dm b/code/datums/mutations/antenna.dm index 06278224da5..f49c847f42d 100644 --- a/code/datums/mutations/antenna.dm +++ b/code/datums/mutations/antenna.dm @@ -30,7 +30,7 @@ if(linked_radio) linked_radio.Destroy() -/datum/mutation/human/antenna/New() +/datum/mutation/human/antenna/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut) ..() if(!(type in visual_indicators)) visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "antenna", -FRONT_MUTATIONS_LAYER+1))//-MUTATIONS_LAYER+1 @@ -98,7 +98,7 @@ else to_chat(user, "You can't find a mind to read inside of [M].") -/datum/mutation/human/mindreader/New() +/datum/mutation/human/mindreader/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut) ..() if(!(type in visual_indicators)) visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "antenna", -FRONT_MUTATIONS_LAYER+1)) diff --git a/code/datums/mutations/body.dm b/code/datums/mutations/body.dm index 78589278a23..b3cee91681b 100644 --- a/code/datums/mutations/body.dm +++ b/code/datums/mutations/body.dm @@ -116,12 +116,12 @@ /datum/mutation/human/clumsy/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_CLUMSY, GENETIC_MUTATION) + ADD_TRAIT(owner, TRAIT_CLUMSY, GENETIC_MUTATION) /datum/mutation/human/clumsy/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_CLUMSY, GENETIC_MUTATION) + REMOVE_TRAIT(owner, TRAIT_CLUMSY, GENETIC_MUTATION) //Tourettes causes you to randomly stand in place and shout. @@ -158,12 +158,12 @@ /datum/mutation/human/deaf/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_DEAF, GENETIC_MUTATION) + ADD_TRAIT(owner, TRAIT_DEAF, GENETIC_MUTATION) /datum/mutation/human/deaf/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_DEAF, GENETIC_MUTATION) + REMOVE_TRAIT(owner, TRAIT_DEAF, GENETIC_MUTATION) //Monified turns you into a monkey. @@ -177,11 +177,11 @@ /datum/mutation/human/race/on_acquiring(mob/living/carbon/human/owner) if(..()) return - . = owner.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSE) + . = owner.monkeyize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSTUNS | TR_KEEPREAGENTS | TR_KEEPSE) /datum/mutation/human/race/on_losing(mob/living/carbon/monkey/owner) if(owner && istype(owner) && owner.stat != DEAD && (owner.dna.mutations.Remove(src))) - . = owner.humanize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSE) + . = owner.humanize(TR_KEEPITEMS | TR_KEEPIMPLANTS | TR_KEEPORGANS | TR_KEEPDAMAGE | TR_KEEPVIRUS | TR_KEEPSTUNS | TR_KEEPREAGENTS | TR_KEEPSE) /datum/mutation/human/glow name = "Glowy" @@ -227,12 +227,12 @@ /datum/mutation/human/insulated/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_SHOCKIMMUNE, "genetics") + ADD_TRAIT(owner, TRAIT_SHOCKIMMUNE, "genetics") /datum/mutation/human/insulated/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_SHOCKIMMUNE, "genetics") + REMOVE_TRAIT(owner, TRAIT_SHOCKIMMUNE, "genetics") /datum/mutation/human/fire name = "Fiery Sweat" @@ -267,6 +267,9 @@ text_lose_indication = "The space around you settles back to normal." difficulty = 18//high so it's hard to unlock and abuse instability = 10 + synchronizer_coeff = 1 + energy_coeff = 1 + power_coeff = 1 var/warpchance = 0 /datum/mutation/human/badblink/on_life() @@ -278,13 +281,13 @@ "[owner]'s torso starts folding inside out until it vanishes from reality, taking [owner] with it.", "One moment, you see [owner]. The next, [owner] is gone.") owner.visible_message(warpmessage, "You feel a wave of nausea as you fall through reality!") - var/warpdistance = rand(10,15) + var/warpdistance = rand(10,15) * GET_MUTATION_POWER(src) do_teleport(owner, get_turf(owner), warpdistance, channel = TELEPORT_CHANNEL_FREE) - owner.adjust_disgust((warpchance * warpdistance)) + owner.adjust_disgust(GET_MUTATION_SYNCHRONIZER(src) * (warpchance * warpdistance)) warpchance = 0 owner.visible_message("[owner] appears out of nowhere!") else - warpchance += 0.25 + warpchance += 0.25 * GET_MUTATION_ENERGY(src) /datum/mutation/human/acidflesh name = "Acidic Flesh" diff --git a/code/datums/mutations/chameleon.dm b/code/datums/mutations/chameleon.dm index d8ee7728a78..a6fd5cab3ec 100644 --- a/code/datums/mutations/chameleon.dm +++ b/code/datums/mutations/chameleon.dm @@ -13,11 +13,12 @@ if(..()) return owner.alpha = CHAMELEON_MUTATION_DEFAULT_TRANSPARENCY + RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/on_move) /datum/mutation/human/chameleon/on_life() owner.alpha = max(0, owner.alpha - 25) -/datum/mutation/human/chameleon/on_move() +/datum/mutation/human/chameleon/proc/on_move() owner.alpha = CHAMELEON_MUTATION_DEFAULT_TRANSPARENCY /datum/mutation/human/chameleon/on_attack_hand(atom/target, proximity) @@ -29,3 +30,4 @@ if(..()) return owner.alpha = 255 + UnregisterSignal(owner, COMSIG_MOVABLE_MOVED) diff --git a/code/datums/mutations/cold.dm b/code/datums/mutations/cold.dm index 7ef451fcae5..cd10c2b38f7 100644 --- a/code/datums/mutations/cold.dm +++ b/code/datums/mutations/cold.dm @@ -5,6 +5,7 @@ text_gain_indication = "Your hand feels cold." instability = 10 difficulty = 10 + synchronizer_coeff = 1 power = /obj/effect/proc_holder/spell/targeted/conjure_item/snow /obj/effect/proc_holder/spell/targeted/conjure_item/snow @@ -23,6 +24,7 @@ text_gain_indication = "Your hand feels cold." instability = 20 difficulty = 12 + synchronizer_coeff = 1 power = /obj/effect/proc_holder/spell/aimed/cryo /obj/effect/proc_holder/spell/aimed/cryo diff --git a/code/datums/mutations/hulk.dm b/code/datums/mutations/hulk.dm index 683f5b72593..f1ee74127bf 100644 --- a/code/datums/mutations/hulk.dm +++ b/code/datums/mutations/hulk.dm @@ -14,8 +14,8 @@ /datum/mutation/human/hulk/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_STUNIMMUNE, TRAIT_HULK) - owner.add_trait(TRAIT_PUSHIMMUNE, TRAIT_HULK) + ADD_TRAIT(owner, TRAIT_STUNIMMUNE, TRAIT_HULK) + ADD_TRAIT(owner, TRAIT_PUSHIMMUNE, TRAIT_HULK) owner.update_body_parts() SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "hulk", /datum/mood_event/hulk) @@ -31,8 +31,8 @@ /datum/mutation/human/hulk/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_STUNIMMUNE, TRAIT_HULK) - owner.remove_trait(TRAIT_PUSHIMMUNE, TRAIT_HULK) + REMOVE_TRAIT(owner, TRAIT_STUNIMMUNE, TRAIT_HULK) + REMOVE_TRAIT(owner, TRAIT_PUSHIMMUNE, TRAIT_HULK) owner.update_body_parts() SEND_SIGNAL(owner, COMSIG_CLEAR_MOOD_EVENT, "hulk") diff --git a/code/datums/mutations/radioactive.dm b/code/datums/mutations/radioactive.dm index 95e19ccb81f..00155ad0a17 100644 --- a/code/datums/mutations/radioactive.dm +++ b/code/datums/mutations/radioactive.dm @@ -6,12 +6,13 @@ time_coeff = 5 instability = 5 difficulty = 8 + power_coeff = 1 /datum/mutation/human/radioactive/on_life() - radiation_pulse(owner, 20) + radiation_pulse(owner, 20 * GET_MUTATION_POWER(src)) -/datum/mutation/human/radioactive/New() +/datum/mutation/human/radioactive/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut) ..() if(!(type in visual_indicators)) visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "radiation", -MUTATIONS_LAYER)) diff --git a/code/datums/mutations/sight.dm b/code/datums/mutations/sight.dm index fba82b1074d..c8f58eaf7b8 100644 --- a/code/datums/mutations/sight.dm +++ b/code/datums/mutations/sight.dm @@ -34,29 +34,37 @@ owner.cure_blind(GENETIC_MUTATION) -//X-ray Vision lets you see through walls. -/datum/mutation/human/x_ray - name = "X Ray Vision" - desc = "A strange genome that allows the user to see between the spaces of walls." //actual x-ray would mean you'd constantly be blasting rads, wich might be fun for later //hmb +/datum/mutation/human/thermal + name = "Thermal Vision" + desc = "The user of this genome can visually percieve the unique human thermal signature." quality = POSITIVE difficulty = 18 - text_gain_indication = "The walls suddenly disappear!" + text_gain_indication = "You can see the heat rising off of your skin..." time_coeff = 2 instability = 25 + var/visionflag = TRAIT_THERMAL_VISION -/datum/mutation/human/x_ray/on_acquiring(mob/living/carbon/human/owner) +/datum/mutation/human/thermal/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_XRAY_VISION, GENETIC_MUTATION) + ADD_TRAIT(owner, visionflag, GENETIC_MUTATION) owner.update_sight() -/datum/mutation/human/x_ray/on_losing(mob/living/carbon/human/owner) +/datum/mutation/human/thermal/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_XRAY_VISION, GENETIC_MUTATION) + REMOVE_TRAIT(owner, visionflag, GENETIC_MUTATION) owner.update_sight() +//X-ray Vision lets you see through walls. +/datum/mutation/human/thermal/x_ray + name = "X Ray Vision" + desc = "A strange genome that allows the user to see between the spaces of walls." //actual x-ray would mean you'd constantly be blasting rads, wich might be fun for later //hmb + text_gain_indication = "The walls suddenly disappear!" + instability = 35 + locked = TRUE + visionflag = TRAIT_XRAY_VISION //Laser Eyes lets you shoot lasers from your eyes! /datum/mutation/human/laser_eyes @@ -69,12 +77,13 @@ layer_used = FRONT_MUTATIONS_LAYER limb_req = BODY_ZONE_HEAD -/datum/mutation/human/laser_eyes/New() +/datum/mutation/human/laser_eyes/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut) ..() - visual_indicators |= mutable_appearance('icons/effects/genetics.dmi', "lasereyes", -FRONT_MUTATIONS_LAYER) + if(!(type in visual_indicators)) + visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "lasereyes", -FRONT_MUTATIONS_LAYER)) /datum/mutation/human/laser_eyes/get_visual_indicator() - return visual_indicators[1] + return visual_indicators[type][1] /datum/mutation/human/laser_eyes/on_ranged_attack(atom/target, mouseparams) if(owner.a_intent == INTENT_HARM) diff --git a/code/datums/mutations/space_adaptation.dm b/code/datums/mutations/space_adaptation.dm index 58525cecaa8..a77694c6f79 100644 --- a/code/datums/mutations/space_adaptation.dm +++ b/code/datums/mutations/space_adaptation.dm @@ -1,14 +1,14 @@ //Cold Resistance gives your entire body an orange halo, and makes you immune to the effects of vacuum and cold. /datum/mutation/human/space_adaptation name = "Space Adaptation" - desc = "A strange mutation that renders the host immune to the vacuum if space. Will still need an oxygen supply." + desc = "A strange mutation that renders the host immune to the vacuum of space. Will still need an oxygen supply." quality = POSITIVE difficulty = 16 text_gain_indication = "Your body feels warm!" time_coeff = 5 instability = 30 -/datum/mutation/human/space_adaptation/New() +/datum/mutation/human/space_adaptation/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut) ..() if(!(type in visual_indicators)) visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "fire", -MUTATIONS_LAYER)) @@ -19,12 +19,12 @@ /datum/mutation/human/space_adaptation/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_RESISTCOLD, "space_adaptation") - owner.add_trait(TRAIT_RESISTLOWPRESSURE, "space_adaptation") + ADD_TRAIT(owner, TRAIT_RESISTCOLD, "space_adaptation") + ADD_TRAIT(owner, TRAIT_RESISTLOWPRESSURE, "space_adaptation") /datum/mutation/human/space_adaptation/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_RESISTCOLD, "space_adaptation") - owner.remove_trait(TRAIT_RESISTLOWPRESSURE, "space_adaptation") + REMOVE_TRAIT(owner, TRAIT_RESISTCOLD, "space_adaptation") + REMOVE_TRAIT(owner, TRAIT_RESISTLOWPRESSURE, "space_adaptation") diff --git a/code/datums/mutations/speech.dm b/code/datums/mutations/speech.dm index 330066d441a..5e3f59dd714 100644 --- a/code/datums/mutations/speech.dm +++ b/code/datums/mutations/speech.dm @@ -33,12 +33,12 @@ /datum/mutation/human/mute/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_MUTE, GENETIC_MUTATION) + ADD_TRAIT(owner, TRAIT_MUTE, GENETIC_MUTATION) /datum/mutation/human/mute/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_MUTE, GENETIC_MUTATION) + REMOVE_TRAIT(owner, TRAIT_MUTE, GENETIC_MUTATION) /datum/mutation/human/smile @@ -72,6 +72,7 @@ message = replacetext(message," murder "," tease ") message = replacetext(message," ugly "," beautiful ") message = replacetext(message," douchbag "," nice guy ") + message = replacetext(message," douchebag "," nice guy ") message = replacetext(message," whore "," lady ") message = replacetext(message," nerd "," smart guy ") message = replacetext(message," moron "," fun person ") @@ -108,12 +109,12 @@ /datum/mutation/human/unintelligible/on_acquiring(mob/living/carbon/human/owner) if(..()) return - owner.add_trait(TRAIT_UNINTELLIGIBLE_SPEECH, GENETIC_MUTATION) + ADD_TRAIT(owner, TRAIT_UNINTELLIGIBLE_SPEECH, GENETIC_MUTATION) /datum/mutation/human/unintelligible/on_losing(mob/living/carbon/human/owner) if(..()) return - owner.remove_trait(TRAIT_UNINTELLIGIBLE_SPEECH, GENETIC_MUTATION) + REMOVE_TRAIT(owner, TRAIT_UNINTELLIGIBLE_SPEECH, GENETIC_MUTATION) /datum/mutation/human/swedish name = "Swedish" @@ -195,10 +196,11 @@ message = replacetext(message," man ",pick(" son "," buddy "," brother"," pal "," friendo ")) message = replacetext(message," out of "," outta ") message = replacetext(message," thank you "," thank you, thank you very much ") + message = replacetext(message," thanks "," thank you, thank you very much ") message = replacetext(message," what are you "," whatcha ") message = replacetext(message," yes ",pick(" sure", "yea ")) message = replacetext(message," faggot "," square ") - message = replacetext(message," muh valids "," getting my kicks ") + message = replacetext(message," muh valids "," my kicks ") return trim(message) @@ -219,3 +221,4 @@ ..() owner.grant_language(/datum/language/common) owner.remove_language(/datum/language/beachbum) + diff --git a/code/datums/mutations/telekinesis.dm b/code/datums/mutations/telekinesis.dm index 49c39d59f54..41f21592149 100644 --- a/code/datums/mutations/telekinesis.dm +++ b/code/datums/mutations/telekinesis.dm @@ -8,7 +8,7 @@ limb_req = BODY_ZONE_HEAD instability = 30 -/datum/mutation/human/telekinesis/New() +/datum/mutation/human/telekinesis/New(class_ = MUT_OTHER, timer, datum/mutation/human/copymut) ..() if(!(type in visual_indicators)) visual_indicators[type] = list(mutable_appearance('icons/effects/genetics.dmi', "telekinesishead", -MUTATIONS_LAYER)) diff --git a/code/datums/mutations/touch.dm b/code/datums/mutations/touch.dm index 2b6ce442689..33bfb4eaa55 100644 --- a/code/datums/mutations/touch.dm +++ b/code/datums/mutations/touch.dm @@ -31,7 +31,7 @@ /obj/item/melee/touch_attack/shock/afterattack(atom/target, mob/living/carbon/user, proximity) if(iscarbon(target)) var/mob/living/carbon/C = target - if(C.electrocute_act(15, src, 1, FALSE, FALSE, FALSE, FALSE, FALSE))//doesnt stun. never let this stun + if(C.electrocute_act(15, user, 1, FALSE, FALSE, FALSE, FALSE, FALSE))//doesnt stun. never let this stun C.dropItemToGround(C.get_active_held_item()) C.dropItemToGround(C.get_inactive_held_item()) C.confused += 15 @@ -42,7 +42,7 @@ return ..() else if(isliving(target)) var/mob/living/L = target - L.electrocute_act(15, src, 1, FALSE, FALSE, FALSE, FALSE) + L.electrocute_act(15, user, 1, FALSE, FALSE, FALSE, FALSE) L.visible_message("[user] electrocutes [target]!","[user] electrocutes you!") return ..() else diff --git a/code/datums/outputs.dm b/code/datums/outputs.dm index d1bee4d5b58..4ae8e70917d 100644 --- a/code/datums/outputs.dm +++ b/code/datums/outputs.dm @@ -4,11 +4,12 @@ var/text = "" var/list/sounds = 'sound/items/airhorn.ogg' //can be either a sound path or a WEIGHTED list, put multiple for random selection between sounds var/mutable_appearance/vfx = list('icons/sound_icon.dmi',"circle", HUD_LAYER) //syntax: icon, icon_state, layer + var/cooldown = 100 //ms /datum/outputs/New() vfx = mutable_appearance(vfx[1],vfx[2],vfx[3]) -/datum/outputs/proc/send_info(mob/receiver, turf/turf_source, vol as num, vary, frequency, falloff, channel = 0, pressure_affected = TRUE) +/datum/outputs/proc/send_info(mob/receiver, turf/turf_source, vol as num, vary, frequency, falloff, channel = 0, pressure_affected = TRUE, last_played_time) var/sound/sound_output //Pick sound if(islist(sounds)) @@ -67,7 +68,11 @@ sound_output.y = 1 sound_output.falloff = (falloff ? falloff : FALLOFF_SOUNDS) - receiver.display_output(sound_output, vfx, text, turf_source, vol, vary, frequency, falloff, channel, pressure_affected) + if(world.time >= last_played_time + cooldown) + receiver.display_output(sound_output, vfx, text, turf_source, vol, vary, frequency, falloff, channel, pressure_affected) + . = TRUE //start cooling down text + else + receiver.display_output(sound_output, vfx, , turf_source, vol, vary, frequency, falloff, channel, pressure_affected) //changing the text takes more cpu time than a single if check /datum/outputs/bikehorn text = "You hear a HONK." @@ -106,4 +111,4 @@ /datum/outputs/squelch text = "You hear a horrendous squelching sound." - sounds = 'sound/effects/blobattack.ogg' + sounds = 'sound/effects/blobattack.ogg' \ No newline at end of file diff --git a/code/datums/progressbar.dm b/code/datums/progressbar.dm index 6b947d8e841..183b2235be3 100644 --- a/code/datums/progressbar.dm +++ b/code/datums/progressbar.dm @@ -1,7 +1,9 @@ #define PROGRESSBAR_HEIGHT 6 +#define PROGRESSBAR_ANIMATION_TIME 5 /datum/progressbar var/goal = 1 + var/last_progress = 0 var/image/bar var/shown = 0 var/mob/user @@ -26,11 +28,13 @@ var/list/bars = user.progressbars[bar.loc] bars.Add(src) listindex = bars.len - bar.pixel_y = 32 + (PROGRESSBAR_HEIGHT * (listindex - 1)) + bar.pixel_y = 0 + bar.alpha = 0 + animate(bar, pixel_y = 32 + (PROGRESSBAR_HEIGHT * (listindex - 1)), alpha = 255, time = PROGRESSBAR_ANIMATION_TIME, easing = SINE_EASING) /datum/progressbar/proc/update(progress) if (!user || !user.client) - shown = 0 + shown = FALSE return if (user.client != client) if (client) @@ -39,16 +43,21 @@ user.client.images += bar progress = CLAMP(progress, 0, goal) + last_progress = progress bar.icon_state = "prog_bar_[round(((progress / goal) * 100), 5)]" if (!shown) user.client.images += bar - shown = 1 + shown = TRUE /datum/progressbar/proc/shiftDown() --listindex - bar.pixel_y -= PROGRESSBAR_HEIGHT + bar.pixel_y = 32 + (PROGRESSBAR_HEIGHT * (listindex - 1)) + var/dist_to_travel = 32 + (PROGRESSBAR_HEIGHT * (listindex - 1)) - PROGRESSBAR_HEIGHT + animate(bar, pixel_y = dist_to_travel, time = PROGRESSBAR_ANIMATION_TIME, easing = SINE_EASING) /datum/progressbar/Destroy() + if(last_progress != goal) + bar.icon_state = "[bar.icon_state]_fail" for(var/I in user.progressbars[bar.loc]) var/datum/progressbar/P = I if(P != src && P.listindex > listindex) @@ -59,9 +68,15 @@ if(!bars.len) LAZYREMOVE(user.progressbars, bar.loc) - if (client) - client.images -= bar - qdel(bar) + animate(bar, alpha = 0, time = PROGRESSBAR_ANIMATION_TIME) + addtimer(CALLBACK(src, .proc/remove_from_client), PROGRESSBAR_ANIMATION_TIME, TIMER_CLIENT_TIME) + QDEL_IN(bar, PROGRESSBAR_ANIMATION_TIME * 2) //for garbage collection safety . = ..() -#undef PROGRESSBAR_HEIGHT \ No newline at end of file +/datum/progressbar/proc/remove_from_client() + if(client) + client.images -= bar + client = null + +#undef PROGRESSBAR_ANIMATION_TIME +#undef PROGRESSBAR_HEIGHT diff --git a/code/datums/radiation_wave.dm b/code/datums/radiation_wave.dm index 5fb777f9c57..949e63dc6a7 100644 --- a/code/datums/radiation_wave.dm +++ b/code/datums/radiation_wave.dm @@ -9,7 +9,9 @@ var/can_contaminate /datum/radiation_wave/New(atom/_source, dir, _intensity=0, _range_modifier=RAD_DISTANCE_COEFFICIENT, _can_contaminate=TRUE) - source = _source + + source = "[_source] \[[REF(_source)]\]" + master_turf = get_turf(_source) move_dir = dir diff --git a/code/datums/saymode.dm b/code/datums/saymode.dm index ce9d6d448c7..57ef7701e32 100644 --- a/code/datums/saymode.dm +++ b/code/datums/saymode.dm @@ -27,7 +27,7 @@ switch(M.lingcheck()) if (LINGHIVE_LING) var/mob/living/L = M - if (!L.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (!HAS_TRAIT(L, CHANGELING_HIVEMIND_MUTE)) to_chat(M, msg) if(LINGHIVE_LINK) to_chat(M, msg) @@ -35,7 +35,7 @@ if(prob(40)) to_chat(M, "We can faintly sense an outsider trying to communicate through the hivemind...") if(LINGHIVE_LING) - if (user.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (HAS_TRAIT(user, CHANGELING_HIVEMIND_MUTE)) to_chat(user, "The poison in the air hinders our ability to interact with the hivemind.") return FALSE var/datum/antagonist/changeling/changeling = user.mind.has_antag_datum(/datum/antagonist/changeling) @@ -52,7 +52,7 @@ to_chat(M, msg) if(LINGHIVE_LING) var/mob/living/L = M - if (!L.has_trait(CHANGELING_HIVEMIND_MUTE)) + if (!HAS_TRAIT(L, CHANGELING_HIVEMIND_MUTE)) to_chat(M, msg) if(LINGHIVE_OUTSIDER) if(prob(40)) diff --git a/code/datums/shuttles.dm b/code/datums/shuttles.dm index 33bbab65718..f36190073e5 100644 --- a/code/datums/shuttles.dm +++ b/code/datums/shuttles.dm @@ -152,6 +152,10 @@ port_id = "pirate" can_be_bought = FALSE +/datum/map_template/shuttle/hunter + port_id = "hunter" + can_be_bought = FALSE + /datum/map_template/shuttle/ruin //For random shuttles in ruins port_id = "ruin" can_be_bought = FALSE @@ -199,6 +203,13 @@ Has medical facilities." credit_cost = 5000 +/datum/map_template/shuttle/emergency/pod + suffix = "pod" + name = "Emergency Pods" + description = "We did not expect an evacuation this quickly. All we have available is two escape pods." + admin_notes = "For player punishment." + can_be_bought = FALSE + /datum/map_template/shuttle/emergency/russiafightpit suffix = "russiafightpit" name = "Mother Russia Bleeds" @@ -209,9 +220,9 @@ /datum/map_template/shuttle/emergency/meteor suffix = "meteor" name = "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." + description = "A hollowed out asteroid with engines strapped to it, the hollowing procedure makes it very difficult to hijack but is very expensive. 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 + credit_cost = 15000 movement_force = list("KNOCKDOWN" = 3, "THROW" = 2) /datum/map_template/shuttle/emergency/luxury @@ -285,6 +296,12 @@ credit_cost = 4000 description = "A fairly standard shuttle, though larger and slightly better equipped than the Box Station variant." +/datum/map_template/shuttle/emergency/kilo + suffix = "kilo" + name = "Kilo Station Emergency Shuttle" + credit_cost = 5000 + description = "A fully functional shuttle including a complete infirmary, storage facilties and regular amenities." + /datum/map_template/shuttle/emergency/mini suffix = "mini" name = "Ministation emergency shuttle" @@ -392,6 +409,11 @@ name = "fancy transport ferry" description = "At some point, someone upgraded the ferry to have fancier flooring... and fewer seats." +/datum/map_template/shuttle/ferry/kilo + suffix = "kilo" + name = "kilo transport ferry" + description = "Standard issue CentCom Ferry for Kilo pattern stations. Includes additional equipment and rechargers." + /datum/map_template/shuttle/whiteship/box suffix = "box" name = "Hospital Ship" @@ -420,6 +442,10 @@ suffix = "box" name = "supply shuttle (Box)" +/datum/map_template/shuttle/cargo/kilo + suffix = "kilo" + name = "supply shuttle (Kilo)" + /datum/map_template/shuttle/cargo/birdboat suffix = "birdboat" name = "supply shuttle (Birdboat)" @@ -468,6 +494,10 @@ suffix = "basic" name = "basic syndicate infiltrator" +/datum/map_template/shuttle/infiltrator/advanced + suffix = "basic" + name = "advanced syndicate infiltrator" + /datum/map_template/shuttle/cargo/delta suffix = "delta" name = "cargo ferry (Delta)" @@ -476,14 +506,30 @@ suffix = "delta" name = "mining shuttle (Delta)" +/datum/map_template/shuttle/mining/kilo + suffix = "kilo" + name = "mining shuttle (Kilo)" + +/datum/map_template/shuttle/mining/large + suffix = "large" + name = "mining shuttle (Large)" + /datum/map_template/shuttle/labour/delta suffix = "delta" name = "labour shuttle (Delta)" +/datum/map_template/shuttle/labour/kilo + suffix = "kilo" + name = "labour shuttle (Kilo)" + /datum/map_template/shuttle/arrival/delta suffix = "delta" name = "arrival shuttle (Delta)" +/datum/map_template/shuttle/arrival/kilo + suffix = "kilo" + name = "arrival shuttle (Kilo)" + /datum/map_template/shuttle/arrival/pubby suffix = "pubby" name = "arrival shuttle (Pubby)" @@ -516,6 +562,14 @@ suffix = "default" name = "pirate ship (Default)" +/datum/map_template/shuttle/hunter/space_cop + suffix = "space_cop" + name = "Police Spacevan" + +/datum/map_template/shuttle/hunter/russian + suffix = "russian" + name = "Russian Cargo Ship" + /datum/map_template/shuttle/ruin/caravan_victim suffix = "caravan_victim" name = "Small Freighter" diff --git a/code/datums/spawners_menu.dm b/code/datums/spawners_menu.dm index ebbe08c5251..91a81247598 100644 --- a/code/datums/spawners_menu.dm +++ b/code/datums/spawners_menu.dm @@ -38,11 +38,15 @@ if(..()) return - var/spawner_ref = pick(GLOB.mob_spawners[params["name"]]) - var/obj/effect/mob_spawn/MS = locate(spawner_ref) in GLOB.poi_list - if(!MS) + var/group_name = params["name"] + if(!group_name || !(group_name in GLOB.mob_spawners)) + return + var/list/spawnerlist = GLOB.mob_spawners[group_name] + if(!spawnerlist.len) + return + var/obj/effect/mob_spawn/MS = pick(spawnerlist) + if(!istype(MS) || !(MS in GLOB.poi_list)) return - switch(action) if("jump") if(MS) @@ -51,4 +55,4 @@ if("spawn") if(MS) MS.attack_ghost(owner) - . = TRUE \ No newline at end of file + . = TRUE diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm index c10e65e95eb..acea0772d14 100644 --- a/code/datums/status_effects/buffs.dm +++ b/code/datums/status_effects/buffs.dm @@ -292,6 +292,7 @@ var/mob/living/carbon/C = owner for(var/X in C.bodyparts) var/obj/item/bodypart/BP = X + BP.max_damage *= 10 BP.brute_dam *= 10 BP.burn_dam *= 10 owner.toxloss *= 10 @@ -308,6 +309,7 @@ last_staminaloss = owner.getStaminaLoss() owner.log_message("gained blood-drunk stun immunity", LOG_ATTACK) owner.add_stun_absorption("blooddrunk", INFINITY, 4) + ADD_TRAIT(owner, TRAIT_IGNOREDAMAGESLOWDOWN, "blooddrunk"); owner.playsound_local(get_turf(owner), 'sound/effects/singlebeat.ogg', 40, 1) /datum/status_effect/blooddrunk/tick() //multiply the effect of healing by 10 @@ -377,12 +379,14 @@ var/obj/item/bodypart/BP = X BP.brute_dam *= 0.1 BP.burn_dam *= 0.1 + BP.max_damage /= 10 owner.toxloss *= 0.1 owner.oxyloss *= 0.1 owner.cloneloss *= 0.1 owner.staminaloss *= 0.1 owner.updatehealth() owner.log_message("lost blood-drunk stun immunity", LOG_ATTACK) + REMOVE_TRAIT(owner, TRAIT_IGNOREDAMAGESLOWDOWN, "blooddrunk"); if(islist(owner.stun_absorption) && owner.stun_absorption["blooddrunk"]) owner.stun_absorption -= "blooddrunk" @@ -401,12 +405,12 @@ owner.spin(duration,1) animate(owner, color = oldcolor, time = duration, easing = EASE_IN) addtimer(CALLBACK(owner, /atom/proc/update_atom_colour), duration) - playsound(owner, 'sound/weapons/fwoosh.wav', 75, 0) + playsound(owner, 'sound/weapons/fwoosh.ogg', 75, 0) return ..() /datum/status_effect/sword_spin/tick() - playsound(owner, 'sound/weapons/fwoosh.wav', 75, 0) + playsound(owner, 'sound/weapons/fwoosh.ogg', 75, 0) var/obj/item/slashy slashy = owner.get_active_held_item() for(var/mob/living/M in orange(1,owner)) @@ -466,13 +470,13 @@ /datum/status_effect/hippocraticOath/on_apply() //Makes the user passive, it's in their oath not to harm! - owner.add_trait(TRAIT_PACIFISM, "hippocraticOath") + ADD_TRAIT(owner, TRAIT_PACIFISM, "hippocraticOath") var/datum/atom_hud/H = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] H.add_hud_to(owner) return ..() /datum/status_effect/hippocraticOath/on_remove() - owner.remove_trait(TRAIT_PACIFISM, "hippocraticOath") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "hippocraticOath") var/datum/atom_hud/H = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] H.remove_hud_from(owner) @@ -568,12 +572,28 @@ alert_type = /obj/screen/alert/status_effect/regenerative_core /datum/status_effect/regenerative_core/on_apply() - owner.add_trait(TRAIT_IGNOREDAMAGESLOWDOWN, "regenerative_core") + ADD_TRAIT(owner, TRAIT_IGNOREDAMAGESLOWDOWN, "regenerative_core") owner.adjustBruteLoss(-25) owner.adjustFireLoss(-25) - owner.remove_CC() + owner.remove_CC() owner.bodytemperature = BODYTEMP_NORMAL return TRUE /datum/status_effect/regenerative_core/on_remove() - owner.remove_trait(TRAIT_IGNOREDAMAGESLOWDOWN, "regenerative_core") + REMOVE_TRAIT(owner, TRAIT_IGNOREDAMAGESLOWDOWN, id) + +/datum/status_effect/antimagic + id = "antimagic" + duration = 10 SECONDS + examine_text = "They seem to be covered in a dull, grey aura." + +/datum/status_effect/antimagic/on_apply() + owner.visible_message("[owner] is coated with a dull aura!") + ADD_TRAIT(owner, TRAIT_ANTIMAGIC, MAGIC_TRAIT) + //glowing wings overlay + playsound(owner, 'sound/weapons/fwoosh.ogg', 75, 0) + return ..() + +/datum/status_effect/antimagic/on_remove() + REMOVE_TRAIT(owner, TRAIT_ANTIMAGIC, MAGIC_TRAIT) + owner.visible_message("[owner]'s dull aura fades away...") diff --git a/code/datums/status_effects/debuffs.dm b/code/datums/status_effects/debuffs.dm index 2f3b3a1eb68..f6d6d038d41 100644 --- a/code/datums/status_effects/debuffs.dm +++ b/code/datums/status_effects/debuffs.dm @@ -82,6 +82,43 @@ desc = "You've fallen asleep. Wait a bit and you should wake up. Unless you don't, considering how helpless you are." icon_state = "asleep" +//STASIS +/datum/status_effect/incapacitating/stasis + id = "stasis" + duration = -1 + tick_interval = 10 + alert_type = /obj/screen/alert/status_effect/stasis + var/last_dead_time + +/datum/status_effect/incapacitating/stasis/proc/update_time_of_death() + if(last_dead_time) + var/delta = world.time - last_dead_time + var/new_timeofdeath = owner.timeofdeath + delta + owner.timeofdeath = new_timeofdeath + owner.tod = station_time_timestamp(wtime=new_timeofdeath) + last_dead_time = null + if(owner.stat == DEAD) + last_dead_time = world.time + +/datum/status_effect/incapacitating/stasis/on_creation(mob/living/new_owner, set_duration, updating_canmove) + . = ..() + update_time_of_death() + +/datum/status_effect/incapacitating/stasis/tick() + update_time_of_death() + +/datum/status_effect/incapacitating/stasis/on_remove() + update_time_of_death() + return ..() + +/datum/status_effect/incapacitating/stasis/be_replaced() + update_time_of_death() + return ..() + +/obj/screen/alert/status_effect/stasis + name = "Stasis" + desc = "Your biological functions have halted. You could live forever this way, but it's pretty boring." + icon_state = "stasis" //GOLEM GANG @@ -92,11 +129,11 @@ alert_type = /obj/screen/alert/status_effect/strandling /datum/status_effect/strandling/on_apply() - owner.add_trait(TRAIT_MAGIC_CHOKE, "dumbmoron") + ADD_TRAIT(owner, TRAIT_MAGIC_CHOKE, "dumbmoron") return ..() /datum/status_effect/strandling/on_remove() - owner.remove_trait(TRAIT_MAGIC_CHOKE, "dumbmoron") + REMOVE_TRAIT(owner, TRAIT_MAGIC_CHOKE, "dumbmoron") return ..() /obj/screen/alert/status_effect/strandling @@ -121,11 +158,11 @@ . = ..() /datum/status_effect/pacify/on_apply() - owner.add_trait(TRAIT_PACIFISM, "status_effect") + ADD_TRAIT(owner, TRAIT_PACIFISM, "status_effect") return ..() /datum/status_effect/pacify/on_remove() - owner.remove_trait(TRAIT_PACIFISM, "status_effect") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "status_effect") //OTHER DEBUFFS /datum/status_effect/pacify @@ -141,11 +178,11 @@ . = ..() /datum/status_effect/pacify/on_apply() - owner.add_trait(TRAIT_PACIFISM, "status_effect") + ADD_TRAIT(owner, TRAIT_PACIFISM, "status_effect") return ..() /datum/status_effect/pacify/on_remove() - owner.remove_trait(TRAIT_PACIFISM, "status_effect") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "status_effect") /datum/status_effect/his_wrath //does minor damage over time unless holding His Grace id = "his_wrath" @@ -581,16 +618,16 @@ alert_type = null /datum/status_effect/gonbolaPacify/on_apply() - owner.add_trait(TRAIT_PACIFISM, "gonbolaPacify") - owner.add_trait(TRAIT_MUTE, "gonbolaMute") - owner.add_trait(TRAIT_JOLLY, "gonbolaJolly") + ADD_TRAIT(owner, TRAIT_PACIFISM, "gonbolaPacify") + ADD_TRAIT(owner, TRAIT_MUTE, "gonbolaMute") + ADD_TRAIT(owner, TRAIT_JOLLY, "gonbolaJolly") to_chat(owner, "You suddenly feel at peace and feel no need to make any sudden or rash actions...") return ..() /datum/status_effect/gonbolaPacify/on_remove() - owner.remove_trait(TRAIT_PACIFISM, "gonbolaPacify") - owner.remove_trait(TRAIT_MUTE, "gonbolaMute") - owner.remove_trait(TRAIT_JOLLY, "gonbolaJolly") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "gonbolaPacify") + REMOVE_TRAIT(owner, TRAIT_MUTE, "gonbolaMute") + REMOVE_TRAIT(owner, TRAIT_JOLLY, "gonbolaJolly") /datum/status_effect/trance id = "trance" @@ -615,7 +652,7 @@ if(!iscarbon(owner)) return FALSE RegisterSignal(owner, COMSIG_MOVABLE_HEAR, .proc/hypnotize) - owner.add_trait(TRAIT_MUTE, "trance") + ADD_TRAIT(owner, TRAIT_MUTE, "trance") if(!owner.has_quirk(/datum/quirk/monochromatic)) owner.add_client_colour(/datum/client_colour/monochrome) owner.visible_message("[stun ? "[owner] stands still as [owner.p_their()] eyes seem to focus on a distant point." : ""]", \ @@ -629,7 +666,7 @@ /datum/status_effect/trance/on_remove() UnregisterSignal(owner, COMSIG_MOVABLE_HEAR) - owner.remove_trait(TRAIT_MUTE, "trance") + REMOVE_TRAIT(owner, TRAIT_MUTE, "trance") owner.dizziness = 0 if(!owner.has_quirk(/datum/quirk/monochromatic)) owner.remove_client_colour(/datum/client_colour/monochrome) @@ -655,7 +692,7 @@ if(prob(15)) switch(rand(1,5)) if(1) - if(owner.mobility_flags & MOBILITY_MOVE) + if((owner.mobility_flags & MOBILITY_MOVE) && isturf(owner.loc)) to_chat(owner, "Your leg spasms!") step(owner, pick(GLOB.cardinals)) if(2) @@ -701,3 +738,49 @@ to_chat(owner, "Your arm spasms!") owner.log_message("threw [I] due to a Muscle Spasm", LOG_ATTACK) owner.throw_item(pick(targets)) + +/datum/status_effect/dna_melt + id = "dna_melt" + duration = 600 + status_type = STATUS_EFFECT_REPLACE + alert_type = /obj/screen/alert/status_effect/dna_melt + var/kill_either_way = FALSE //no amount of removing mutations is gonna save you now + +/datum/status_effect/dna_melt/on_creation(mob/living/new_owner, set_duration, updating_canmove) + . = ..() + to_chat(new_owner, "My body can't handle the mutations! I need to get my mutations removed fast!") + +/datum/status_effect/dna_melt/on_remove() + if(!ishuman(owner)) + owner.gib() //fuck you in particular + return + var/mob/living/carbon/human/H = owner + H.something_horrible(kill_either_way) + +/obj/screen/alert/status_effect/dna_melt + name = "Genetic Breakdown" + desc = "I don't feel so good. Your body can't handle the mutations! You have one minute to remove your mutations, or you will be met with a horrible fate." + icon_state = "dna_melt" + +/datum/status_effect/go_away + id = "go_away" + duration = 100 + status_type = STATUS_EFFECT_REPLACE + tick_interval = 1 + alert_type = /obj/screen/alert/status_effect/go_away + var/direction + +/datum/status_effect/go_away/on_creation(mob/living/new_owner, set_duration, updating_canmove) + . = ..() + direction = pick(NORTH, SOUTH, EAST, WEST) + new_owner.setDir(direction) + +/datum/status_effect/go_away/tick() + owner.AdjustStun(1, ignore_canstun = TRUE) + var/turf/T = get_step(owner, direction) + owner.forceMove(T) + +/obj/screen/alert/status_effect/go_away + name = "TO THE STARS AND BEYOND!" + desc = "I must go, my people need me!" + icon_state = "high" diff --git a/code/datums/status_effects/neutral.dm b/code/datums/status_effects/neutral.dm index 646087e8532..df270e998c1 100644 --- a/code/datums/status_effects/neutral.dm +++ b/code/datums/status_effects/neutral.dm @@ -79,8 +79,55 @@ /datum/status_effect/throat_soothed/on_apply() . = ..() - owner.add_trait(TRAIT_SOOTHED_THROAT, "[STATUS_EFFECT_TRAIT]_[id]") + ADD_TRAIT(owner, TRAIT_SOOTHED_THROAT, "[STATUS_EFFECT_TRAIT]_[id]") /datum/status_effect/throat_soothed/on_remove() . = ..() - owner.remove_trait(TRAIT_SOOTHED_THROAT, "[STATUS_EFFECT_TRAIT]_[id]") + REMOVE_TRAIT(owner, TRAIT_SOOTHED_THROAT, "[STATUS_EFFECT_TRAIT]_[id]") + +/datum/status_effect/bounty + id = "bounty" + status_type = STATUS_EFFECT_UNIQUE + var/mob/living/rewarded + +/datum/status_effect/bounty/on_creation(mob/living/new_owner, mob/living/caster) + . = ..() + if(.) + rewarded = caster + +/datum/status_effect/bounty/on_apply() + to_chat(owner, "You hear something behind you talking... You have been marked for death by [rewarded]. If you die, they will be rewarded.") + playsound(owner, 'sound/weapons/shotgunpump.ogg', 75, 0) + return ..() + +/datum/status_effect/bounty/tick() + if(owner.stat == DEAD) + rewards() + qdel(src) + +/datum/status_effect/bounty/proc/rewards() + if(rewarded && rewarded.mind && rewarded.stat != DEAD) + to_chat(owner, "You hear something behind you talking... Bounty claimed.") + playsound(owner, 'sound/weapons/shotgunshot.ogg', 75, 0) + to_chat(rewarded, "You feel a surge of mana flow into you!") + for(var/obj/effect/proc_holder/spell/spell in rewarded.mind.spell_list) + spell.charge_counter = spell.charge_max + spell.recharging = FALSE + spell.update_icon() + rewarded.adjustBruteLoss(-25) + rewarded.adjustFireLoss(-25) + rewarded.adjustToxLoss(-25) + rewarded.adjustOxyLoss(-25) + rewarded.adjustCloneLoss(-25) + +/datum/status_effect/bugged //Lets another mob hear everything you can + id = "bugged" + duration = -1 + status_type = STATUS_EFFECT_MULTIPLE + alert_type = null + var/mob/living/listening_in + +/datum/status_effect/bugged/on_creation(mob/living/new_owner, mob/living/tracker) + . = ..() + if(.) + listening_in = tracker diff --git a/code/datums/traits.dm b/code/datums/traits.dm deleted file mode 100644 index 15715c3c888..00000000000 --- a/code/datums/traits.dm +++ /dev/null @@ -1,75 +0,0 @@ -/datum/proc/add_trait(trait, source) - LAZYINITLIST(status_traits) - - if(!status_traits[trait]) - status_traits[trait] = list(source) - else - status_traits[trait] |= list(source) - - -/datum/proc/remove_trait(trait, list/sources, force) - if(!status_traits) - return //nothing to remove - - if(!status_traits[trait]) - return - - if(locate(ROUNDSTART_TRAIT) in status_traits[trait] && !force) //mob traits applied through roundstart cannot normally be removed - return - - if(!sources) // No defined source cures the trait entirely. - status_traits -= trait - return - - if(!islist(sources)) - sources = list(sources) - - if(LAZYLEN(sources)) - for(var/S in sources) - if(S in status_traits[trait]) - status_traits[trait] -= S - else - status_traits[trait] = list() - - if(!LAZYLEN(status_traits[trait])) - status_traits -= trait - -/datum/proc/has_trait(trait, list/sources) - if(!status_traits) - return FALSE //well of course it doesn't have the trait - - if(!status_traits[trait]) - return FALSE - - . = FALSE - - if(sources && !islist(sources)) - sources = list(sources) - if(LAZYLEN(sources)) - for(var/S in sources) - if(S in status_traits[trait]) - return TRUE - else if(LAZYLEN(status_traits[trait])) - return TRUE - -/datum/proc/remove_all_traits(remove_species_traits = FALSE, remove_organ_traits = FALSE, remove_quirks = FALSE) - if(!status_traits) - return //nothing to remove - - var/list/blacklisted_sources = list() - if(!remove_species_traits) - blacklisted_sources += SPECIES_TRAIT - if(!remove_organ_traits) - blacklisted_sources += ORGAN_TRAIT - if(!remove_quirks) - blacklisted_sources += ROUNDSTART_TRAIT - - for(var/kebab in status_traits) - var/skip - for(var/S in blacklisted_sources) - if(S in status_traits[kebab]) - skip = TRUE - break - if(!skip) - remove_trait(kebab, null, TRUE) - CHECK_TICK diff --git a/code/datums/traits/_quirk.dm b/code/datums/traits/_quirk.dm index 963afacec3c..cc6dd8db3f8 100644 --- a/code/datums/traits/_quirk.dm +++ b/code/datums/traits/_quirk.dm @@ -21,7 +21,7 @@ to_chat(quirk_holder, gain_text) quirk_holder.roundstart_quirks += src if(mob_trait) - quirk_holder.add_trait(mob_trait, ROUNDSTART_TRAIT) + ADD_TRAIT(quirk_holder, mob_trait, ROUNDSTART_TRAIT) START_PROCESSING(SSquirks, src) add() if(spawn_effects) @@ -35,7 +35,7 @@ to_chat(quirk_holder, lose_text) quirk_holder.roundstart_quirks -= src if(mob_trait) - quirk_holder.remove_trait(mob_trait, ROUNDSTART_TRAIT, TRUE) + REMOVE_TRAIT(quirk_holder, mob_trait, ROUNDSTART_TRAIT) SSquirks.quirk_objects -= src return ..() @@ -43,8 +43,8 @@ quirk_holder.roundstart_quirks -= src to_mob.roundstart_quirks += src if(mob_trait) - quirk_holder.remove_trait(mob_trait, ROUNDSTART_TRAIT) - to_mob.add_trait(mob_trait, ROUNDSTART_TRAIT) + REMOVE_TRAIT(quirk_holder, mob_trait, ROUNDSTART_TRAIT) + ADD_TRAIT(to_mob, mob_trait, ROUNDSTART_TRAIT) quirk_holder = to_mob on_transfer() @@ -111,7 +111,7 @@ Use this as a guideline mob_trait = TRAIT_NEARSIGHT ///This define is in __DEFINES/traits.dm and is the actual "trait" that the game tracks - ///You'll need to use "has_trait(X, sources)" checks around the code to check this; for instance, the Ageusia trait is checked in taste code + ///You'll need to use "HAS_TRAIT_FROM(src, X, sources)" checks around the code to check this; for instance, the Ageusia trait is checked in taste code ///If you need help finding where to put it, the declaration finder on GitHub is the best way to locate it gain_text = "Things far away from you start looking blurry." diff --git a/code/datums/traits/good.dm b/code/datums/traits/good.dm index 5d4f8cdc22a..ff1ccc15b60 100644 --- a/code/datums/traits/good.dm +++ b/code/datums/traits/good.dm @@ -8,12 +8,14 @@ mob_trait = TRAIT_ALCOHOL_TOLERANCE gain_text = "You feel like you could drink a whole keg!" lose_text = "You don't feel as resistant to alcohol anymore. Somehow." + medical_record_text = "Patient demonstrates a high tolerance for alcohol." /datum/quirk/apathetic name = "Apathetic" desc = "You just don't care as much as other people. That's nice to have in a place like this, I guess." value = 1 mood_quirk = TRUE + medical_record_text = "Patient was administered the Apathy Evaluation Scale but did not bother to complete it." /datum/quirk/apathetic/add() GET_COMPONENT_FROM(mood, /datum/component/mood, quirk_holder) @@ -35,6 +37,15 @@ lose_text = "You no longer feel like drinking would ease your pain." medical_record_text = "Patient has unusually efficient liver metabolism and can slowly regenerate wounds by drinking alcoholic beverages." +/datum/quirk/empath + name = "Empath" + desc = "Whether it's a sixth sense or careful study of body language, it only takes you a quick glance at someone to understand how they feel." + value = 2 + mob_trait = TRAIT_EMPATH + gain_text = "You feel in tune with those around you." + lose_text = "You feel isolated from others." + medical_record_text = "Patient is highly perceptive of and sensitive to social cues, or may possibly have ESP. Further testing needed." + /datum/quirk/freerunning name = "Freerunning" desc = "You're great at quick moves! You can climb tables more quickly." @@ -42,6 +53,17 @@ mob_trait = TRAIT_FREERUNNING gain_text = "You feel lithe on your feet!" lose_text = "You feel clumsy again." + medical_record_text = "Patient scored highly on cardio tests." + +/datum/quirk/friendly + name = "Friendly" + desc = "You give the best hugs, especially when you're in the right mood." + value = 1 + mob_trait = TRAIT_FRIENDLY + gain_text = "You want to hug someone." + lose_text = "You no longer feel compelled to hug others." + mood_quirk = TRUE + medical_record_text = "Patient demonstrates low-inhibitions for physical contact and well-developed arms. Requesting another doctor take over this case." /datum/quirk/jolly name = "Jolly" @@ -49,6 +71,11 @@ value = 1 mob_trait = TRAIT_JOLLY mood_quirk = TRUE + medical_record_text = "Patient demonstrates constant euthymia irregular for environment. It's a bit much, to be honest." + +/datum/quirk/jolly/on_process() + if(prob(0.05)) + SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "jolly", /datum/mood_event/jolly) /datum/quirk/light_step name = "Light Step" @@ -57,6 +84,7 @@ mob_trait = TRAIT_LIGHT_STEP gain_text = "You walk with a little more litheness." lose_text = "You start tromping around like a barbarian." + medical_record_text = "Patient's dexterity belies a strong capacity for stealth." /datum/quirk/musician name = "Musician" @@ -65,6 +93,7 @@ mob_trait = TRAIT_MUSICIAN gain_text = "You know everything about musical instruments." lose_text = "You forget how musical instruments work." + medical_record_text = "Patient brain scans show a highly-developed auditory pathway." /datum/quirk/musician/on_spawn() var/mob/living/carbon/human/H = quirk_holder @@ -80,6 +109,7 @@ mob_trait = TRAIT_NIGHT_VISION gain_text = "The shadows seem a little less dark." lose_text = "Everything seems a little darker." + medical_record_text = "Patient's eyes show above-average acclimation to darkness." /datum/quirk/night_vision/on_spawn() var/mob/living/carbon/human/H = quirk_holder @@ -95,6 +125,7 @@ mob_trait = TRAIT_PHOTOGRAPHER gain_text = "You know everything about photography." lose_text = "You forget how photo cameras work." + medical_record_text = "Patient mentions photography as a stress-relieving hobby." /datum/quirk/photographer/on_spawn() var/mob/living/carbon/human/H = quirk_holder @@ -108,12 +139,14 @@ desc = "You know your body well, and can accurately assess the extent of your wounds." value = 2 mob_trait = TRAIT_SELF_AWARE + medical_record_text = "Patient demonstrates an uncanny knack for self-diagnosis." /datum/quirk/skittish name = "Skittish" desc = "You can conceal yourself in danger. Ctrl-shift-click a closed locker to jump into it, as long as you have access." value = 2 mob_trait = TRAIT_SKITTISH + medical_record_text = "Patient demonstrates a high aversion to danger and has described hiding in containers out of fear." /datum/quirk/spiritual name = "Spiritual" @@ -122,23 +155,13 @@ mob_trait = TRAIT_SPIRITUAL gain_text = "You have faith in a higher power." lose_text = "You lose faith!" + medical_record_text = "Patient reports a belief in a higher power." /datum/quirk/spiritual/on_spawn() var/mob/living/carbon/human/H = quirk_holder H.equip_to_slot_or_del(new /obj/item/storage/fancy/candle_box(H), SLOT_IN_BACKPACK) H.equip_to_slot_or_del(new /obj/item/storage/box/matches(H), SLOT_IN_BACKPACK) -/datum/quirk/spiritual/on_process() - var/comforted = FALSE - for(var/mob/living/L in oview(5, quirk_holder)) - if(L.mind && L.mind.isholy && L.stat == CONSCIOUS) - comforted = TRUE - break - if(comforted) - SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "religious_comfort", /datum/mood_event/religiously_comforted) - else - SEND_SIGNAL(quirk_holder, COMSIG_CLEAR_MOOD_EVENT, "religious_comfort") - /datum/quirk/tagger name = "Tagger" desc = "You're an experienced artist. While drawing graffiti, you can get twice as many uses out of drawing supplies." @@ -146,6 +169,7 @@ mob_trait = TRAIT_TAGGER gain_text = "You know how to tag walls efficiently." lose_text = "You forget how to tag walls properly." + medical_record_text = "Patient was recently seen for possible paint huffing incident." /datum/quirk/tagger/on_spawn() var/mob/living/carbon/human/H = quirk_holder @@ -161,6 +185,7 @@ mob_trait = TRAIT_VORACIOUS gain_text = "You feel HONGRY." lose_text = "You no longer feel HONGRY." + medical_record_text = "Patient demonstrates a disturbing capacity for eating." /datum/quirk/neet name = "NEET" @@ -170,9 +195,18 @@ gain_text = "You feel useless to society." lose_text = "You no longer feel useless to society." mood_quirk = TRUE + medical_record_text = "Patient continues to qualify for welfare and has made no efforts to improve hygiene." /datum/quirk/neet/on_spawn() var/mob/living/carbon/human/H = quirk_holder var/datum/bank_account/D = H.get_bank_account() + if(!D) //if their current mob doesn't have a bank account, likely due to them being a special role (ie nuke op) + return D.welfare = TRUE - D.add_neetbux() + +/datum/quirk/neet/on_process() + var/mob/living/carbon/human/H = quirk_holder + if (H.hygiene <= HYGIENE_LEVEL_DIRTY) + SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "NEET", /datum/mood_event/happy_neet) + else + SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "NEET") diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index a2770e5ae61..d96e567b74a 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -1,7 +1,23 @@ //predominantly negative traits +/datum/quirk/badback + name = "Bad Back" + desc = "Thanks to your poor posture, backpacks and other bags never sit right on your back. More evently weighted objects are fine, though." + value = -2 + mood_quirk = TRUE + gain_text = "Your back REALLY hurts!" + lose_text = "Your back feels better." + medical_record_text = "Patient scans indicate severe and chronic back pain." + +/datum/quirk/badback/on_process() + var/mob/living/carbon/human/H = quirk_holder + if(H.back && istype(H.back, /obj/item/storage/backpack)) + SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "back_pain", /datum/mood_event/back_pain) + else + SEND_SIGNAL(quirk_holder, COMSIG_CLEAR_MOOD_EVENT, "back_pain") + /datum/quirk/blooddeficiency - name = "Acute Blood Deficiency" + name = "Blood Deficiency" desc = "Your body can't produce enough blood to sustain itself." value = -2 gain_text = "You feel your vigor slowly fading away." @@ -13,7 +29,8 @@ if(NOBLOOD in H.dna.species.species_traits) //can't lose blood if your species doesn't have any return else - quirk_holder.blood_volume -= 0.275 + if (H.blood_volume > (BLOOD_VOLUME_SAFE - 25)) // just barely survivable without treatment + H.blood_volume -= 0.275 /datum/quirk/blindness name = "Blind" @@ -21,7 +38,7 @@ value = -4 gain_text = "You can't see anything." lose_text = "You miraculously gain back your vision." - medical_record_text = "Subject has permanent blindness." + medical_record_text = "Patient has permanent blindness." /datum/quirk/blindness/add() quirk_holder.become_blind(ROUNDSTART_TRAIT) @@ -51,7 +68,7 @@ mob_trait = TRAIT_DEAF gain_text = "You can't hear anything." lose_text = "You're able to hear again!" - medical_record_text = "Subject's cochlear nerve is incurably damaged." + medical_record_text = "Patient's cochlear nerve is incurably damaged." /datum/quirk/depression name = "Depression" @@ -60,9 +77,13 @@ value = -1 gain_text = "You start feeling depressed." lose_text = "You no longer feel depressed." //if only it were that easy! - medical_record_text = "Patient has a severe mood disorder causing them to experience sudden moments of sadness." + medical_record_text = "Patient has a severe mood disorder, causing them to experience acute episodes of depression." mood_quirk = TRUE +/datum/quirk/depression/on_process() + if(prob(0.05)) + SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "depression", /datum/mood_event/depression) + /datum/quirk/family_heirloom name = "Family Heirloom" desc = "You are the current owner of an heirloom, passed down for generations. You have to keep it safe!" @@ -70,6 +91,7 @@ mood_quirk = TRUE var/obj/item/heirloom var/where + medical_record_text = "Patient demonstrates an unnatural attachment to a family heirloom." /datum/quirk/family_heirloom/on_spawn() var/mob/living/carbon/human/H = quirk_holder @@ -194,6 +216,7 @@ value = -1 gain_text = "You seem to make a big deal out of everything." lose_text = "You don't seem to make a big deal out of everything anymore." + medical_record_text = "Patient demonstrates a high level of emotional volatility." /datum/quirk/hypersensitive/add() GET_COMPONENT_FROM(mood, /datum/component/mood, quirk_holder) @@ -213,6 +236,7 @@ mob_trait = TRAIT_LIGHT_DRINKER gain_text = "Just the thought of drinking alcohol makes your head spin." lose_text = "You're no longer severely affected by alcohol." + medical_record_text = "Patient demonstrates a low tolerance for alcohol. (Wimp)" /datum/quirk/nearsighted //t. errorage name = "Nearsighted" @@ -236,6 +260,7 @@ name = "Nyctophobia" desc = "As far as you can remember, you've always been afraid of the dark. While in the dark without a light source, you instinctually act careful, and constantly feel a sense of dread." value = -1 + medical_record_text = "Patient demonstrates a fear of the dark. (Seriously?)" /datum/quirk/nyctophobia/on_process() var/mob/living/carbon/human/H = quirk_holder @@ -260,11 +285,6 @@ lose_text = "You think you can defend yourself again." medical_record_text = "Patient is unusually pacifistic and cannot bring themselves to cause physical harm." -/datum/quirk/nonviolent/on_process() - if(quirk_holder.mind && LAZYLEN(quirk_holder.mind.antag_datums)) - to_chat(quirk_holder, "Your antagonistic nature has caused you to renounce your pacifism.") - qdel(src) - /datum/quirk/paraplegic name = "Paraplegic" desc = "Your legs do not function. Nothing will ever fix this. But hey, free wheelchair!" @@ -299,7 +319,6 @@ if(I.fingerprintslast == quirk_holder.ckey) quirk_holder.put_in_hands(I) - /datum/quirk/poor_aim name = "Poor Aim" desc = "You're terrible with guns and can't line up a straight shot to save your life. Dual-wielding is right out." @@ -319,6 +338,7 @@ desc = "An accident caused you to lose one of your limbs. Because of this, you now have a random prosthetic!" value = -1 var/slot_string = "limb" + medical_record_text = "During physical examination, patient was found to have a prosthetic limb." /datum/quirk/prosthetic_limb/on_spawn() var/limb_slot = pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) @@ -442,7 +462,7 @@ for(var/i in 1 to 7) var/obj/item/reagent_containers/pill/P = new(drug_instance) P.icon_state = pill_state - P.list_reagents = list("[reagent_id]" = 1) + P.reagents.add_reagent(reagent_id, 1) if (accessory_type) accessory_instance = new accessory_type(current_turf) @@ -500,11 +520,11 @@ /obj/item/storage/fancy/cigarettes/cigars, /obj/item/storage/fancy/cigarettes/cigars/cohiba, /obj/item/storage/fancy/cigarettes/cigars/havana) - . = ..() + . = ..() /datum/quirk/junkie/smoker/announce_drugs() to_chat(quirk_holder, "There is a [drug_instance.name] [where_drug], and a lighter [where_accessory]. Make sure you get your favorite brand when you run out.") - + /datum/quirk/junkie/smoker/on_process() . = ..() @@ -512,7 +532,16 @@ var/obj/item/I = H.get_item_by_slot(SLOT_WEAR_MASK) if (istype(I, /obj/item/clothing/mask/cigarette)) var/obj/item/storage/fancy/cigarettes/C = drug_instance - if(istype(I, C.spawn_type)) + if(istype(I, C.spawn_type)) SEND_SIGNAL(quirk_holder, COMSIG_CLEAR_MOOD_EVENT, "wrong_cigs") return SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "wrong_cigs", /datum/mood_event/wrong_brand) + +/datum/quirk/unstable + name = "Unstable" + desc = "Due to past troubles, you are unable to recover your sanity if you lose it. Be very careful managing your mood!" + value = -2 + mob_trait = TRAIT_UNSTABLE + gain_text = "There's a lot on your mind right now." + lose_text = "Your mind finally feels calm." + medical_record_text = "Patient's mind is in a vulnerable state, and cannot recover from traumatic events." diff --git a/code/datums/traits/neutral.dm b/code/datums/traits/neutral.dm index d02b93926f2..66ac13905bb 100644 --- a/code/datums/traits/neutral.dm +++ b/code/datums/traits/neutral.dm @@ -16,6 +16,7 @@ value = 0 gain_text = "You feel repulsion at the idea of eating meat." lose_text = "You feel like eating meat isn't that bad." + medical_record_text = "Patient reports a vegetarian diet." /datum/quirk/vegetarian/add() var/mob/living/carbon/human/H = quirk_holder @@ -31,13 +32,14 @@ species.liked_food |= MEAT if(!initial(species.disliked_food) & MEAT) species.disliked_food &= ~MEAT - + /datum/quirk/pineapple_liker name = "Ananas Affinity" desc = "You find yourself greatly enjoying fruits of the ananas genus. You can't seem to ever get enough of their sweet goodness!" value = 0 gain_text = "You feel an intense craving for pineapple." lose_text = "Your feelings towards pineapples seem to return to a lukewarm state." + medical_record_text = "Patient demonstrates a pathological love of pineapple." /datum/quirk/pineapple_liker/add() var/mob/living/carbon/human/H = quirk_holder @@ -56,6 +58,7 @@ value = 0 gain_text = "You find yourself pondering what kind of idiot actually enjoys pineapples..." lose_text = "Your feelings towards pineapples seem to return to a lukewarm state." + medical_record_text = "Patient is correct to think that pineapple is disgusting." /datum/quirk/pineapple_hater/add() var/mob/living/carbon/human/H = quirk_holder @@ -74,6 +77,7 @@ value = 0 gain_text = "You start craving something that tastes strange." lose_text = "You feel like eating normal food again." + medical_record_text = "Patient demonstrates irregular nutrition preferences." /datum/quirk/deviant_tastes/add() var/mob/living/carbon/human/H = quirk_holder @@ -96,6 +100,17 @@ gain_text = "You feel like you have to stay clean." lose_text = "You no longer feel the need to always be clean." mood_quirk = TRUE + medical_record_text = "While waiting for the exam to begin, patient cleaned the examination room." + +/datum/quirk/neat/on_process() + var/mob/living/carbon/human/H = quirk_holder + switch (H.hygiene) + if(0 to HYGIENE_LEVEL_DIRTY) + SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "neat", /datum/mood_event/dirty) + if(HYGIENE_LEVEL_DIRTY to HYGIENE_LEVEL_NORMAL) + SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "neat") + if(HYGIENE_LEVEL_NORMAL to HYGIENE_LEVEL_CLEAN) + SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "neat", /datum/mood_event/neat) /datum/quirk/monochromatic name = "Monochromacy" diff --git a/code/datums/verbs.dm b/code/datums/verbs.dm index 79fe256bb49..d8d7ee74334 100644 --- a/code/datums/verbs.dm +++ b/code/datums/verbs.dm @@ -11,7 +11,7 @@ //do things for each entry in Generate_list //return value sets Generate_list[verbpath] -/datum/verbs/proc/HandleVerb(list/entry, atom/verb/verbpath, ...) +/datum/verbs/proc/HandleVerb(list/entry, procpath/verbpath, ...) return entry /datum/verbs/New() @@ -82,7 +82,7 @@ . += childlist for (var/thing in verblist) - var/atom/verb/verbpath = thing + var/procpath/verbpath = thing if (!verbpath) stack_trace("Bad VERB in [type] verblist: [english_list(verblist)]") var/list/entry = list() diff --git a/code/datums/weather/weather_types/radiation_storm.dm b/code/datums/weather/weather_types/radiation_storm.dm index 070c19331e0..d0fff8da9fe 100644 --- a/code/datums/weather/weather_types/radiation_storm.dm +++ b/code/datums/weather/weather_types/radiation_storm.dm @@ -33,7 +33,7 @@ if(prob(40)) if(ishuman(L)) var/mob/living/carbon/human/H = L - if(H.dna && !H.has_trait(TRAIT_RADIMMUNE)) + if(H.dna && !HAS_TRAIT(H, TRAIT_RADIMMUNE)) if(prob(max(0,100-resist))) H.randmuti() if(prob(50)) diff --git a/code/datums/wires/airalarm.dm b/code/datums/wires/airalarm.dm index 9030adfa6d6..237d36f51bd 100644 --- a/code/datums/wires/airalarm.dm +++ b/code/datums/wires/airalarm.dm @@ -44,7 +44,7 @@ A.mode = 3 // AALARM_MODE_PANIC else A.mode = 1 // AALARM_MODE_SCRUB - A.apply_mode() + A.apply_mode(usr) if(WIRE_ALARM) // Clear alarms. var/area/AA = get_area(A) if(AA.atmosalert(0, holder)) @@ -66,9 +66,9 @@ if(WIRE_PANIC) // Force panic syphon on. if(!mend && !A.shorted) A.mode = 3 // AALARM_MODE_PANIC - A.apply_mode() + A.apply_mode(usr) if(WIRE_ALARM) // Post alarm. var/area/AA = get_area(A) if(AA.atmosalert(2, holder)) A.post_alert(2) - A.update_icon() \ No newline at end of file + A.update_icon() diff --git a/code/datums/wires/syndicatebomb.dm b/code/datums/wires/syndicatebomb.dm index 92cc1770b36..2fcccf26631 100644 --- a/code/datums/wires/syndicatebomb.dm +++ b/code/datums/wires/syndicatebomb.dm @@ -22,16 +22,19 @@ holder.visible_message("[icon2html(B, viewers(holder))] An alarm sounds! It's go-") B.explode_now = TRUE tell_admins(B) + else + holder.visible_message("[icon2html(B, viewers(holder))] Nothing happens.") if(WIRE_UNBOLT) holder.visible_message("[icon2html(B, viewers(holder))] The bolts spin in place for a moment.") if(WIRE_DELAY) if(B.delayedbig) - holder.visible_message("[icon2html(B, viewers(holder))] The bomb has already been delayed.") + holder.visible_message("[icon2html(B, viewers(holder))] Nothing happens.") else holder.visible_message("[icon2html(B, viewers(holder))] The bomb chirps.") playsound(B, 'sound/machines/chime.ogg', 30, 1) B.detonation_timer += 300 - B.delayedbig = TRUE + if(B.active) + B.delayedbig = TRUE if(WIRE_PROCEED) holder.visible_message("[icon2html(B, viewers(holder))] The bomb buzzes ominously!") playsound(B, 'sound/machines/buzz-sigh.ogg', 30, 1) @@ -43,7 +46,7 @@ else if(seconds >= 11) // Both to prevent negative timers and to have a little mercy. B.detonation_timer = world.time + 100 if(WIRE_ACTIVATE) - if(!B.active && !B.defused) + if(!B.active) holder.visible_message("[icon2html(B, viewers(holder))] You hear the bomb start ticking!") B.activate() B.update_icon() @@ -58,15 +61,10 @@ var/obj/machinery/syndicatebomb/B = holder switch(wire) if(WIRE_BOOM) - if(mend) - B.defused = FALSE // Cutting and mending all the wires of an inactive bomb will thus cure any sabotage. - else - if(B.active) - holder.visible_message("[icon2html(B, viewers(holder))] An alarm sounds! It's go-") - B.explode_now = TRUE - tell_admins(B) - else - B.defused = TRUE + if(!mend && B.active) + holder.visible_message("[icon2html(B, viewers(holder))] An alarm sounds! It's go-") + B.explode_now = TRUE + tell_admins(B) if(WIRE_UNBOLT) if(!mend && B.anchored) holder.visible_message("[icon2html(B, viewers(holder))] The bolts lift out of the ground!") @@ -81,7 +79,8 @@ if(!mend && B.active) holder.visible_message("[icon2html(B, viewers(holder))] The timer stops! The bomb has been defused!") B.active = FALSE - B.defused = TRUE + B.delayedlittle = FALSE + B.delayedbig = FALSE B.update_icon() /datum/wires/syndicatebomb/proc/tell_admins(obj/machinery/syndicatebomb/B) diff --git a/code/datums/world_topic.dm b/code/datums/world_topic.dm index d1ca07be2e6..fed7545428d 100644 --- a/code/datums/world_topic.dm +++ b/code/datums/world_topic.dm @@ -174,7 +174,13 @@ .["time_dilation_avg"] = SStime_track.time_dilation_avg .["time_dilation_avg_slow"] = SStime_track.time_dilation_avg_slow .["time_dilation_avg_fast"] = SStime_track.time_dilation_avg_fast - + + //pop cap stats + .["soft_popcap"] = CONFIG_GET(number/soft_popcap) || 0 + .["hard_popcap"] = CONFIG_GET(number/hard_popcap) || 0 + .["extreme_popcap"] = CONFIG_GET(number/extreme_popcap) || 0 + .["popcap"] = max(CONFIG_GET(number/soft_popcap), CONFIG_GET(number/hard_popcap), CONFIG_GET(number/extreme_popcap)) //generalized field for this concept for use across ss13 codebases + if(SSshuttle && SSshuttle.emergency) .["shuttle_mode"] = SSshuttle.emergency.mode // Shuttle status, see /__DEFINES/stat.dm diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index e88a13bd857..f82d0a62d61 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -483,6 +483,14 @@ NOTE: there are two lists of areas in the end of this file: centcom and station name = "Atmospherics Engine" icon_state = "atmos_engine" +/area/engine/engine_room //donut station specific + name = "Engine Room" + icon_state = "atmos_engine" + +/area/engine/engine_room/external + name = "Supermatter External Access" + icon_state = "engine_foyer" + /area/engine/supermatter name = "Supermatter Engine" icon_state = "engine_sm" diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index d7d97818c6a..00a72db4acf 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -75,7 +75,9 @@ GLOBAL_LIST_EMPTY(teleportlocs) continue if(GLOB.teleportlocs[AR.name]) continue - var/turf/picked = safepick(get_area_turfs(AR.type)) + if (!AR.contents.len) + continue + var/turf/picked = AR.contents[1] if (picked && is_station_level(picked.z)) GLOB.teleportlocs[AR.name] = AR @@ -327,7 +329,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) for(var/obj/machinery/light/L in src) L.update() -/area/proc/updateicon() +/area/proc/update_icon() var/weather_icon for(var/V in SSweather.processing) var/datum/weather/W = V @@ -337,7 +339,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) if(!weather_icon) icon_state = null -/area/space/updateicon() +/area/space/update_icon() icon_state = null /* @@ -370,7 +372,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) /area/proc/power_change() for(var/obj/machinery/M in src) // for each machine in the area M.power_change() // reverify power status (to update icons etc.) - updateicon() + update_icon() /area/proc/usage(chan) var/used = 0 diff --git a/code/game/area/areas/away_content.dm b/code/game/area/areas/away_content.dm index b724c926079..997d85ded40 100644 --- a/code/game/area/areas/away_content.dm +++ b/code/game/area/areas/away_content.dm @@ -25,4 +25,8 @@ Unused icons for new areas are "awaycontent1" ~ "awaycontent30" /area/awaymission/vr name = "Virtual Reality" - icon_state = "awaycontent1" \ No newline at end of file + icon_state = "awaycontent1" + requires_power = FALSE + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + var/pacifist = TRUE // if when you enter this zone, you become a pacifist or not + var/death = FALSE // if when you enter this zone, you die diff --git a/code/game/area/areas/centcom.dm b/code/game/area/areas/centcom.dm index 5db39eebc66..2f976a71e5e 100644 --- a/code/game/area/areas/centcom.dm +++ b/code/game/area/areas/centcom.dm @@ -47,16 +47,19 @@ icon_state = "supplypod_loading" /area/centcom/supplypod/loading/one - name = "Supplypod Loading Bay #1" + name = "Bay #1" /area/centcom/supplypod/loading/two - name = "Supplypod Loading Bay #2" + name = "Bay #2" /area/centcom/supplypod/loading/three - name = "Supplypod Loading Bay #3" + name = "Bay #3" /area/centcom/supplypod/loading/four - name = "Supplypod Loading Bay #4" + name = "Bay #4" + +/area/centcom/supplypod/loading/ert + name = "ERT Bay" //THUNDERDOME /area/tdome diff --git a/code/game/area/areas/holodeck.dm b/code/game/area/areas/holodeck.dm index 10e3249d649..47a8de404d7 100644 --- a/code/game/area/areas/holodeck.dm +++ b/code/game/area/areas/holodeck.dm @@ -99,6 +99,9 @@ /area/holodeck/rec_center/winterwonderland name = "Holodeck - Winter Wonderland" +/area/holodeck/rec_center/photobooth + name = "Holodeck - Photobooth" + // Bad programs /area/holodeck/rec_center/burn diff --git a/code/game/area/areas/shuttles.dm b/code/game/area/areas/shuttles.dm index 61a3803f47c..3c63dd6d6b6 100644 --- a/code/game/area/areas/shuttles.dm +++ b/code/game/area/areas/shuttles.dm @@ -60,6 +60,14 @@ requires_power = TRUE canSmoothWithAreas = /area/shuttle/pirate +////////////////////////////Bounty Hunter Shuttles//////////////////////////// + +/area/shuttle/hunter + name = "Hunter Shuttle" + dynamic_lighting = DYNAMIC_LIGHTING_DISABLED + blob_allowed = FALSE + canSmoothWithAreas = /area/shuttle/hunter + ////////////////////////////White Ship//////////////////////////// /area/shuttle/abandoned @@ -119,6 +127,11 @@ name = "Mining Shuttle" blob_allowed = FALSE +/area/shuttle/mining/large + name = "Mining Shuttle" + blob_allowed = FALSE + requires_power = TRUE + /area/shuttle/labor name = "Labor Camp Shuttle" blob_allowed = FALSE @@ -196,4 +209,4 @@ name = "Tiny Freighter" /area/shuttle/caravan/freighter3 - name = "Tiny Freighter" \ No newline at end of file + name = "Tiny Freighter" diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 7073362590e..d11fd39a4ef 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -42,7 +42,7 @@ /atom/New(loc, ...) //atom creation method that preloads variables at creation if(GLOB.use_preloader && (src.type == GLOB._preloader.target_path))//in case the instanciated atom is creating other atoms in New() - GLOB._preloader.load(src) + world.preloader_load(src) if(datum_flags & DF_USE_TAG) GenerateTag() @@ -74,23 +74,26 @@ if(color) add_atom_colour(color, FIXED_COLOUR_PRIORITY) - if (light_power && light_range) + if(light_power && light_range) update_light() - if (opacity && isturf(loc)) + if(opacity && isturf(loc)) var/turf/T = loc T.has_opaque_atom = TRUE // No need to recalculate it in this case, it's guaranteed to be on afterwards anyways. - if (canSmoothWith) + if(canSmoothWith) canSmoothWith = typelist("canSmoothWith", canSmoothWith) + if(datum_outputs) + for(var/i in 1 to length(datum_outputs)) + datum_outputs[i] = SSoutputs.outputs[datum_outputs[i]] ComponentInitialize() return INITIALIZE_HINT_NORMAL //called if Initialize returns INITIALIZE_HINT_LATELOAD /atom/proc/LateInitialize() - return + set waitfor = FALSE // Put your AddComponent() calls here /atom/proc/ComponentInitialize() @@ -202,6 +205,9 @@ else return null +/atom/proc/return_analyzable_air() + return null + /atom/proc/check_eye(mob/user) return @@ -265,7 +271,7 @@ . = "[icon2html(src, user)] [thats? "That's ":""][get_examine_name(user)]" /atom/proc/examine(mob/user) - to_chat(user, get_examine_string(user, TRUE)) + to_chat(user, "[get_examine_string(user, TRUE)].") if(desc) to_chat(user, desc) @@ -694,7 +700,7 @@ Proc for attack log creation, because really why not var/sobject = "" if(object) - sobject = " with [key_name(object)]" + sobject = " with [object]" var/saddition = "" if(addition) saddition = " [addition]" diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index dcb90e37cae..bed96e11d9d 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -163,7 +163,7 @@ /atom/movable/proc/Move_Pulled(atom/A) if(!pulling) return - if(pulling.anchored || !pulling.Adjacent(src)) + if(pulling.anchored || pulling.move_resist > move_force || !pulling.Adjacent(src)) stop_pulling() return if(isliving(pulling)) @@ -176,6 +176,14 @@ if(!Process_Spacemove(get_dir(pulling.loc, A))) return step(pulling, get_dir(pulling.loc, A)) + return TRUE + +/mob/living/Move_Pulled(atom/A) + . = ..() + if(!. || !isliving(A)) + return + var/mob/living/L = A + set_pull_offsets(L, grab_state) /atom/movable/proc/check_pulling() if(pulling) @@ -190,7 +198,7 @@ log_game("DEBUG:[src]'s pull on [pullee] wasn't broken despite [pullee] being in [pullee.loc]. Pull stopped manually.") stop_pulling() return - if(pulling.anchored) + if(pulling.anchored || pulling.move_resist > move_force) stop_pulling() return 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. @@ -215,6 +223,9 @@ if(!newloc.Enter(src, src.loc)) return + if (SEND_SIGNAL(src, COMSIG_MOVABLE_PRE_MOVE, newloc) & COMPONENT_MOVABLE_BLOCK_PRE_MOVE) + return + // Past this is the point of no return var/atom/oldloc = loc var/area/oldarea = get_area(oldloc) diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 993b5f5ad89..297f341ee72 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -102,7 +102,7 @@ //helper for getting the appropriate health status /proc/RoundHealth(mob/living/M) - if(M.stat == DEAD || (M.has_trait(TRAIT_FAKEDEATH))) + if(M.stat == DEAD || (HAS_TRAIT(M, TRAIT_FAKEDEATH))) return "health-100" //what's our health? it doesn't matter, we're dead, or faking var/maxi_health = M.maxHealth if(iscarbon(M) && M.health < 0) @@ -174,7 +174,7 @@ 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 || (has_trait(TRAIT_FAKEDEATH))) + if(stat == DEAD || (HAS_TRAIT(src, TRAIT_FAKEDEATH))) holder.icon_state = "huddead" else holder.icon_state = "hudhealthy" @@ -184,9 +184,9 @@ var/icon/I = icon(icon, icon_state, dir) var/virus_threat = check_virus() holder.pixel_y = I.Height() - world.icon_size - if(has_trait(TRAIT_XENO_HOST)) + if(HAS_TRAIT(src, TRAIT_XENO_HOST)) holder.icon_state = "hudxeno" - else if(stat == DEAD || (has_trait(TRAIT_FAKEDEATH))) + else if(stat == DEAD || (HAS_TRAIT(src, TRAIT_FAKEDEATH))) if(tod) var/tdelta = round(world.time - timeofdeath) if(tdelta < (DEFIB_TIME_LIMIT * 10)) @@ -244,7 +244,7 @@ var/icon/IC = icon(icon, icon_state, dir) holder.pixel_y = IC.Height() - world.icon_size holder.icon_state = "hud_imp_chem" - if(has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(src, TRAIT_MINDSHIELD)) holder = hud_list[IMPLOYAL_HUD] var/icon/IC = icon(icon, icon_state, dir) holder.pixel_y = IC.Height() - world.icon_size diff --git a/code/game/gamemodes/changeling/traitor_chan.dm b/code/game/gamemodes/changeling/traitor_chan.dm index 70c04cb008f..ef9b710d7b0 100644 --- a/code/game/gamemodes/changeling/traitor_chan.dm +++ b/code/game/gamemodes/changeling/traitor_chan.dm @@ -9,15 +9,13 @@ required_enemies = 1 // how many of each type are required recommended_enemies = 3 reroll_friendly = 1 + announce_span = "Traitors and Changelings" + announce_text = "There are alien creatures on the station along with some syndicate operatives out for their own gain! Do not let the changelings or the traitors succeed!" var/list/possible_changelings = list() var/list/changelings = list() var/const/changeling_amount = 1 //hard limit on changelings if scaling is turned off -/datum/game_mode/traitor/changeling/announce() - to_chat(world, "The current game mode is - Traitor+Changeling!") - to_chat(world, "There are alien creatures on the station along with some syndicate operatives out for their own gain! Do not let the changelings or the traitors succeed!") - /datum/game_mode/traitor/changeling/can_start() if(!..()) return 0 diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 15695dfde69..6779a22b5a2 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -63,7 +63,7 @@ Credit where due: return FALSE if(isliving(M)) var/mob/living/L = M - if(L.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(L, TRAIT_MINDSHIELD)) return FALSE if(ishuman(M) || isbrain(M) || isguardian(M) || issilicon(M) || isclockmob(M) || istype(M, /mob/living/simple_animal/drone/cogscarab) || istype(M, /mob/camera/eminence)) return TRUE diff --git a/code/game/gamemodes/clown_ops/bananium_bomb.dm b/code/game/gamemodes/clown_ops/bananium_bomb.dm index 7e7d17e665d..3596758fcc1 100644 --- a/code/game/gamemodes/clown_ops/bananium_bomb.dm +++ b/code/game/gamemodes/clown_ops/bananium_bomb.dm @@ -42,17 +42,17 @@ var/obj/item/clothing/C if(!H.w_uniform || H.dropItemToGround(H.w_uniform)) C = new /obj/item/clothing/under/rank/clown(H) - C.add_trait(TRAIT_NODROP, CLOWN_NUKE_TRAIT) + ADD_TRAIT(C, TRAIT_NODROP, CLOWN_NUKE_TRAIT) H.equip_to_slot_or_del(C, SLOT_W_UNIFORM) if(!H.shoes || H.dropItemToGround(H.shoes)) C = new /obj/item/clothing/shoes/clown_shoes(H) - C.add_trait(TRAIT_NODROP, CLOWN_NUKE_TRAIT) + ADD_TRAIT(C, TRAIT_NODROP, CLOWN_NUKE_TRAIT) H.equip_to_slot_or_del(C, SLOT_SHOES) if(!H.wear_mask || H.dropItemToGround(H.wear_mask)) C = new /obj/item/clothing/mask/gas/clown_hat(H) - C.add_trait(TRAIT_NODROP, CLOWN_NUKE_TRAIT) + ADD_TRAIT(C, TRAIT_NODROP, CLOWN_NUKE_TRAIT) H.equip_to_slot_or_del(C, SLOT_WEAR_MASK) H.dna.add_mutation(CLOWNMUT) diff --git a/code/game/gamemodes/clown_ops/clown_weapons.dm b/code/game/gamemodes/clown_ops/clown_weapons.dm index 2cb6d24aabf..2a37142a7a0 100644 --- a/code/game/gamemodes/clown_ops/clown_weapons.dm +++ b/code/game/gamemodes/clown_ops/clown_weapons.dm @@ -70,7 +70,7 @@ light_color = "#ffff00" var/next_trombone_allowed = 0 -/obj/item/melee/transforming/energy/sword/bananium/Initialize() +/obj/item/melee/transforming/energy/sword/bananium/ComponentInitialize() . = ..() AddComponent(/datum/component/slippery, 60, GALOSHES_DONT_HELP) GET_COMPONENT(slipper, /datum/component/slippery) @@ -127,7 +127,7 @@ on_throwforce = 0 on_throw_speed = 1 -/obj/item/shield/energy/bananium/Initialize() +/obj/item/shield/energy/bananium/ComponentInitialize() . = ..() AddComponent(/datum/component/slippery, 60, GALOSHES_DONT_HELP) GET_COMPONENT(slipper, /datum/component/slippery) @@ -138,7 +138,7 @@ GET_COMPONENT(slipper, /datum/component/slippery) slipper.signal_enabled = active -/obj/item/shield/energy/bananium/throw_at(atom/target, range, speed, mob/thrower, spin=1) +/obj/item/shield/energy/bananium/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0, datum/callback/callback, force) if(active) if(iscarbon(thrower)) var/mob/living/carbon/C = thrower @@ -176,7 +176,6 @@ /obj/item/grown/bananapeel/bombanana/Initialize() . = ..() - AddComponent(/datum/component/slippery, det_time) bomb = new /obj/item/grenade/syndieminibomb(src) bomb.det_time = det_time if(iscarbon(loc)) @@ -185,6 +184,10 @@ C.throw_mode_on() bomb.preprime(loc, null, FALSE) +/obj/item/grown/bananapeel/bombanana/ComponentInitialize() + . = ..() + AddComponent(/datum/component/slippery, det_time) + /obj/item/grown/bananapeel/bombanana/Destroy() . = ..() QDEL_NULL(bomb) @@ -217,11 +220,11 @@ /obj/item/clothing/mask/fakemoustache/sticky/Initialize() . = ..() - add_trait(TRAIT_NODROP, STICKY_MOUSTACHE_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, STICKY_MOUSTACHE_TRAIT) addtimer(CALLBACK(src, .proc/unstick), unstick_time) /obj/item/clothing/mask/fakemoustache/sticky/proc/unstick() - remove_trait(TRAIT_NODROP, STICKY_MOUSTACHE_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, STICKY_MOUSTACHE_TRAIT) //DARK H.O.N.K. AND CLOWN MECH WEAPONS diff --git a/code/game/gamemodes/cult/cult.dm b/code/game/gamemodes/cult/cult.dm index 31641283961..1c7d8f5221b 100644 --- a/code/game/gamemodes/cult/cult.dm +++ b/code/game/gamemodes/cult/cult.dm @@ -26,7 +26,7 @@ return FALSE else return FALSE - if(M.has_trait(TRAIT_MINDSHIELD) || issilicon(M) || isbot(M) || isdrone(M) || is_servant_of_ratvar(M) || !M.client) + if(HAS_TRAIT(M, TRAIT_MINDSHIELD) || issilicon(M) || isbot(M) || isdrone(M) || is_servant_of_ratvar(M) || !M.client) return FALSE //can't convert machines, shielded, braindead, or ratvar's dogs return TRUE diff --git a/code/game/gamemodes/events.dm b/code/game/gamemodes/events.dm index cdc0ac89fbc..ef781c5ee36 100644 --- a/code/game/gamemodes/events.dm +++ b/code/game/gamemodes/events.dm @@ -5,28 +5,16 @@ continue S.charge = 0 S.output_level = 0 - S.output_attempt = 0 + S.output_attempt = FALSE S.update_icon() S.power_change() - var/list/skipped_areas = list(/area/engine/engineering, /area/engine/supermatter, /area/engine/atmospherics_engine, /area/ai_monitored/turret_protected/ai) - - for(var/area/A in world) - if( !A.requires_power || A.always_unpowered ) + for(var/area/A in GLOB.the_station_areas) + if(!A.requires_power || A.always_unpowered ) + continue + if(GLOB.typecache_powerfailure_safe_areas[A.type]) continue - var/skip = 0 - for(var/area_type in skipped_areas) - if(istype(A,area_type)) - skip = 1 - break - if(A.contents) - for(var/atom/AT in A.contents) - if(!is_station_level(AT.z)) //Only check one, it's enough. - skip = 1 - break - if(skip) - continue A.power_light = FALSE A.power_equip = FALSE A.power_environ = FALSE @@ -35,13 +23,7 @@ for(var/obj/machinery/power/apc/C in GLOB.apcs_list) if(C.cell && is_station_level(C.z)) var/area/A = C.area - - var/skip = 0 - for(var/area_type in skipped_areas) - if(istype(A,area_type)) - skip = 1 - break - if(skip) + if(GLOB.typecache_powerfailure_safe_areas[A.type]) continue C.cell.charge = 0 @@ -58,11 +40,13 @@ continue S.charge = S.capacity S.output_level = S.output_level_max - S.output_attempt = 1 + S.output_attempt = TRUE S.update_icon() S.power_change() - for(var/area/A in world) - if(!istype(A, /area/space) && !istype(A, /area/shuttle)) + for(var/area/A in GLOB.the_station_areas) + if(!A.requires_power || A.always_unpowered) + continue + if(!istype(A, /area/shuttle)) A.power_light = TRUE A.power_equip = TRUE A.power_environ = TRUE @@ -76,7 +60,7 @@ continue S.charge = S.capacity S.output_level = S.output_level_max - S.output_attempt = 1 + S.output_attempt = TRUE S.update_icon() S.power_change() diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index fb46fb67554..affc7c4f2e6 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -25,13 +25,14 @@ var/list/datum/mind/antag_candidates = list() // List of possible starting antags goes here 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/list/required_jobs = list() // alternative required job groups eg list(list(cap=1),list(hos=1,sec=2)) translates to one captain OR one hos and two secmans 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 var/mob/living/living_antag_player = null - var/list/datum/game_mode/replacementmode = null + var/datum/game_mode/replacementmode = null var/round_converted = 0 //0: round not converted, 1: round going to convert, 2: round converted var/reroll_friendly //During mode conversion only these are in the running 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 @@ -139,7 +140,7 @@ else qdel(G) - if(!usable_modes) + if(!usable_modes.len) message_admins("Convert_roundtype failed due to no valid modes to convert to. Please report this error to the Coders.") return null @@ -235,10 +236,11 @@ return 0 //A resource saver: once we find someone who has to die for all antags to be dead, we can just keep checking them, cycling over everyone only when we lose our mark. for(var/mob/Player in GLOB.alive_mob_list) - if(Player.mind && Player.stat != DEAD && !isnewplayer(Player) &&!isbrain(Player) && Player.client) - if(Player.mind.special_role || LAZYLEN(Player.mind.antag_datums)) //Someone's still antaging! - living_antag_player = Player - return 0 + if(Player.mind && Player.stat != DEAD && !isnewplayer(Player) &&!isbrain(Player) && Player.client && (Player.mind.special_role || LAZYLEN(Player.mind.antag_datums))) //Someone's still antagging but is their antagonist datum important enough to skip mulligan? + for(var/datum/antagonist/antag_types in Player.mind.antag_datums) + if(antag_types.prevent_roundtype_conversion) + living_antag_player = Player //they were an important antag, they're our new mark + return 0 if(!are_special_antags_dead()) return FALSE @@ -358,7 +360,7 @@ // Ultimate randomizing code right here for(var/mob/dead/new_player/player in GLOB.player_list) - if(player.client && player.ready == PLAYER_READY_TO_PLAY) + if(player.client && player.ready == PLAYER_READY_TO_PLAY && player.has_valid_preferences()) players += player // Shuffling, the players list is now ping-independent!!! @@ -393,24 +395,6 @@ drafted = shuffle(drafted) // Will hopefully increase randomness, Donkie - while(candidates.len < recommended_enemies) // Pick randomlly just the number of people we need and add them to our list of candidates - if(drafted.len > 0) - applicant = pick(drafted) - if(applicant) - candidates += applicant - drafted.Remove(applicant) - - else // Not enough scrubs, ABORT ABORT ABORT - break - - if(restricted_jobs) - for(var/datum/mind/player in drafted) // Remove people who can't be an antagonist - for(var/job in restricted_jobs) - if(player.assigned_role == job) - drafted -= player - - drafted = shuffle(drafted) // Will hopefully increase randomness, Donkie - while(candidates.len < recommended_enemies) // Pick randomlly just the number of people we need and add them to our list of candidates if(drafted.len > 0) applicant = pick(drafted) diff --git a/code/game/gamemodes/hivemind/hivemind.dm b/code/game/gamemodes/hivemind/hivemind.dm index 5ee1c798023..3df6ea0d5aa 100644 --- a/code/game/gamemodes/hivemind/hivemind.dm +++ b/code/game/gamemodes/hivemind/hivemind.dm @@ -6,7 +6,7 @@ false_report_weight = 5 protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain") restricted_jobs = list("Cyborg","AI") - required_players = 25 + required_players = 24 required_enemies = 2 recommended_enemies = 3 reroll_friendly = 1 @@ -20,20 +20,19 @@ var/list/hosts = list() /proc/is_hivehost(mob/living/M) - return M && M.mind && M.mind.has_antag_datum(/datum/antagonist/hivemind) - -/proc/is_real_hivehost(mob/living/M) //This proc ignores mind controlled vessels if(!M || !M.mind) - return FALSE - var/datum/antagonist/hivemind/hive = M.mind.has_antag_datum(/datum/antagonist/hivemind) - if(!hive) - return FALSE - var/obj/effect/proc_holder/spell/target_hive/hive_control/the_spell = locate(/obj/effect/proc_holder/spell/target_hive/hive_control) in M.mind.spell_list - if(the_spell && the_spell.active) - if(the_spell.original_body == M) + return + return M.mind.has_antag_datum(/datum/antagonist/hivemind) + +/mob/living/proc/is_real_hivehost() //This proc ignores mind controlled vessels + for(var/datum/antagonist/hivemind/hive in GLOB.antagonists) + if(!hive.owner?.spell_list) + continue + var/obj/effect/proc_holder/spell/target_hive/hive_control/the_spell = locate(/obj/effect/proc_holder/spell/target_hive/hive_control) in hive.owner.spell_list + if((!the_spell || !the_spell.active ) && mind == hive.owner) + return TRUE + if(the_spell?.active && the_spell.original_body == src) return TRUE - else - return TRUE return FALSE /mob/living/proc/get_real_hivehost() //Returns src unless it's under mind control, then it returns the original body @@ -47,7 +46,10 @@ return the_spell.original_body return M -/proc/is_hivemember(mob/living/M) +/proc/is_hivemember(mob/living/L) + if(!L) + return FALSE + var/datum/mind/M = L.mind if(!M) return FALSE for(var/datum/antagonist/hivemind/H in GLOB.antagonists) @@ -55,13 +57,17 @@ return TRUE return FALSE -/proc/remove_hivemember(mob/living/M) //Removes somebody from all hives as opposed to the antag proc remove_from_hive() +/proc/remove_hivemember(mob/living/L) //Removes somebody from all hives as opposed to the antag proc remove_from_hive() + var/datum/mind/M = L?.mind if(!M) return for(var/datum/antagonist/hivemind/H in GLOB.antagonists) if(H.hivemembers.Find(M)) H.hivemembers -= M H.calc_size() + var/datum/antagonist/hivevessel/V = L.is_wokevessel() + if(V && M) + M.remove_antag_datum(/datum/antagonist/hivevessel) /datum/game_mode/hivemind/pre_setup() @@ -71,7 +77,7 @@ if(CONFIG_GET(flag/protect_assistant_from_antagonist)) restricted_jobs += "Assistant" - var/num_hosts = max( 1 , rand(0,1) + min(5, round(num_players() / 12) ) ) //1 host for every 12 players up to 60, with a 50% chance of an extra + var/num_hosts = max( 1 , rand(0,1) + min(8, round(num_players() / 8) ) ) //1 host for every 8 players up to 64, with a 50% chance of an extra for(var/j = 0, j < num_hosts, j++) if (!antag_candidates.len) @@ -91,10 +97,6 @@ /datum/game_mode/hivemind/post_setup() - if(hosts.len >= 4 && prob(35)) //Create the versus objective here since we want a common target for all the antags - var/datum/antagonist/hivemind/hive - hive.common_assimilation_obj = new /datum/objective/hivemind/assimilate_common - hive.common_assimilation_obj.find_target_by_role(role = ROLE_HIVE, role_type = TRUE, invert = TRUE) for(var/datum/mind/i in hosts) i.add_antag_datum(/datum/antagonist/hivemind) return ..() diff --git a/code/game/gamemodes/hivemind/objectives.dm b/code/game/gamemodes/hivemind/objectives.dm index b26ed9c3bdf..526fc03e83b 100644 --- a/code/game/gamemodes/hivemind/objectives.dm +++ b/code/game/gamemodes/hivemind/objectives.dm @@ -33,32 +33,11 @@ var/datum/antagonist/hivemind/host = owner.has_antag_datum(/datum/antagonist/hivemind) if(!host) return FALSE - for(var/mob/living/L in host.hivemembers) - var/datum/mind/M = L.mind - if(M) - if(considered_escaped(M)) - count++ + for(var/datum/mind/M in host.hivemembers) + if(considered_escaped(M)) + count++ return count >= target_amount -/datum/objective/hivemind/assimilate - explanation_text = "This is a bug. Error:HIVE3" - -/datum/objective/hivemind/assimilate/update_explanation_text() - if(target) - explanation_text = "Assimilate [target.name] into the hive and ensure they survive." - else - explanation_text = "Free Objective." - -/datum/objective/hivemind/assimilate/check_completion() - var/datum/antagonist/hivemind/host = owner.has_antag_datum(/datum/antagonist/hivemind) - if(!host) - return FALSE - for(var/mob/living/L in host.hivemembers) - var/datum/mind/M = L.mind - if(M == target) - return considered_alive(target) - return FALSE - /datum/objective/hivemind/biggest explanation_text = "End the round with more vessels than any other hivemind host." @@ -72,25 +51,3 @@ if(H.hive_size >= host.hive_size) return FALSE return TRUE - -/datum/objective/hivemind/assimilate_common - explanation_text = "This is a bug. Error:HIVE3" - -/datum/objective/hivemind/assimilate_common/update_explanation_text() - if(target) - explanation_text = "Ensure that you are the only host assimilating [target.name] at the end of the round." - else - explanation_text = "Free Objective." - -/datum/objective/hivemind/assimilate_common/check_completion() - var/datum/antagonist/hivemind/host = owner.has_antag_datum(/datum/antagonist/hivemind) - if(!target) - return TRUE - if(!host || !target.current || !host.hivemembers.Find(target.current)) - return FALSE - for(var/datum/antagonist/hivemind/H in GLOB.antagonists) - if(H == host) - continue - if(H.hivemembers.Find(target.current)) - return FALSE - return TRUE \ No newline at end of file diff --git a/code/game/gamemodes/hivemind/radar.dm b/code/game/gamemodes/hivemind/radar.dm index 8e52578681c..bb5827cdc2c 100644 --- a/code/game/gamemodes/hivemind/radar.dm +++ b/code/game/gamemodes/hivemind/radar.dm @@ -1,6 +1,6 @@ -#define HIVEMIND_RADAR_MIN_DISTANCE 7 //Very generous, as the targets are only tracked for a few minutes. +#define HIVEMIND_RADAR_MIN_DISTANCE 0 //Very generous, as the targets are only tracked for a few minutes. #define HIVEMIND_RADAR_MAX_DISTANCE 50 -#define HIVEMIND_RADAR_PING_TIME 20 //2s update time. +#define HIVEMIND_RADAR_PING_TIME 40 //4s update time. //Modified IA/changeling pinpointer, points to the nearest person who is afflicted with the hive tracker status effect /datum/status_effect/agent_pinpointer/hivemind @@ -66,7 +66,7 @@ if(.) tracked_by = hunter if(isnum(set_duration)) - duration = set_duration + duration = world.time + set_duration //Screen alert /obj/screen/alert/status_effect/agent_pinpointer/hivemind diff --git a/code/game/gamemodes/monkey/monkey.dm b/code/game/gamemodes/monkey/monkey.dm index 2d84309a62a..45cbe960e0c 100644 --- a/code/game/gamemodes/monkey/monkey.dm +++ b/code/game/gamemodes/monkey/monkey.dm @@ -15,6 +15,9 @@ restricted_jobs = list("Cyborg", "AI") + announce_span = "Monkey" + announce_text = "One or more crewmembers have been infected with Jungle Fever! Crew: Contain the outbreak. None of the infected monkeys may escape alive to CentCom. Monkeys: Ensure that your kind lives on! Rise up against your captors!" + var/carriers_to_make = 1 var/list/carriers = list() @@ -45,11 +48,6 @@ return FALSE return TRUE - -/datum/game_mode/monkey/announce() - to_chat(world, "The current game mode is - Monkey!") - to_chat(world, "One or more crewmembers have been infected with Jungle Fever! Crew: Contain the outbreak. None of the infected monkeys may escape alive to CentCom. Monkeys: Ensure that your kind lives on! Rise up against your captors!") - /datum/game_mode/monkey/post_setup() for(var/datum/mind/carriermind in carriers) var/datum/antagonist/monkey/M = add_monkey_leader(carriermind, monkey_team) @@ -100,9 +98,9 @@ /datum/game_mode/monkey/special_report() if(check_monkey_victory()) - return "The monkeys have overthrown their captors! Eeek eeeek!!" + return "
The monkeys have overthrown their captors! Eeek eeeek!!
" else - return "The staff managed to contain the monkey infestation!" + return "
The staff managed to contain the monkey infestation!
" /datum/game_mode/monkey/generate_report() return "Reports of an ancient [pick("retrovirus", "flesh eating bacteria", "disease", "magical curse blamed on viruses", "banana blight")] outbreak that turn humans into monkeys has been reported in your quadrant. Any such infections may be treated with banana juice. If an outbreak occurs, ensure the station is quarantined to prevent a largescale outbreak at CentCom." diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm index 5b6b2778892..4b1cc2cd443 100644 --- a/code/game/gamemodes/nuclear/nuclear.dm +++ b/code/game/gamemodes/nuclear/nuclear.dm @@ -137,6 +137,7 @@ command_radio = TRUE /datum/outfit/syndicate/no_crystals + name = "Syndicate Operative - Reinforcement" tc = 0 /datum/outfit/syndicate/post_equip(mob/living/carbon/human/H) @@ -146,7 +147,7 @@ if(command_radio) R.command = TRUE - if(tc) + if(ispath(uplink_type, /obj/item/uplink/nuclear) || tc) // /obj/item/uplink/nuclear understands 0 tc var/obj/item/U = new uplink_type(H, H.key, tc) H.equip_to_slot_or_del(U, SLOT_IN_BACKPACK) diff --git a/code/game/gamemodes/overthrow/overthrow.dm b/code/game/gamemodes/overthrow/overthrow.dm index c3a86b9f2bb..3d4474cbe40 100644 --- a/code/game/gamemodes/overthrow/overthrow.dm +++ b/code/game/gamemodes/overthrow/overthrow.dm @@ -74,4 +74,4 @@ var/datum/team/Tagain = l if(teams[Tagain] == max_points) winners += Tagain.name - return "The [english_list(winners)] team[winners.len > 1 ? "s tied" : " won"] with [max_points] points!" + return "
The [english_list(winners)] team[winners.len > 1 ? "s tied" : " won"] with [max_points] points!
" diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index f4811f8a422..23924107fa9 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -14,12 +14,13 @@ antag_flag = ROLE_REV false_report_weight = 10 restricted_jobs = list("Security Officer", "Warden", "Detective", "AI", "Cyborg","Captain", "Head of Personnel", "Head of Security", "Chief Engineer", "Research Director", "Chief Medical Officer") + required_jobs = list(list("Captain"=1),list("Head of Personnel"=1),list("Head of Security"=1),list("Chief Engineer"=1),list("Research Director"=1),list("Chief Medical Officer"=1)) //Any head present required_players = 30 required_enemies = 2 recommended_enemies = 3 enemy_minimum_age = 14 - announce_span = "danger" + announce_span = "Revolution" 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." @@ -31,14 +32,6 @@ var/list/datum/mind/headrev_candidates = list() var/end_when_heads_dead = TRUE -/////////////////////////// -//Announces the game type// -/////////////////////////// -/datum/game_mode/revolution/announce() - to_chat(world, "The current game mode is - Revolution!") - to_chat(world, "Some crewmembers are attempting to start a revolution!
\nRevolutionaries - Kill the Captain, HoP, HoS, CE, RD and CMO. Convert other crewmembers (excluding the heads of staff, and security officers) to your cause by flashing them. Protect your leaders.
\nPersonnel - Protect the heads of staff. Kill the leaders of the revolution, and brainwash the other revolutionaries (by beating them in the head).
") - - /////////////////////////////////////////////////////////////////////////////// //Gets the round setup, cancelling if there's not enough players at the start// /////////////////////////////////////////////////////////////////////////////// @@ -185,9 +178,9 @@ //TODO What should be displayed for revs in non-rev rounds /datum/game_mode/revolution/special_report() if(finished == 1) - return "The heads of staff were killed or exiled! The revolutionaries win!" + return "
The heads of staff were killed or exiled! The revolutionaries win!
" else if(finished == 2) - return "The heads of staff managed to stop the revolution!" + return "
The heads of staff managed to stop the revolution!
" /datum/game_mode/revolution/generate_report() return "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, \ diff --git a/code/game/gamemodes/wizard/wizard.dm b/code/game/gamemodes/wizard/wizard.dm index c0b5e9c85d9..118e18c74dc 100644 --- a/code/game/gamemodes/wizard/wizard.dm +++ b/code/game/gamemodes/wizard/wizard.dm @@ -67,7 +67,7 @@ /datum/game_mode/wizard/special_report() if(finished) - return "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!" + return "
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!
" //returns whether the mob is a wizard (or apprentice) /proc/iswizard(mob/living/M) diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index d38963d9e76..d5b41a02371 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -27,8 +27,11 @@ var/enter_message = "You feel cool air surround you. You go numb as your senses turn inward." payment_department = ACCOUNT_MED fair_market_price = 5 -/obj/machinery/sleeper/Initialize() +/obj/machinery/sleeper/Initialize(mapload) . = ..() + if(mapload) + component_parts -= circuit + QDEL_NULL(circuit) occupant_typecache = GLOB.typecache_living update_icon() reset_chem_buttons() @@ -139,6 +142,8 @@ ui.open() /obj/machinery/sleeper/AltClick(mob/user) + if(!user.canUseTopic(src, !issilicon(user))) + return if(state_open) close_machine() else @@ -259,7 +264,6 @@ /obj/machinery/sleeper/syndie/fullupgrade/Initialize() . = ..() component_parts = list() - component_parts += new /obj/item/circuitboard/machine/sleeper(null) component_parts += new /obj/item/stock_parts/matter_bin/bluespace(null) component_parts += new /obj/item/stock_parts/manipulator/femto(null) component_parts += new /obj/item/stack/sheet/glass(null) diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 077818cb91f..ebe68f10e92 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -147,6 +147,10 @@ Class Procs: else STOP_PROCESSING(SSfastprocess, src) dropContents() + if(length(component_parts)) + for(var/atom/A in component_parts) + qdel(A) + component_parts.Cut() return ..() /obj/machinery/proc/locate_machinery() @@ -183,12 +187,15 @@ Class Procs: L.update_mobility() occupant = null +/obj/machinery/proc/can_be_occupant(atom/movable/am) + return occupant_typecache ? is_type_in_typecache(am, occupant_typecache) : isliving(am) + /obj/machinery/proc/close_machine(atom/movable/target = null) state_open = FALSE density = TRUE if(!target) for(var/am in loc) - if (!(occupant_typecache ? is_type_in_typecache(am, occupant_typecache) : isliving(am))) + if (!(can_be_occupant(am))) continue var/atom/movable/AM = am if(AM.has_buckled_mobs()) @@ -249,19 +256,19 @@ Class Procs: var/datum/bank_account/insurance = I.registered_account if(!insurance) say("[market_verb] NAP Violation: No bank account found.") - nap_violation() + nap_violation(occupant) return FALSE else if(!insurance.adjust_money(-fair_market_price)) say("[market_verb] NAP Violation: Unable to pay.") - nap_violation() + nap_violation(occupant) return FALSE var/datum/bank_account/D = SSeconomy.get_dep_account(payment_department) if(D) D.adjust_money(fair_market_price) else say("[market_verb] NAP Violation: No ID card found.") - nap_violation() + nap_violation(occupant) return FALSE return TRUE @@ -345,6 +352,7 @@ Class Procs: spawn_frame(disassembled) for(var/obj/item/I in component_parts) I.forceMove(loc) + component_parts.Cut() qdel(src) /obj/machinery/proc/spawn_frame(disassembled) diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm index 92e3aba7391..1b00785bba4 100644 --- a/code/game/machinery/announcement_system.dm +++ b/code/game/machinery/announcement_system.dm @@ -29,7 +29,7 @@ GLOBAL_LIST_EMPTY(announcement_systems) /obj/machinery/announcement_system/Initialize() . = ..() GLOB.announcement_systems += src - radio = new /obj/item/radio/headset/ai(src) + radio = new /obj/item/radio/headset/silicon/ai(src) update_icon() /obj/machinery/announcement_system/update_icon() diff --git a/code/game/machinery/aug_manipulator.dm b/code/game/machinery/aug_manipulator.dm index ce4aa0c5920..35aa8f7746f 100644 --- a/code/game/machinery/aug_manipulator.dm +++ b/code/game/machinery/aug_manipulator.dm @@ -130,7 +130,7 @@ /obj/machinery/aug_manipulator/AltClick(mob/living/user) ..() - if(!user.canUseTopic(src)) + if(!user.canUseTopic(src, !issilicon(user))) return else eject_part(user) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 19f2711738b..4c4e4bb365e 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -171,7 +171,7 @@ busy = TRUE use_power(power) icon_state = "autolathe_n" - var/time = is_stack ? 32 : 32*coeff*multiplier + var/time = is_stack ? 32 : (32 * coeff * multiplier) ** 0.8 addtimer(CALLBACK(src, .proc/make_item, power, metal_cost, glass_cost, multiplier, coeff, is_stack), time) if(href_list["search"]) diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm index b3c86d5a136..e54cc9c0b4e 100644 --- a/code/game/machinery/cell_charger.dm +++ b/code/game/machinery/cell_charger.dm @@ -13,7 +13,7 @@ var/chargelevel = -1 var/charge_rate = 500 -/obj/machinery/cell_charger/proc/updateicon() +/obj/machinery/cell_charger/update_icon() cut_overlays() if(charging) add_overlay(image(charging.icon, charging.icon_state)) @@ -55,7 +55,7 @@ charging = W user.visible_message("[user] inserts a cell into [src].", "You insert a cell into [src].") chargelevel = -1 - updateicon() + update_icon() else if(!charging && default_deconstruction_screwdriver(user, icon_state, icon_state, W)) return @@ -78,7 +78,7 @@ charging.update_icon() charging = null chargelevel = -1 - updateicon() + update_icon() /obj/machinery/cell_charger/attack_hand(mob/user) . = ..() @@ -129,4 +129,4 @@ use_power(charge_rate) charging.give(charge_rate) //this is 2558, efficient batteries exist - updateicon() + update_icon() diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 1c6b8e41be3..5a0f4cada78 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -53,7 +53,10 @@ radio.recalculateChannels() /obj/machinery/clonepod/Destroy() + var/mob/living/mob_occupant = occupant go_out() + if(mob_occupant) + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] due to Destroy().") QDEL_NULL(radio) QDEL_NULL(countdown) if(connected) @@ -173,7 +176,7 @@ H.hardset_dna(ui, mutation_index, H.real_name, null, mrace, features) - if(!H.has_trait(TRAIT_RADIMMUNE))//dont apply mutations if the species is Mutation proof. + if(!HAS_TRAIT(H, TRAIT_RADIMMUNE))//dont apply mutations if the species is Mutation proof. if(efficiency > 2) var/list/unclean_mutations = (GLOB.not_good_mutations|GLOB.bad_mutations) H.dna.remove_mutation_group(unclean_mutations) @@ -194,11 +197,11 @@ icon_state = "pod_1" //Get the clone body ready maim_clone(H) - H.add_trait(TRAIT_STABLEHEART, CLONING_POD_TRAIT) - H.add_trait(TRAIT_EMOTEMUTE, CLONING_POD_TRAIT) - H.add_trait(TRAIT_MUTE, CLONING_POD_TRAIT) - H.add_trait(TRAIT_NOBREATH, CLONING_POD_TRAIT) - H.add_trait(TRAIT_NOCRITDAMAGE, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_STABLEHEART, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_EMOTEMUTE, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_MUTE, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_NOBREATH, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_NOCRITDAMAGE, CLONING_POD_TRAIT) H.Unconscious(80) clonemind.transfer_to(H) @@ -213,6 +216,7 @@ if(H) H.faction |= factions + remove_hivemember(H) for(var/V in quirks) var/datum/quirk/Q = new V(H) @@ -237,17 +241,21 @@ if(!is_operational()) //Autoeject if power is lost if(mob_occupant) go_out() + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] due to power loss.") + connected_message("Clone Ejected: Loss of power.") else if(mob_occupant && (mob_occupant.loc == src)) if(SSeconomy.full_ancap) if(!current_insurance) go_out() + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] due to invalid bank account.") connected_message("Clone Ejected: No bank account.") if(internal_radio) SPEAK("The cloning of [mob_occupant.real_name] has been terminated due to no bank account to draw payment from.") else if(!current_insurance.adjust_money(-fair_market_price)) go_out() + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] due to insufficient funds.") connected_message("Clone Ejected: Out of Money.") if(internal_radio) SPEAK("The cloning of [mob_occupant.real_name] has been ended prematurely due to being unable to pay.") @@ -261,6 +269,7 @@ SPEAK("The cloning of [mob_occupant.real_name] has been \ aborted due to unrecoverable tissue failure.") go_out() + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] after suiciding.") else if(mob_occupant && mob_occupant.cloneloss > (100 - heal_level)) mob_occupant.Unconscious(80) @@ -301,6 +310,7 @@ BP.attach_limb(mob_occupant) go_out() + log_cloning("[key_name(mob_occupant)] completed cloning cycle in [src] at [AREACOORD(src)].") else if (!mob_occupant || mob_occupant.loc != src) occupant = null @@ -346,10 +356,13 @@ to_chat(user, "Error: Pod has no occupant.") return else + add_fingerprint(user) connected_message("Emergency Ejection") SPEAK("An emergency ejection of [clonemind.name] has occurred. Survival not guaranteed.") to_chat(user, "You force an emergency ejection. ") go_out() + log_cloning("[key_name(user)] manually ejected [key_name(mob_occupant)] from [src] at [AREACOORD(src)].") + log_combat(user, mob_occupant, "ejected", W, "from [src]") else return ..() @@ -358,6 +371,9 @@ return to_chat(user, "You corrupt the genetic compiler.") malfunction() + add_fingerprint(user) + log_cloning("[key_name(user)] emagged [src] at [AREACOORD(src)], causing it to malfunction.") + log_combat(user, src, "emagged", null, occupant ? "[occupant] inside, killing them via malfunction." : null) //Put messages in the connected computer's temp var for display. /obj/machinery/clonepod/proc/connected_message(message) @@ -388,11 +404,11 @@ if(!mob_occupant) return current_insurance = null - mob_occupant.remove_trait(TRAIT_STABLEHEART, CLONING_POD_TRAIT) - mob_occupant.remove_trait(TRAIT_EMOTEMUTE, CLONING_POD_TRAIT) - mob_occupant.remove_trait(TRAIT_MUTE, CLONING_POD_TRAIT) - mob_occupant.remove_trait(TRAIT_NOCRITDAMAGE, CLONING_POD_TRAIT) - mob_occupant.remove_trait(TRAIT_NOBREATH, CLONING_POD_TRAIT) + REMOVE_TRAIT(mob_occupant, TRAIT_STABLEHEART, CLONING_POD_TRAIT) + REMOVE_TRAIT(mob_occupant, TRAIT_EMOTEMUTE, CLONING_POD_TRAIT) + REMOVE_TRAIT(mob_occupant, TRAIT_MUTE, CLONING_POD_TRAIT) + REMOVE_TRAIT(mob_occupant, TRAIT_NOCRITDAMAGE, CLONING_POD_TRAIT) + REMOVE_TRAIT(mob_occupant, TRAIT_NOBREATH, CLONING_POD_TRAIT) if(grab_ghost_when == CLONER_MATURE_CLONE) mob_occupant.grab_ghost() @@ -424,8 +440,9 @@ mob_occupant.grab_ghost() // We really just want to make you suffer. flash_color(mob_occupant, flash_color="#960000", flash_time=100) to_chat(mob_occupant, "Agony blazes across your consciousness as your body is torn apart.
Is this what dying is like? Yes it is.
") - playsound(loc, 'sound/machines/warning-buzzer.ogg', 50, 0) + playsound(src, 'sound/machines/warning-buzzer.ogg', 50) SEND_SOUND(mob_occupant, sound('sound/hallucinations/veryfar_noise.ogg',0,1,50)) + log_cloning("[key_name(mob_occupant)] destroyed within [src] at [AREACOORD(src)] due to malfunction.") QDEL_IN(mob_occupant, 40) /obj/machinery/clonepod/relaymove(mob/user) @@ -443,11 +460,14 @@ connected_message(Gibberish("EMP-caused Accidental Ejection", 0)) SPEAK(Gibberish("Exposure to electromagnetic fields has caused the ejection of [mob_occupant.real_name] prematurely." ,0)) go_out() + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] due to EMP pulse.") /obj/machinery/clonepod/ex_act(severity, target) ..() - if(!QDELETED(src)) + if(!QDELETED(src) && occupant) + var/mob/living/mob_occupant = occupant go_out() + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] due to explosion.") /obj/machinery/clonepod/handle_atom_del(atom/A) if(A == occupant) @@ -456,14 +476,16 @@ /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)) + playsound(src,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) + playsound(src,'sound/hallucinations/wail.ogg', 100, TRUE) /obj/machinery/clonepod/deconstruct(disassembled = TRUE) if(occupant) + var/mob/living/mob_occupant = occupant go_out() + log_cloning("[key_name(mob_occupant)] ejected from [src] at [AREACOORD(src)] due to deconstruction.") ..() /obj/machinery/clonepod/proc/maim_clone(mob/living/carbon/human/H) @@ -479,7 +501,7 @@ // Applying brainloss is done when the clone leaves the pod, so application of traumas can happen // based on the level of damage sustained. - if(!H.has_trait(TRAIT_NODISMEMBER)) + if(!HAS_TRAIT(H, TRAIT_NODISMEMBER)) var/static/list/zones = list(BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG) for(var/zone in zones) var/obj/item/bodypart/BP = H.get_bodypart(zone) diff --git a/code/game/machinery/computer/_computer.dm b/code/game/machinery/computer/_computer.dm index 3c3f0e7f0fa..7b3d986928d 100644 --- a/code/game/machinery/computer/_computer.dm +++ b/code/game/machinery/computer/_computer.dm @@ -13,6 +13,7 @@ var/icon_keyboard = "generic_key" var/icon_screen = "generic" var/clockwork = FALSE + var/time_to_scewdrive = 20 /obj/machinery/computer/Initialize(mapload, obj/item/circuitboard/C) . = ..() @@ -77,7 +78,7 @@ return TRUE if(circuit && !(flags_1&NODECONSTRUCT_1)) to_chat(user, "You start to disconnect the monitor...") - if(I.use_tool(src, user, 20, volume=50)) + if(I.use_tool(src, user, time_to_scewdrive, volume=50)) deconstruct(TRUE, user) return TRUE diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index 0604b3ab3a6..ae929e4b2d6 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -9,8 +9,8 @@ icon_screen = "ai-fixer" light_color = LIGHT_COLOR_PINK -/obj/machinery/computer/aifixer/attackby(obj/item/I, mob/user, params) - if(occupier && I.tool_behaviour == TOOL_SCREWDRIVER) +/obj/machinery/computer/aifixer/screwdriver_act(mob/living/user, obj/item/I) + if(occupier) if(stat & (NOPOWER|BROKEN)) to_chat(user, "The screws on [name]'s screen won't budge.") else @@ -148,3 +148,7 @@ to_chat(user, "ERROR: Reconstruction in progress.") else if (!occupier) to_chat(user, "ERROR: Unable to locate artificial intelligence.") + +/obj/machinery/computer/aifixer/on_deconstruction() + if(occupier) + QDEL_NULL(occupier) diff --git a/code/game/machinery/computer/apc_control.dm b/code/game/machinery/computer/apc_control.dm index b2324d0cae6..36393fb2e6b 100644 --- a/code/game/machinery/computer/apc_control.dm +++ b/code/game/machinery/computer/apc_control.dm @@ -90,7 +90,7 @@ /obj/machinery/computer/apc_control/Topic(href, href_list) if(..()) return - if(!usr || !usr.canUseTopic(src) || stat || QDELETED(src)) + if(!usr || !usr.canUseTopic(src, !issilicon(usr)) || stat || QDELETED(src)) return if(href_list["authenticate"]) var/obj/item/card/id/ID = usr.get_idcard(TRUE) @@ -139,7 +139,7 @@ if(href_list["name_filter"]) playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) var/new_filter = stripped_input(usr, "What name are you looking for?", name) - if(!src || !usr || !usr.canUseTopic(src) || stat || QDELETED(src)) + if(!src || !usr || !usr.canUseTopic(src, !issilicon(usr)) || stat || QDELETED(src)) return log_activity("changed name filter to \"[new_filter]\"") playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) @@ -147,7 +147,7 @@ if(href_list["above_filter"]) playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) var/new_filter = input(usr, "Enter a percentage from 1-100 to sort by (greater than).", name) as null|num - if(!src || !usr || !usr.canUseTopic(src) || stat || QDELETED(src)) + if(!src || !usr || !usr.canUseTopic(src, !issilicon(usr)) || stat || QDELETED(src)) return log_activity("changed greater than charge filter to \"[new_filter]\"") if(new_filter) @@ -157,7 +157,7 @@ if(href_list["below_filter"]) playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) var/new_filter = input(usr, "Enter a percentage from 1-100 to sort by (lesser than).", name) as null|num - if(!src || !usr || !usr.canUseTopic(src) || stat || QDELETED(src)) + if(!src || !usr || !usr.canUseTopic(src, !issilicon(usr)) || stat || QDELETED(src)) return log_activity("changed lesser than charge filter to \"[new_filter]\"") if(new_filter) diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index c7fce6fe61a..f874ef543ca 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -65,8 +65,11 @@ GLOBAL_LIST_INIT(arcade_prize_pool, list( // If it's a generic arcade machine, pick a random arcade // circuit board for it and make the new machine if(!circuit) - var/choice = pick(subtypesof(/obj/item/circuitboard/computer/arcade)) - var/obj/item/circuitboard/CB = new choice() + var/list/gameodds = list(/obj/item/circuitboard/computer/arcade/battle = 49, + /obj/item/circuitboard/computer/arcade/orion_trail = 49, + /obj/item/circuitboard/computer/arcade/amputation = 2) + var/thegame = pickweight(gameodds) + var/obj/item/circuitboard/CB = new thegame() new CB.build_path(loc, CB) return INITIALIZE_HINT_QDEL Reset() @@ -1112,6 +1115,35 @@ GLOBAL_LIST_INIT(arcade_prize_pool, list( explosion(loc, 2,4,8, flame_range = 16) qdel(src) +// ** AMPUTATION ** // + +/obj/machinery/computer/arcade/amputation + name = "Mediborg's Amputation Adventure" + desc = "A picture of a blood-soaked medical cyborg flashes on the screen. The mediborg has a speech bubble that says, \"Put your hand in the machine if you aren't a coward!\"" + icon_state = "arcade" + circuit = /obj/item/circuitboard/computer/arcade/amputation + +/obj/machinery/computer/arcade/amputation/attack_hand(mob/user) + if(!iscarbon(user)) + return + var/mob/living/carbon/c_user = user + if(!c_user.get_bodypart(BODY_ZONE_L_ARM) && !c_user.get_bodypart(BODY_ZONE_R_ARM)) + return + to_chat(c_user, "You move your hand towards the machine, and begin to hesitate as a bloodied guillotine emerges from inside of it...") + if(do_after(c_user, 50, target = src)) + to_chat(c_user, "The guillotine drops on your arm, and the machine sucks it in!") + playsound(loc, 'sound/weapons/slice.ogg', 25, 1, -1) + var/which_hand = BODY_ZONE_L_ARM + if(!(c_user.active_hand_index % 2)) + which_hand = BODY_ZONE_R_ARM + var/obj/item/bodypart/chopchop = c_user.get_bodypart(which_hand) + chopchop.dismember() + qdel(chopchop) + playsound(loc, 'sound/arcade/win.ogg', 50, 1, extrarange = -3, falloff = 10) + for(var/i=1; i<=rand(3,5); i++) + prizevend(user) + else + to_chat(c_user, "You (wisely) decide against putting your hand in the machine.") #undef ORION_TRAIL_WINTURN #undef ORION_TRAIL_RAIDERS diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 013a9501c0b..cce338b5af9 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -54,12 +54,12 @@ if(stat) return if (!network) - throw EXCEPTION("No camera network") user.unset_machine() + CRASH("No camera network") return if (!(islist(network))) - throw EXCEPTION("Camera network is not a list") user.unset_machine() + CRASH("Camera network is not a list") return if(..()) user.unset_machine() @@ -272,7 +272,7 @@ /obj/machinery/computer/security/telescreen/toxins name = "bomb test site monitor" desc = "A telescreen that connects to the bomb test site's camera." - network = list("toxin") + network = list("toxins") /obj/machinery/computer/security/telescreen/engine name = "engine monitor" diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm index 0c39701f527..62d9600b40b 100644 --- a/code/game/machinery/computer/camera_advanced.dm +++ b/code/game/machinery/computer/camera_advanced.dm @@ -47,7 +47,10 @@ jump_action.Grant(user) actions += jump_action -/obj/machinery/computer/camera_advanced/proc/remove_eye_control(mob/living/user) +/obj/machinery/proc/remove_eye_control(mob/living/user) + CRASH("[type] does not implement ai eye handling") + +/obj/machinery/computer/camera_advanced/remove_eye_control(mob/living/user) if(!user) return for(var/V in actions) @@ -159,7 +162,7 @@ var/cooldown = 0 var/acceleration = 1 var/mob/living/eye_user = null - var/obj/machinery/computer/camera_advanced/origin + var/obj/machinery/origin var/eye_initialized = 0 var/visible_icon = 0 var/image/user_image = null @@ -172,7 +175,7 @@ /mob/camera/aiEye/remote/Destroy() if(origin && eye_user) - origin.remove_eye_control(eye_user) + origin.remove_eye_control(eye_user,src) origin = null . = ..() eye_user = null diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 04289df5cf0..88792b870ee 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -436,8 +436,6 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) return if(modify.registered_account) modify.registered_account.account_job = jobdatum // this is a terrible idea and people will grief but sure whatever - if(modify.registered_account.welfare) - modify.registered_account.add_neetbux() modify.access = ( istype(src, /obj/machinery/computer/card/centcom) ? get_centcom_access(t1) : jobdatum.get_access() ) if (modify) diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index 5fcd4c06c4d..8f0fd7e7a14 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -63,7 +63,7 @@ . = pod /proc/grow_clone_from_record(obj/machinery/clonepod/pod, datum/data/record/R) - return pod.growclone(R.fields["name"], R.fields["UI"], R.fields["SE"], R.fields["mind"], R.fields["last_death"], R.fields["mrace"], R.fields["features"], R.fields["factions"], R.fields["quirks"], R.fields["bank_account"], R.fields["traumas"]) + return pod.growclone(R.fields["name"], R.fields["UI"], R.fields["SE"], R.fields["mindref"], R.fields["last_death"], R.fields["mrace"], R.fields["features"], R.fields["factions"], R.fields["quirks"], R.fields["bank_account"], R.fields["traumas"]) /obj/machinery/computer/cloning/process() if(!(scanner && LAZYLEN(pods) && autoprocess)) @@ -73,7 +73,7 @@ scan_occupant(scanner.occupant) for(var/datum/data/record/R in records) - var/obj/machinery/clonepod/pod = GetAvailableEfficientPod(R.fields["mind"]) + var/obj/machinery/clonepod/pod = GetAvailableEfficientPod(R.fields["mindref"]) if(!pod) return @@ -84,9 +84,10 @@ var/result = grow_clone_from_record(pod, R) if(result & CLONING_SUCCESS) temp = "[R.fields["name"]] => Cloning cycle in progress..." + log_cloning("Cloning of [key_name(R.fields["mindref"])] automatically started via autoprocess - [src] at [AREACOORD(src)]. Pod: [pod] at [AREACOORD(pod)].") if(result & CLONING_DELETE_RECORD) records -= R - + /obj/machinery/computer/cloning/proc/updatemodules(findfirstcloner) scanner = findscanner() @@ -353,8 +354,8 @@ say("Initiating scan...") spawn(20) - scan_occupant(scanner.occupant) - + scan_occupant(scanner.occupant, usr) + loading = FALSE updateUsrDialog() playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) @@ -394,11 +395,12 @@ playsound(src, 'sound/machines/terminal_prompt.ogg', 50, 0) else temp = "Access Denied" - menu = 2 + menu = 2 playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) - + else if (menu == 4) + log_cloning("[key_name(usr)] deleted [key_name(active_record.fields["mindref"])]'s cloning records from [src] at [AREACOORD(src)].") temp = "[active_record.fields["name"]] => Record deleted." records.Remove(active_record) active_record = null @@ -408,7 +410,7 @@ else if (href_list["disk"]) //Load or eject. switch(href_list["disk"]) if("load") - + if (!diskette || !istype(diskette.fields)) temp = "Load error." @@ -430,7 +432,8 @@ overwrite_field_if_available(active_record, diskette, "UI") if(include_se) overwrite_field_if_available(active_record, diskette, "SE") - + + log_cloning("[key_name(usr)] uploaded [key_name(active_record.fields["mindref"])]'s cloning records to [src] at [AREACOORD(src)] via [diskette].") temp = "Load successful." playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0) @@ -446,6 +449,7 @@ playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) return + log_cloning("[key_name(usr)] added [key_name(active_record.fields["mindref"])]'s cloning records to [diskette] via [src] at [AREACOORD(src)].") diskette.fields = active_record.fields.Copy() diskette.name = "data disk - '[diskette.fields["name"]]'" temp = "Save successful." @@ -483,6 +487,7 @@ active_record = null menu = 1 success = TRUE + log_cloning("[key_name(usr)] initiated cloning of [key_name(C.fields["mindref"])] via [src] at [AREACOORD(src)]. Pod: [pod] at [AREACOORD(pod)].") if(result & CLONING_DELETE_RECORD) if(active_record == C) active_record = null @@ -505,7 +510,7 @@ updateUsrDialog() return -/obj/machinery/computer/cloning/proc/scan_occupant(occupant) +/obj/machinery/computer/cloning/proc/scan_occupant(occupant, mob/M) var/mob/living/mob_occupant = get_mob_or_brainmob(occupant) var/datum/dna/dna var/datum/bank_account/has_bank_account @@ -530,11 +535,11 @@ scantemp = "Subject's brain is not responding to scanning stimuli." playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) return - if((mob_occupant.has_trait(TRAIT_HUSK)) && (src.scanner.scan_level < 2)) + if((HAS_TRAIT(mob_occupant, TRAIT_HUSK)) && (src.scanner.scan_level < 2)) scantemp = "Subject's body is too damaged to scan properly." playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) return - if(mob_occupant.has_trait(TRAIT_BADDNA)) + if(HAS_TRAIT(mob_occupant, TRAIT_BADDNA)) scantemp = "Subject's DNA is damaged beyond any hope of recovery." playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) return @@ -578,7 +583,7 @@ R.fields["traumas"] = B.get_traumas() R.fields["bank_account"] = has_bank_account - R.fields["mind"] = "[REF(mob_occupant.mind)]" + R.fields["mindref"] = "[REF(mob_occupant.mind)]" R.fields["last_death"] = mob_occupant.stat == DEAD ? mob_occupant.mind.last_death : -1 //Add an implant if needed @@ -590,11 +595,12 @@ imp = new /obj/item/implant/health(mob_occupant) imp.implant(mob_occupant) R.fields["imp"] = "[REF(imp)]" - var/old_record = find_record("mind", REF(mob_occupant.mind), records) + var/old_record = find_record("mindref", REF(mob_occupant.mind), records) if(old_record) records -= old_record scantemp = "Record updated." else scantemp = "Subject successfully scanned." records += R + log_cloning("[M ? key_name(M) : "Autoprocess"] added the record of [key_name(mob_occupant)] to [src] at [AREACOORD(src)].") playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50) diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index 1047c6f17a9..22dd25037e7 100755 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -52,7 +52,7 @@ /obj/machinery/computer/communications/Topic(href, href_list) if(..()) return - if(!usr.canUseTopic(src)) + if(!usr.canUseTopic(src, !issilicon(usr))) return if(!is_station_level(z) && !is_reserved_level(z)) //Can only use in transit and on SS13 to_chat(usr, "Unable to establish a connection: \black You're too far away from the station!") @@ -284,7 +284,7 @@ // OMG CENTCOM LETTERHEAD if("MessageCentCom") - if(authenticated==2) + if(authenticated) if(!checkCCcooldown()) to_chat(usr, "Arrays recycling. Please stand by.") return @@ -300,7 +300,7 @@ // OMG SYNDICATE ...LETTERHEAD if("MessageSyndicate") - if((authenticated==2) && (obj_flags & EMAGGED)) + if((authenticated) && (obj_flags & EMAGGED)) if(!checkCCcooldown()) to_chat(usr, "Arrays recycling. Please stand by.") playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) @@ -708,7 +708,7 @@ to_chat(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)) + if(!input || !user.canUseTopic(src, !issilicon(usr))) return SScommunications.make_announcement(user, is_silicon, input) deadchat_broadcast("[user.real_name] made a priority announcement from [get_area_name(usr, TRUE)].", user) diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index 67c1d7fc09d..945552c01eb 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -126,7 +126,7 @@ if(connected && connected.is_operational()) if(connected.occupant) //set occupant_status message viable_occupant = connected.occupant - if(viable_occupant.has_dna() && !viable_occupant.has_trait(TRAIT_RADIMMUNE) && !viable_occupant.has_trait(TRAIT_BADDNA) || (connected.scan_level == 3)) //occupant is viable for dna modification + if(viable_occupant.has_dna() && !HAS_TRAIT(viable_occupant, TRAIT_RADIMMUNE) && !HAS_TRAIT(viable_occupant, TRAIT_BADDNA) || (connected.scan_level == 3)) //occupant is viable for dna modification occupant_status += "[viable_occupant.name] => " switch(viable_occupant.stat) if(CONSCIOUS) @@ -354,7 +354,10 @@ for(var/datum/mutation/human/HM in stored_mutations) var/i = stored_mutations.Find(HM) temp_html += "
" - temp_html += "" + if(diskette) + temp_html += "" + else + temp_html += "" temp_html += "" if(combine == HM.type) temp_html += "" @@ -367,7 +370,6 @@ var/obj/item/chromosome/CM = stored_chromosomes[i] temp_html += "
" temp_html += "
[HM.name]ExportExportExportDeleteCombine
[CM.name]
" - else temp_html += status temp_html += buttons @@ -475,7 +477,7 @@ for(var/i in 1 to DNA_SEQUENCE_LENGTH) var/num = 1+(i-1)*2 var/genenum = num+(DNA_SEQUENCE_LENGTH*2*(block-1)) - temp_html += "
[sequence[num]]
" + temp_html += "
[sequence[num]]
" temp_html += "" for(var/i in 1 to DNA_SEQUENCE_LENGTH) temp_html += "
|
" @@ -483,7 +485,7 @@ for(var/i in 1 to DNA_SEQUENCE_LENGTH) var/num = i*2 var/genenum = num+(DNA_SEQUENCE_LENGTH*2*(block-1)) - temp_html += "
[sequence[num]]
" + temp_html += "
[sequence[num]]
" temp_html += "" temp_html += "




" else @@ -693,7 +695,7 @@ var/datum/mutation/human/A = new HM.type() A.copy_mutation(HM) succes = TRUE - stored_mutations += A + stored_mutations += A to_chat(usr,"Mutation succesfully stored.") if(!succes) //we can exactly return here to_chat(usr,"Mutation storage is full.") @@ -714,7 +716,7 @@ I.name = "[HM.name] activator" I.damage_coeff = connected.damage_coeff*4 I.research = TRUE - injectorready = world.time + INJECTOR_TIMEOUT + injectorready = world.time + INJECTOR_TIMEOUT * (1 - 0.1 * connected.precision_coeff) //precision_coeff being the manipulator rating if("mutator") if(injectorready < world.time) var/mutation = text2path(href_list["path"]) @@ -726,7 +728,7 @@ I.doitanyway = TRUE I.name = "[HM.name] injector" I.damage_coeff = connected.damage_coeff - injectorready = world.time + INJECTOR_TIMEOUT*5 + injectorready = world.time + INJECTOR_TIMEOUT*5 * (1 - 0.1 * connected.precision_coeff) if("nullify") if(viable_occupant) var/datum/mutation/human/A = viable_occupant.dna.get_mutation(current_mutation) @@ -736,7 +738,7 @@ current_mutation = null if("pulsegene") if(current_screen != "info") - var/path = text2path(href_list["path"]) + var/path = GET_MUTATION_TYPE_FROM_ALIAS(href_list["alias"]) if(viable_occupant && num && (path in viable_occupant.dna.mutation_index)) var/list/genes = list("A","T","G","C","X") if(jokerready < world.time) @@ -840,7 +842,7 @@ var/mob/living/carbon/viable_occupant = null if(connected) viable_occupant = connected.occupant - if(!istype(viable_occupant) || !viable_occupant.dna || viable_occupant.has_trait(TRAIT_RADIMMUNE) || viable_occupant.has_trait(TRAIT_BADDNA)) + if(!istype(viable_occupant) || !viable_occupant.dna || HAS_TRAIT(viable_occupant, TRAIT_RADIMMUNE) || HAS_TRAIT(viable_occupant, TRAIT_BADDNA)) viable_occupant = null return viable_occupant @@ -883,7 +885,9 @@ /obj/machinery/computer/scan_consolenew/proc/get_valid_mutation(mutation) var/mob/living/carbon/C = get_viable_occupant() if(C) - return C.dna.get_mutation(mutation) + var/datum/mutation/human/HM = C.dna.get_mutation(mutation) + if(HM) + return HM for(var/datum/mutation/human/A in stored_mutations) if(A.type == mutation) return A diff --git a/code/game/machinery/computer/law.dm b/code/game/machinery/computer/law.dm index 25b82ac143a..ea93fe27a1a 100644 --- a/code/game/machinery/computer/law.dm +++ b/code/game/machinery/computer/law.dm @@ -3,11 +3,28 @@ /obj/machinery/computer/upload var/mob/living/silicon/current = null //The target of future law uploads icon_screen = "command" + var/obj/item/gps/internal/ai_upload/embedded_gps + var/obj/item/gps/internal/ai_upload/embedded_gps_type = /obj/item/gps/internal/ai_upload + time_to_scewdrive = 60 + +/obj/item/gps/internal/ai_upload + icon_state = null + gpstag = "Encrypted Upload Signal" + desc = "Signal used to connect remotely with silicons." + invisibility = 100 + +/obj/machinery/computer/upload/Initialize() + embedded_gps = new embedded_gps_type(src) + return ..() + +/obj/machinery/computer/upload/Destroy() + QDEL_NULL(embedded_gps) + return ..() /obj/machinery/computer/upload/attackby(obj/item/O, mob/user, params) if(istype(O, /obj/item/aiModule)) var/obj/item/aiModule/M = O - if(src.stat & (NOPOWER|BROKEN|MAINT)) + if(stat & (NOPOWER|BROKEN|MAINT)) return if(!current) to_chat(user, "You haven't selected anything to transmit laws to!") @@ -27,8 +44,8 @@ /obj/machinery/computer/upload/proc/can_upload_to(mob/living/silicon/S) if(S.stat == DEAD) - return 0 - return 1 + return FALSE + return TRUE /obj/machinery/computer/upload/ai name = "\improper AI upload console" @@ -36,18 +53,18 @@ circuit = /obj/item/circuitboard/computer/aiupload /obj/machinery/computer/upload/ai/interact(mob/user) - src.current = select_active_ai(user) + current = select_active_ai(user) - if (!src.current) + if (!current) to_chat(user, "No active AIs detected!") else - to_chat(user, "[src.current.name] selected for law changes.") + to_chat(user, "[current.name] selected for law changes.") /obj/machinery/computer/upload/ai/can_upload_to(mob/living/silicon/ai/A) if(!A || !isAI(A)) - return 0 + return FALSE if(A.control_disabled) - return 0 + return FALSE return ..() @@ -57,16 +74,16 @@ circuit = /obj/item/circuitboard/computer/borgupload /obj/machinery/computer/upload/borg/interact(mob/user) - src.current = select_active_free_borg(user) + current = select_active_free_borg(user) - if(!src.current) + if(!current) to_chat(user, "No active unslaved cyborgs detected!") else - to_chat(user, "[src.current.name] selected for law changes.") + to_chat(user, "[current.name] selected for law changes.") /obj/machinery/computer/upload/borg/can_upload_to(mob/living/silicon/robot/B) if(!B || !iscyborg(B)) - return 0 + return FALSE if(B.scrambledcodes || B.emagged) - return 0 - return ..() \ No newline at end of file + return FALSE + return ..() diff --git a/code/game/machinery/computer/medical.dm b/code/game/machinery/computer/medical.dm index d65fb491610..04195c90bce 100644 --- a/code/game/machinery/computer/medical.dm +++ b/code/game/machinery/computer/medical.dm @@ -546,6 +546,7 @@ P.info += "Medical Record Lost!
" P.name = text("MR-[] '[]'", GLOB.data_core.medicalPrintCount, "Record Lost") P.info += "" + P.update_icon() src.printing = null src.add_fingerprint(usr) @@ -583,7 +584,7 @@ if(user) if(message) if(authenticated) - if(user.canUseTopic(src)) + if(user.canUseTopic(src, BE_CLOSE)) if(!record1 || record1 == active1) if(!record2 || record2 == active2) return 1 diff --git a/code/game/machinery/computer/pod.dm b/code/game/machinery/computer/pod.dm index b71f572e683..5d60ccd3fb4 100644 --- a/code/game/machinery/computer/pod.dm +++ b/code/game/machinery/computer/pod.dm @@ -52,7 +52,7 @@ d2 = "Stop Time Launch" else d2 = "Initiate Time Launch" - dat += "
\nTimer System: [d2]\nTime Left: [DisplayTimeText(time)] - - + +" + dat += "
\nTimer System: [d2]\nTime Left: [DisplayTimeText((time SECONDS))] - - + +" var/temp = "" var/list/L = list( 0.25, 0.5, 1, 2, 4, 8, 16 ) for(var/t in L) diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm index 95eb98ba6de..ba306b5492e 100644 --- a/code/game/machinery/computer/robot.dm +++ b/code/game/machinery/computer/robot.dm @@ -25,9 +25,6 @@ /obj/machinery/computer/robotics/ui_interact(mob/user) . = ..() - if(z > 6) - to_chat(user, "Unable to establish a connection: You're too far away from the station!") - return user.set_machine(src) var/dat var/list/robo_list = list() @@ -35,6 +32,8 @@ for(var/mob/living/silicon/robot/R in GLOB.silicon_mobs) if(!can_control(user, R)) continue + if(z != (get_turf(R)).z) + continue robot_count++ var/unit_sync = "Independent" if(R.connected_ai) @@ -84,6 +83,8 @@ for(var/mob/living/simple_animal/drone/D in GLOB.drones_list) if(D.hacked) continue + if(z != (get_turf(D)).z) + continue if(drones) dat += "

" else diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index bb976af96b5..ae1bb35c03c 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -417,6 +417,7 @@ What a mess.*/ P.info += "Security Record Lost!
" P.name = text("SR-[] '[]'", GLOB.data_core.securityPrintCount, "Record Lost") P.info += "" + P.update_icon() printing = null if("Print Poster") if(!( printing )) @@ -765,19 +766,14 @@ What a mess.*/ P = user.get_active_held_item() return P -/obj/machinery/computer/secure_data/proc/print_photo(icon/temp, name) +/obj/machinery/computer/secure_data/proc/print_photo(icon/temp, person_name) if (printing) return printing = TRUE sleep(20) var/obj/item/photo/P = new/obj/item/photo(drop_location()) - var/icon/small_img = icon(temp) - var/icon/ic = icon('icons/obj/items_and_weapons.dmi',"photo") - small_img.Scale(8, 8) - ic.Blend(small_img,ICON_OVERLAY, 13, 13) - P.icon = ic - P.picture.picture_image = temp - P.desc = "The photo on file for [name]." + var/datum/picture/toEmbed = new(name = person_name, desc = "The photo on file for [person_name].", image = temp) + P.set_picture(toEmbed, TRUE, TRUE) P.pixel_x = rand(-10, 10) P.pixel_y = rand(-10, 10) printing = FALSE @@ -821,7 +817,7 @@ What a mess.*/ /obj/machinery/computer/secure_data/proc/canUseSecurityRecordsConsole(mob/user, message1 = 0, record1, record2) if(user) if(authenticated) - if(user.canUseTopic(src)) + if(user.canUseTopic(src, BE_CLOSE)) if(!trim(message1)) return 0 if(!record1 || record1 == active1) @@ -830,7 +826,7 @@ What a mess.*/ return 0 /obj/machinery/computer/secure_data/AltClick(mob/user) - if(user.canUseTopic(src)) + if(user.canUseTopic(src, !issilicon(user))) eject_id(user) /obj/machinery/computer/secure_data/proc/eject_id(mob/user) diff --git a/code/game/machinery/computer/telecrystalconsoles.dm b/code/game/machinery/computer/telecrystalconsoles.dm deleted file mode 100644 index 43f84656f9f..00000000000 --- a/code/game/machinery/computer/telecrystalconsoles.dm +++ /dev/null @@ -1,216 +0,0 @@ -#define NUKESCALINGMODIFIER 1 - -GLOBAL_LIST_INIT(possible_uplinker_IDs, list("Alfa","Bravo","Charlie","Delta","Echo","Foxtrot","Zero", "Niner")) - -/obj/machinery/computer/telecrystals - name = "\improper telecrystal assignment station" - desc = "A device used to manage telecrystals during group operations. You shouldn't be looking at this particular one..." - icon_state = "tcstation" - icon_keyboard = "tcstation_key" - icon_screen = "syndie" - clockwork = TRUE //it'd look weird, at least if ratvar ever got there - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF - - light_color = LIGHT_COLOR_RED - -///////////////////////////////////////////// -/obj/machinery/computer/telecrystals/uplinker - name = "\improper telecrystal upload/receive station" - desc = "A device used to manage telecrystals during group operations. To use, simply insert your uplink. With your uplink installed \ - you can upload your telecrystals to the group's pool using the console, or be assigned additional telecrystals by your lieutenant." - var/obj/item/uplinkholder = null - var/obj/machinery/computer/telecrystals/boss/linkedboss = null - -/obj/machinery/computer/telecrystals/uplinker/Initialize() - . = ..() - - var/ID = pick_n_take(GLOB.possible_uplinker_IDs) - if(!ID) - ID = rand(1,999) - name = "[name] [ID]" - -/obj/machinery/computer/telecrystals/uplinker/attackby(obj/item/I, mob/user, params) - if(uplinkholder) - to_chat(user, "[src] already has an uplink in it.") - return - GET_COMPONENT_FROM(hidden_uplink, /datum/component/uplink, I) - if(hidden_uplink) - if(!user.transferItemToLoc(I, src)) - return - uplinkholder = I - I.add_fingerprint(user) - update_icon() - updateUsrDialog() - else - to_chat(user, "[I] doesn't appear to be an uplink...") - -/obj/machinery/computer/telecrystals/uplinker/update_icon() - ..() - if(uplinkholder) - add_overlay("[initial(icon_state)]-closed") - -/obj/machinery/computer/telecrystals/uplinker/proc/ejectuplink() - if(uplinkholder) - uplinkholder.forceMove(drop_location()) - uplinkholder = null - update_icon() - -/obj/machinery/computer/telecrystals/uplinker/proc/donateTC(amt, addLog = 1) - if(uplinkholder && linkedboss) - GET_COMPONENT_FROM(hidden_uplink, /datum/component/uplink, uplinkholder) - if(amt < 0) - linkedboss.storedcrystals += hidden_uplink.telecrystals - if(addLog) - linkedboss.logTransfer("[src] donated [hidden_uplink.telecrystals] telecrystals to [linkedboss].") - hidden_uplink.telecrystals = 0 - else if(amt <= hidden_uplink.telecrystals) - hidden_uplink.telecrystals -= amt - linkedboss.storedcrystals += amt - if(addLog) - linkedboss.logTransfer("[src] donated [amt] telecrystals to [linkedboss].") - -/obj/machinery/computer/telecrystals/uplinker/proc/giveTC(amt, addLog = 1) - if(uplinkholder && linkedboss) - GET_COMPONENT_FROM(hidden_uplink, /datum/component/uplink, uplinkholder) - if(amt < 0) - hidden_uplink.telecrystals += linkedboss.storedcrystals - if(addLog) - linkedboss.logTransfer("[src] received [linkedboss.storedcrystals] telecrystals from [linkedboss].") - linkedboss.storedcrystals = 0 - else if(amt <= linkedboss.storedcrystals) - hidden_uplink.telecrystals += amt - linkedboss.storedcrystals -= amt - if(addLog) - linkedboss.logTransfer("[src] received [amt] telecrystals from [linkedboss].") - -/////// - -/obj/machinery/computer/telecrystals/uplinker/ui_interact(mob/user) - . = ..() - var/dat = "" - if(linkedboss) - dat += "[linkedboss] has [linkedboss.storedcrystals] telecrystals available for distribution.

" - else - dat += "No linked management consoles detected. Scan for uplink stations using the management console.

" - - if(uplinkholder) - GET_COMPONENT_FROM(hidden_uplink, /datum/component/uplink, uplinkholder) - dat += "[hidden_uplink.telecrystals] telecrystals remain in this uplink.
" - if(linkedboss) - dat += "Donate TC: 1 | 5 | All" - dat += "
Eject Uplink" - - - var/datum/browser/popup = new(user, "computer", "Telecrystal Upload/Receive Station", 700, 500) - popup.set_content(dat) - popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) - popup.open() - -/obj/machinery/computer/telecrystals/uplinker/Topic(href, href_list) - if(..()) - return - - if(href_list["donate"]) - var/tcamt = text2num(href_list["donate"]) - donateTC(tcamt) - - if(href_list["eject"]) - ejectuplink() - - src.updateUsrDialog() - - -///////////////////////////////////////// -/obj/machinery/computer/telecrystals/boss - name = "team telecrystal management console" - desc = "A device used to manage telecrystals during group operations. To use, simply initialize the machine by scanning for nearby uplink stations. \ - Once the consoles are linked up, you can assign any telecrystals amongst your operatives; be they donated by your agents or rationed to the squad \ - based on the danger rating of the mission." - icon_state = "computer" - icon_screen = "tcboss" - icon_keyboard = "syndie_key" - var/virgin = 1 - var/scanrange = 10 - var/storedcrystals = 0 - var/list/TCstations = list() - var/list/transferlog = list() - -/obj/machinery/computer/telecrystals/boss/proc/logTransfer(logmessage) - transferlog += ("[station_time_timestamp()] [logmessage]") - -/obj/machinery/computer/telecrystals/boss/proc/scanUplinkers() - for(var/obj/machinery/computer/telecrystals/uplinker/A in urange(scanrange, src.loc)) - if(!A.linkedboss) - TCstations += A - A.linkedboss = src - if(virgin) - getDangerous() - virgin = 0 - -/obj/machinery/computer/telecrystals/boss/proc/getDangerous()//This scales the TC assigned with the round population. - ..() - var/list/nukeops = get_antag_minds(/datum/antagonist/nukeop) - var/danger = GLOB.joined_player_list.len - nukeops.len - danger = CEILING(danger, 10) - scaleTC(danger) - -/obj/machinery/computer/telecrystals/boss/proc/scaleTC(amt)//Its own proc, since it'll probably need a lot of tweaks for balance, use a fancier algorhithm, etc. - storedcrystals += amt * NUKESCALINGMODIFIER - -///////// - -/obj/machinery/computer/telecrystals/boss/ui_interact(mob/user) - . = ..() - var/dat = "" - dat += "Scan for TC stations.
" - dat += "[storedcrystals] telecrystals are available for distribution.
" - dat += "

" - - - for(var/obj/machinery/computer/telecrystals/uplinker/A in TCstations) - dat += "[A.name] | " - if(A.uplinkholder) - GET_COMPONENT_FROM(hidden_uplink, /datum/component/uplink, A.uplinkholder) - dat += "[hidden_uplink.telecrystals] telecrystals." - if(storedcrystals) - dat+= "
Add TC: 1 | 5 | 10 | All" - dat += "
" - - if(TCstations.len && storedcrystals) - dat += "

Evenly distribute remaining TC.

" - - - for(var/entry in transferlog) - dat += "[entry]
" - - - var/datum/browser/popup = new(user, "computer", "Team Telecrystal Management Console", 700, 500) - popup.set_content(dat) - popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) - popup.open() - -/obj/machinery/computer/telecrystals/boss/Topic(href, href_list) - if(..()) - return - - if(href_list["scan"]) - scanUplinkers() - - if(href_list["give"]) - var/tcamt = text2num(href_list["give"]) - if(TCstations.len) // sanity - var/obj/machinery/computer/telecrystals/uplinker/A = locate(href_list["target"]) in TCstations - A.giveTC(tcamt) - - if(href_list["distrib"]) - var/sanity = 0 - while(storedcrystals && sanity < 100) - for(var/obj/machinery/computer/telecrystals/uplinker/A in TCstations) - A.giveTC(1,0) - sanity++ - logTransfer("[src] evenly distributed telecrystals.") - - src.updateUsrDialog() - return - -#undef NUKESCALINGMODIFIER diff --git a/code/game/machinery/dance_machine.dm b/code/game/machinery/dance_machine.dm index b5f8f4eef9b..f8318c3b01a 100644 --- a/code/game/machinery/dance_machine.dm +++ b/code/game/machinery/dance_machine.dm @@ -49,6 +49,8 @@ var/datum/track/T = new() T.song_path = file("config/jukebox_music/sounds/[S]") var/list/L = splittext(S,"+") + if(L.len != 3) + continue T.song_name = L[1] T.song_length = text2num(L[2]) T.song_beat = text2num(L[3]) diff --git a/code/game/machinery/defibrillator_mount.dm b/code/game/machinery/defibrillator_mount.dm index 39d4d02a718..03709808567 100644 --- a/code/game/machinery/defibrillator_mount.dm +++ b/code/game/machinery/defibrillator_mount.dm @@ -69,7 +69,7 @@ if(defib) to_chat(user, "There's already a defibrillator in [src]!") return - if(I.has_trait(TRAIT_NODROP) || !user.transferItemToLoc(I, src)) + if(HAS_TRAIT(I, TRAIT_NODROP) || !user.transferItemToLoc(I, src)) to_chat(user, "[I] is stuck to your hand!") return user.visible_message("[user] hooks up [I] to [src]!", \ @@ -78,7 +78,7 @@ defib = I update_icon() return - else if(I == defib.paddles) + else if(defib && I == defib.paddles) defib.paddles.snap_back() return var/obj/item/card/id = I.GetID() diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 18f75fd73ec..466f1d9bc85 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -175,7 +175,7 @@ limit-- while(!FoundDoor && limit) if (!FoundDoor) - log_world("### MAP WARNING, [src] at [AREACOORD(src)] failed to find a valid airlock to cyclelink with!") + log_mapping("[src] at [AREACOORD(src)] failed to find a valid airlock to cyclelink with!") return FoundDoor.cyclelinkedairlock = src cyclelinkedairlock = FoundDoor @@ -750,7 +750,7 @@ if(ishuman(user) && prob(40) && density) var/mob/living/carbon/human/H = user - if((H.has_trait(TRAIT_DUMB)) && Adjacent(user)) + if((HAS_TRAIT(H, TRAIT_DUMB)) && Adjacent(user)) playsound(src, 'sound/effects/bang.ogg', 25, TRUE) if(!istype(H.head, /obj/item/clothing/head/helmet)) H.visible_message("[user] headbutts the airlock.", \ @@ -1037,14 +1037,12 @@ else if(locked) to_chat(user, "The airlock's bolts prevent it from being forced!") else if( !welded && !operating) - if(!beingcrowbarred) //being fireaxe'd + if(istype(I, /obj/item/twohanded/fireaxe)) //being fireaxe'd var/obj/item/twohanded/fireaxe/F = I - if(F.wielded) - INVOKE_ASYNC(src, (density ? .proc/open : .proc/close), 2) - else + if(!F.wielded) to_chat(user, "You need to be wielding the fire axe to do that!") - else - INVOKE_ASYNC(src, (density ? .proc/open : .proc/close), 2) + return + INVOKE_ASYNC(src, (density ? .proc/open : .proc/close), 2) if(istype(I, /obj/item/crowbar/power)) if(isElectrified()) @@ -1404,6 +1402,9 @@ /obj/machinery/door/airlock/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) switch(the_rcd.mode) if(RCD_DECONSTRUCT) + if(security_level != AIRLOCK_SECURITY_NONE) + to_chat(user, "[src]'s reinforcement needs to be removed first.") + return FALSE return list("mode" = RCD_DECONSTRUCT, "delay" = 50, "cost" = 32) return FALSE diff --git a/code/game/machinery/doppler_array.dm b/code/game/machinery/doppler_array.dm index c38f88454a2..ed4d5df99cc 100644 --- a/code/game/machinery/doppler_array.dm +++ b/code/game/machinery/doppler_array.dm @@ -11,24 +11,48 @@ GLOBAL_LIST_EMPTY(doppler_arrays) var/integrated = FALSE var/max_dist = 150 verb_say = "states coldly" + var/list/message_log = list() /obj/machinery/doppler_array/Initialize() . = ..() GLOB.doppler_arrays += src /obj/machinery/doppler_array/ComponentInitialize() + . = ..() AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE,null,null,CALLBACK(src,.proc/rot_message)) /obj/machinery/doppler_array/Destroy() GLOB.doppler_arrays -= src return ..() -/obj/machinery/doppler_array/examine(mob/user) - ..() - to_chat(user, "Its dish is facing to the [dir2text(dir)].") -/obj/machinery/doppler_array/process() - return PROCESS_KILL +/obj/machinery/doppler_array/ui_interact(mob/user) + . = ..() + if(stat) + return FALSE + + var/list/dat = list() + for(var/i in 1 to message_log.len) + dat += "Log recording #[i]: [message_log[i]]

" + dat += "Delete logs
" + dat += "
" + dat += "(Refresh)
" + dat += "" + var/datum/browser/popup = new(user, "computer", name, 400, 500) + popup.set_content(dat.Join(" ")) + popup.open() + return + +/obj/machinery/doppler_array/Topic(href, href_list) + if(..()) + return + if(href_list["delete_log"]) + message_log.Cut() + if(href_list["refresh"]) + updateUsrDialog() + + updateUsrDialog() + return /obj/machinery/doppler_array/attackby(obj/item/I, mob/user, params) if(I.tool_behaviour == TOOL_WRENCH) @@ -41,8 +65,8 @@ GLOBAL_LIST_EMPTY(doppler_arrays) power_change() to_chat(user, "You unfasten [src].") I.play_tool_sound(src) - else - return ..() + return + return ..() /obj/machinery/doppler_array/proc/rot_message(mob/user) to_chat(user, "You adjust [src]'s dish to face to the [dir2text(dir)].") @@ -85,6 +109,7 @@ GLOBAL_LIST_EMPTY(doppler_arrays) else for(var/message in messages) say(message) + LAZYADD(message_log, messages.Join(" ")) return TRUE /obj/machinery/doppler_array/power_change() diff --git a/code/game/machinery/exp_cloner.dm b/code/game/machinery/exp_cloner.dm index 99f0f6314b0..a04be9d4d38 100644 --- a/code/game/machinery/exp_cloner.dm +++ b/code/game/machinery/exp_cloner.dm @@ -42,11 +42,11 @@ icon_state = "pod_1" //Get the clone body ready maim_clone(H) - H.add_trait(TRAIT_STABLEHEART, "cloning") - H.add_trait(TRAIT_EMOTEMUTE, "cloning") - H.add_trait(TRAIT_MUTE, "cloning") - H.add_trait(TRAIT_NOBREATH, "cloning") - H.add_trait(TRAIT_NOCRITDAMAGE, "cloning") + ADD_TRAIT(H, TRAIT_STABLEHEART, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_EMOTEMUTE, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_MUTE, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_NOBREATH, CLONING_POD_TRAIT) + ADD_TRAIT(H, TRAIT_NOCRITDAMAGE, CLONING_POD_TRAIT) H.Unconscious(80) var/list/candidates = pollCandidatesForMob("Do you want to play as [clonename]'s defective clone?", null, null, null, 100, H) @@ -270,11 +270,11 @@ scantemp = "Unable to locate valid genetic data." playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0) return - if((mob_occupant.has_trait(TRAIT_HUSK)) && (src.scanner.scan_level < 2)) + if((HAS_TRAIT(mob_occupant, TRAIT_HUSK)) && (src.scanner.scan_level < 2)) scantemp = "Subject's body is too damaged to scan properly." playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) return - if(mob_occupant.has_trait(TRAIT_BADDNA)) + if(HAS_TRAIT(mob_occupant, TRAIT_BADDNA)) scantemp = "Subject's DNA is damaged beyond any hope of recovery." playsound(src, 'sound/machines/terminal_alert.ogg', 50, 0) return diff --git a/code/game/machinery/fat_sucker.dm b/code/game/machinery/fat_sucker.dm new file mode 100644 index 00000000000..b817fd20bec --- /dev/null +++ b/code/game/machinery/fat_sucker.dm @@ -0,0 +1,212 @@ +/obj/machinery/fat_sucker + name = "lipid extractor" + desc = "Safely and efficiently extracts excess fat from a subject." + icon = 'icons/obj/machines/fat_sucker.dmi' + icon_state = "fat" + + state_open = FALSE + density = TRUE + req_access = list(ACCESS_KITCHEN) + var/processing = FALSE + var/start_at = NUTRITION_LEVEL_WELL_FED + var/stop_at = NUTRITION_LEVEL_STARVING + var/free_exit = TRUE //set to false to prevent people from exiting before being completely stripped of fat + var/bite_size = 15 //amount of nutrients we take per process + var/nutrients //amount of nutrients we got build up + var/nutrient_to_meat = 90 //one slab of meat gives about 52 nutrition + var/datum/looping_sound/microwave/soundloop //100% stolen from microwaves + var/breakout_time = 600 + + var/next_fact = 10 //in ticks, so about 20 seconds + var/static/list/fat_facts = list(\ + "Fats are triglycerides made up of a combination of different building blocks; glycerol and fatty acids.", \ + "Adults should get a recommended 20-35% of their energy intake from fat.", \ + "Being overweight or obese puts you at an increased risk of chronic diseases, such as cardiovascular diseases, metabolic syndrome, type 2 diabetes and some types of cancers.", \ + "Not all fats are bad. A certain amount of fat is an essential part of a healthy balanced diet. " , \ + "Saturated fat should form no more than 11% of your daily calories.", \ + "Unsaturated fat, that is monounsaturated fats, polyunsaturated fats and omega-3 fatty acids, is found in plant foods and fish." \ + ) + +/obj/machinery/fat_sucker/Initialize() + . = ..() + soundloop = new(list(src), FALSE) + update_icon() + +/obj/machinery/fat_sucker/RefreshParts() + ..() + var/rating = 0 + for(var/obj/item/stock_parts/micro_laser/L in component_parts) + rating += L.rating + bite_size = initial(bite_size) + rating * 5 + nutrient_to_meat = initial(nutrient_to_meat) - rating * 5 + +/obj/machinery/fat_sucker/examine(mob/user) + . = ..() + to_chat(user, "Alt-Click to toggle the safety hatch.") + to_chat(user, "Removing [bite_size] nutritional units per operation.") + to_chat(user, "Requires [nutrient_to_meat] nutritional units per meat slab.") + +/obj/machinery/fat_sucker/close_machine(mob/user) + if(panel_open) + to_chat(user, "You need to close the maintenance hatch first!") + return + ..() + playsound(src, 'sound/machines/click.ogg', 50) + if(occupant) + if(!iscarbon(occupant)) + occupant.forceMove(drop_location()) + occupant = null + return + to_chat(occupant, "You enter [src]") + addtimer(CALLBACK(src, .proc/start_extracting), 20, TIMER_OVERRIDE|TIMER_UNIQUE) + update_icon() + +/obj/machinery/fat_sucker/open_machine(mob/user) + make_meat() + playsound(src, 'sound/machines/click.ogg', 50) + if(processing) + stop() + ..() + +/obj/machinery/fat_sucker/container_resist(mob/living/user) + if(!free_exit || state_open) + to_chat(user, "The emergency release is not responding! You start pushing against the hull!") + user.changeNext_move(CLICK_CD_BREAKOUT) + user.last_special = world.time + CLICK_CD_BREAKOUT + user.visible_message("You see [user] kicking against the door of [src]!", \ + "You lean on the back of [src] and start pushing the door open... (this will take about [DisplayTimeText(breakout_time)].)", \ + "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 + free_exit = TRUE + user.visible_message("[user] successfully broke out of [src]!", \ + "You successfully break out of [src]!") + open_machine() + return + open_machine() + +/obj/machinery/fat_sucker/interact(mob/user) + if(state_open) + close_machine() + else if(!processing || free_exit) + open_machine() + else + to_chat(user, "The safety hatch has been disabled!") + +/obj/machinery/fat_sucker/AltClick(mob/living/user) + if(!user.canUseTopic(src, BE_CLOSE)) + return + if(user == occupant) + to_chat(user, "You can't reach the controls from inside!") + return + if(!(obj_flags & EMAGGED) && !allowed(user)) + to_chat(user, "You lack the required access.") + return + free_exit = !free_exit + to_chat(user, "Safety hatch [free_exit ? "unlocked" : "locked"].") + +/obj/machinery/fat_sucker/update_icon() + overlays.Cut() + if(!state_open) + if(processing) + overlays += "[icon_state]_door_on" + overlays += "[icon_state]_stack" + overlays += "[icon_state]_smoke" + overlays += "[icon_state]_green" + else + overlays += "[icon_state]_door_off" + if(occupant) + if(powered(EQUIP)) + overlays += "[icon_state]_stack" + overlays += "[icon_state]_yellow" + else + overlays += "[icon_state]_red" + else if(powered(EQUIP)) + overlays += "[icon_state]_red" + if(panel_open) + overlays += "[icon_state]_panel" + +/obj/machinery/fat_sucker/process() + if(!processing) + return + if(!powered(EQUIP) || !occupant || !iscarbon(occupant)) + open_machine() + return + + var/mob/living/carbon/C = occupant + if(C.nutrition <= stop_at) + open_machine() + playsound(src, 'sound/machines/microwave/microwave-end.ogg', 100, FALSE) + return + C.adjust_nutrition(-bite_size) + nutrients += bite_size + + if(next_fact <= 0) + next_fact = initial(next_fact) + say(pick(fat_facts)) + playsound(loc, 'sound/machines/chime.ogg', 30, FALSE) + else + next_fact-- + use_power(500) + +/obj/machinery/fat_sucker/proc/start_extracting() + if(state_open || !occupant || processing || !powered(EQUIP)) + return + if(iscarbon(occupant)) + var/mob/living/carbon/C = occupant + if(C.nutrition > start_at) + processing = TRUE + soundloop.start() + update_icon() + set_light(2, 1, "#ff0000") + else + say("Subject not fat enough.") + playsound(src, 'sound/machines/buzz-sigh.ogg', 40, FALSE) + overlays += "[icon_state]_red" //throw a red light icon over it, to show that it wont work + +/obj/machinery/fat_sucker/proc/stop() + processing = FALSE + soundloop.stop() + set_light(0, 0) + +/obj/machinery/fat_sucker/proc/make_meat() + if(occupant && iscarbon(occupant)) + var/mob/living/carbon/C = occupant + if(C.type_of_meat) + if(nutrients >= nutrient_to_meat * 2) + C.put_in_hands(new /obj/item/reagent_containers/food/snacks/cookie (), TRUE) + while(nutrients >= nutrient_to_meat) + nutrients -= nutrient_to_meat + new C.type_of_meat (drop_location()) + while(nutrients >= nutrient_to_meat / 3) + nutrients -= nutrient_to_meat / 3 + new /obj/item/reagent_containers/food/snacks/meat/rawcutlet/plain (drop_location()) + nutrients = 0 + +/obj/machinery/fat_sucker/screwdriver_act(mob/living/user, obj/item/I) + . = TRUE + if(..()) + return + if(occupant) + to_chat(user, "[src] is currently occupied!") + return + if(state_open) + to_chat(user, "[src] must be closed to [panel_open ? "close" : "open"] its maintenance hatch!") + return + if(default_deconstruction_screwdriver(user, icon_state, icon_state, I)) + update_icon() + return + return FALSE + +/obj/machinery/fat_sucker/crowbar_act(mob/living/user, obj/item/I) + if(default_deconstruction_crowbar(I)) + return TRUE + +/obj/machinery/fat_sucker/emag_act(mob/living/user) + if(obj_flags & EMAGGED) + return + start_at = 100 + stop_at = 0 + to_chat(user, "You remove the access restrictions and lower the automatic ejection threshold!") + obj_flags |= EMAGGED diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm index 4d24a550376..1ad98a6c476 100644 --- a/code/game/machinery/flasher.dm +++ b/code/game/machinery/flasher.dm @@ -41,7 +41,7 @@ /obj/machinery/flasher/power_change() if (powered() && anchored && bulb) stat &= ~NOPOWER - if(bulb.crit_fail) + if(bulb.burnt_out) icon_state = "[base_state]1-p" else icon_state = "[base_state]1" @@ -96,7 +96,7 @@ if (!powered() || !bulb) return - if (bulb.crit_fail || (last_flash && world.time < src.last_flash + 150)) + if (bulb.burnt_out || (last_flash && world.time < src.last_flash + 150)) return if(!bulb.flash_recharge(30)) //Bulb can burn out if it's used too often too fast diff --git a/code/game/machinery/gulag_teleporter.dm b/code/game/machinery/gulag_teleporter.dm index 47136e8c27d..f0e66d2a56e 100644 --- a/code/game/machinery/gulag_teleporter.dm +++ b/code/game/machinery/gulag_teleporter.dm @@ -136,16 +136,17 @@ The console is located at computer/gulag_teleporter.dm linked_reclaimer.stored_items[occupant] = list() var/mob/living/mob_occupant = occupant for(var/obj/item/W in mob_occupant) - if(!is_type_in_typecache(W, telegulag_required_items) && mob_occupant.temporarilyRemoveItemFromInventory(W)) - if(istype(W, /obj/item/restraints/handcuffs)) - W.forceMove(get_turf(src)) - continue - if(linked_reclaimer) - linked_reclaimer.stored_items[mob_occupant] += W - linked_reclaimer.contents += W - W.forceMove(linked_reclaimer) - else - W.forceMove(src) + if(!is_type_in_typecache(W, telegulag_required_items)) + if(mob_occupant.temporarilyRemoveItemFromInventory(W)) + if(istype(W, /obj/item/restraints/handcuffs)) + W.forceMove(get_turf(src)) + continue + if(linked_reclaimer) + linked_reclaimer.stored_items[mob_occupant] += W + linked_reclaimer.contents += W + W.forceMove(linked_reclaimer) + else + W.forceMove(src) /obj/machinery/gulag_teleporter/proc/handle_prisoner(obj/item/id, datum/data/record/R) if(!ishuman(occupant)) @@ -177,3 +178,4 @@ The console is located at computer/gulag_teleporter.dm icon = 'icons/turf/floors.dmi' icon_state = "light_on-w" resistance_flags = INDESTRUCTIBLE + anchored = TRUE diff --git a/code/game/machinery/harvester.dm b/code/game/machinery/harvester.dm index d4fa24cffc0..eeb4a63a2fe 100644 --- a/code/game/machinery/harvester.dm +++ b/code/game/machinery/harvester.dm @@ -65,7 +65,7 @@ if(!isitem(A)) continue var/obj/item/I = A - if(!(I.has_trait(TRAIT_NODROP))) + if(!(HAS_TRAIT(I, TRAIT_NODROP))) say("Subject may not have abiotic items on.") playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1) return @@ -73,7 +73,7 @@ say("Subject is not organic.") playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1) return - if(!allow_living && !(C.stat == DEAD || C.has_trait(TRAIT_FAKEDEATH))) //I mean, the machines scanners arent advanced enough to tell you're alive + if(!allow_living && !(C.stat == DEAD || HAS_TRAIT(C, TRAIT_FAKEDEATH))) //I mean, the machines scanners arent advanced enough to tell you're alive say("Subject is still alive.") playsound(src, 'sound/machines/buzz-sigh.ogg', 30, 1) return diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index 93ea4c1788c..bbaa4e9f403 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -8,14 +8,14 @@ icon_state = "iv_drip" anchored = FALSE mouse_drag_pointer = MOUSE_ACTIVE_POINTER - var/mob/living/carbon/attached = null + var/mob/living/carbon/attached var/mode = IV_INJECTING - var/obj/item/reagent_containers/beaker = null + var/obj/item/reagent_containers/beaker var/static/list/drip_containers = typecacheof(list(/obj/item/reagent_containers/blood, /obj/item/reagent_containers/food, /obj/item/reagent_containers/glass)) -/obj/machinery/iv_drip/Initialize() +/obj/machinery/iv_drip/Initialize(mapload) . = ..() update_icon() @@ -151,7 +151,7 @@ // If the human is losing too much blood, beep. if(attached.blood_volume < BLOOD_VOLUME_SAFE && prob(5)) visible_message("[src] beeps loudly.") - playsound(loc, 'sound/machines/twobeep.ogg', 50, 1) + playsound(loc, 'sound/machines/twobeep_high.ogg', 50, 1) attached.transfer_blood_to(beaker, amount) update_icon() @@ -182,7 +182,6 @@ if(usr.incapacitated()) return - if(beaker) beaker.forceMove(drop_location()) beaker = null @@ -199,7 +198,6 @@ if(usr.incapacitated()) return - mode = !mode to_chat(usr, "The IV drip is now [mode ? "injecting" : "taking blood"].") update_icon() @@ -209,7 +207,7 @@ if(get_dist(user, src) > 2) return - to_chat(user, "The IV drip is [mode ? "injecting" : "taking blood"].") + to_chat(user, "[src] is [mode ? "injecting" : "taking blood"].") if(beaker) if(beaker.reagents && beaker.reagents.reagent_list.len) @@ -221,5 +219,23 @@ to_chat(user, "[attached ? attached : "No one"] is attached.") + +/obj/machinery/iv_drip/saline + name = "saline drip" + desc = "An all-you-can-drip saline canister designed to supply a hospital without running out, with a scary looking pump rigged to inject saline into containers, but filling people directly might be a bad idea." + icon_state = "saline" + density = TRUE + +/obj/machinery/iv_drip/saline/Initialize(mapload) + . = ..() + beaker = new /obj/item/reagent_containers/glass/saline(src) + +/obj/machinery/iv_drip/saline/update_icon() + return + +/obj/machinery/iv_drip/saline/eject_beaker() + return +/obj/machinery/iv_drip/saline/toggle_mode() + return #undef IV_TAKING -#undef IV_INJECTING \ No newline at end of file +#undef IV_INJECTING diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index 58afb4940bf..74f4c9e9125 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -39,7 +39,7 @@ . = ..() area.lightswitch = !area.lightswitch - area.updateicon() + area.update_icon() for(var/obj/machinery/light_switch/L in area) L.update_icon() diff --git a/code/game/machinery/magnet.dm b/code/game/machinery/magnet.dm index 094db5a6761..370621e0c86 100644 --- a/code/game/machinery/magnet.dm +++ b/code/game/machinery/magnet.dm @@ -46,10 +46,10 @@ // update the invisibility and icon /obj/machinery/magnetic_module/hide(intact) invisibility = intact ? INVISIBILITY_MAXIMUM : 0 - updateicon() + update_icon() // update the icon_state -/obj/machinery/magnetic_module/proc/updateicon() +/obj/machinery/magnetic_module/update_icon() var/state="floor_magnet" var/onstate="" if(!on) @@ -161,7 +161,7 @@ else use_power = NO_POWER_USE - updateicon() + update_icon() /obj/machinery/magnetic_module/proc/magnetic_process() // proc that actually does the magneting diff --git a/code/game/machinery/mass_driver.dm b/code/game/machinery/mass_driver.dm index 7ebed0ab0cf..443d8ac581c 100644 --- a/code/game/machinery/mass_driver.dm +++ b/code/game/machinery/mass_driver.dm @@ -20,6 +20,8 @@ var/atom/target = get_edge_target_turf(src, dir) for(var/atom/movable/O in loc) if(!O.anchored || ismecha(O)) //Mechs need their launch platforms. + if(ismob(O) && !isliving(O)) + continue O_limit++ if(O_limit >= 20) audible_message("[src] lets out a screech, it doesn't seem to be able to handle the load.") diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm index 5eb214f7ad1..ec085157462 100644 --- a/code/game/machinery/navbeacon.dm +++ b/code/game/machinery/navbeacon.dm @@ -72,10 +72,10 @@ // hide the object if turf is intact /obj/machinery/navbeacon/hide(intact) invisibility = intact ? INVISIBILITY_MAXIMUM : 0 - updateicon() + update_icon() // update the icon_state -/obj/machinery/navbeacon/proc/updateicon() +/obj/machinery/navbeacon/update_icon() var/state="navbeacon[open]" if(invisibility) @@ -94,7 +94,7 @@ user.visible_message("[user] [open ? "opens" : "closes"] the beacon's cover.", "You [open ? "open" : "close"] the beacon's cover.") - updateicon() + update_icon() else if (istype(I, /obj/item/card/id)||istype(I, /obj/item/pda)) if(open) diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm index a678ee308d3..0612de7da6c 100644 --- a/code/game/machinery/newscaster.dm +++ b/code/game/machinery/newscaster.dm @@ -791,6 +791,9 @@ GLOBAL_LIST_EMPTY(allCasters) if(isAI(user)) var/mob/living/silicon/ai/R = user targetcam = R.aicamera + else if(ispAI(user)) + var/mob/living/silicon/pai/R = user + targetcam = R.aicamera else if(iscyborg(user)) var/mob/living/silicon/robot/R = user if(R.connected_ai) @@ -827,7 +830,7 @@ GLOBAL_LIST_EMPTY(allCasters) var/mob/living/silicon/ai_user = user scanned_user = "[ai_user.name] ([ai_user.job])" else - throw EXCEPTION("Invalid user for this proc") + CRASH("Invalid user for this proc") return /obj/machinery/newscaster/proc/print_paper() @@ -856,7 +859,7 @@ GLOBAL_LIST_EMPTY(allCasters) alert = TRUE update_icon() addtimer(CALLBACK(src,.proc/remove_alert),alert_delay,TIMER_UNIQUE|TIMER_OVERRIDE) - playsound(loc, 'sound/machines/twobeep.ogg', 75, 1) + playsound(loc, 'sound/machines/twobeep_high.ogg', 75, 1) else say("Attention! Wanted issue distributed!") playsound(loc, 'sound/machines/warning-buzzer.ogg', 75, 1) diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index ff27aafedb6..4695e5e87c5 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -325,7 +325,7 @@ /obj/machinery/porta_turret/take_damage(damage, damage_type = BRUTE, damage_flag = 0, sound_effect = 1) . = ..() - if(.) //damage received + if(. && obj_integrity > 0) //damage received if(prob(30)) spark_system.start() if(on && !attacked && !(obj_flags & EMAGGED)) @@ -498,7 +498,7 @@ threatcount += 4 if(shoot_unloyal) - if (!perp.has_trait(TRAIT_MINDSHIELD)) + if (!HAS_TRAIT(perp, TRAIT_MINDSHIELD)) threatcount += 4 return threatcount diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index d76cf7c66be..ea7c0e1dbce 100755 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -23,8 +23,21 @@ /obj/machinery/recharger/examine(mob/user) ..() - if(in_range(user, src) || isobserver(user)) - to_chat(user, "The status display reads: Recharging [recharge_coeff*10]% cell charge per cycle.") + if(!in_range(user, src) && !issilicon(user) && !isobserver(user)) + to_chat(user, "You're too far away to examine [src]'s contents and display!") + return + + if(charging) + to_chat(user, "\The [src] contains:") + to_chat(user, "- \A [charging].") + + if(!(stat & (NOPOWER|BROKEN))) + to_chat(user, "The status display reads:") + to_chat(user, "- Recharging [recharge_coeff*10]% cell charge per cycle.") + if(charging) + var/obj/item/stock_parts/cell/C = charging.get_cell() + to_chat(user, "- \The [charging]'s cell is at [C.percent()]%.") + /obj/machinery/recharger/proc/setCharging(new_charging) charging = new_charging diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm index 0d587e76796..4cee76a9ca5 100644 --- a/code/game/machinery/requests_console.dm +++ b/code/game/machinery/requests_console.dm @@ -5,11 +5,24 @@ GLOBAL_LIST_EMPTY(req_console_assistance) GLOBAL_LIST_EMPTY(req_console_supplies) GLOBAL_LIST_EMPTY(req_console_information) GLOBAL_LIST_EMPTY(allConsoles) +GLOBAL_LIST_EMPTY(req_console_ckey_departments) -#define NO_NEW_MESSAGE 0 -#define NORMAL_MESSAGE_PRIORITY 1 -#define HIGH_MESSAGE_PRIORITY 2 -#define EXTREME_MESSAGE_PRIORITY 3 // not implemented, will probably require some hacking... everything needs to have a hidden feature in this game. + +#define REQ_SCREEN_MAIN 0 +#define REQ_SCREEN_REQ_ASSISTANCE 1 +#define REQ_SCREEN_REQ_SUPPLIES 2 +#define REQ_SCREEN_RELAY 3 +#define REQ_SCREEN_WRITE 4 +#define REQ_SCREEN_CHOOSE 5 +#define REQ_SCREEN_SENT 6 +#define REQ_SCREEN_ERR 7 +#define REQ_SCREEN_VIEW_MSGS 8 +#define REQ_SCREEN_AUTHENTICATE 9 +#define REQ_SCREEN_ANNOUNCE 10 + +#define REQ_EMERGENCY_SECURITY 1 +#define REQ_EMERGENCY_ENGINEERING 2 +#define REQ_EMERGENCY_MEDICAL 3 /obj/machinery/requests_console name = "requests console" @@ -18,17 +31,17 @@ GLOBAL_LIST_EMPTY(allConsoles) icon_state = "req_comp0" var/department = "Unknown" //The list of all departments on the station (Determined from this variable on each unit) Set this to the same thing if you want several consoles in one department var/list/messages = list() //List of all messages - var/departmentType = 0 + var/departmentType = 0 //bitflag // 0 = none (not listed, can only replied to) - // 1 = assistance - // 2 = supplies - // 3 = info - // 4 = ass + sup //Erro goddamn you just HAD to shorten "assistance" down to "ass" - // 5 = ass + info - // 6 = sup + info - // 7 = ass + sup + info - var/newmessagepriority = NO_NEW_MESSAGE - var/screen = 0 + // assistance = 1 + // supplies = 2 + // info = 4 + // assistance + supplies = 3 + // assistance + info = 5 + // supplies + info = 6 + // assistance + supplies + info = 7 + var/newmessagepriority = REQ_NO_NEW_MESSAGE + var/screen = REQ_SCREEN_MAIN // 0 = main menu, // 1 = req. assistance, // 2 = req. supplies @@ -47,9 +60,9 @@ GLOBAL_LIST_EMPTY(allConsoles) var/announceAuth = FALSE //Will be set to 1 when you authenticate yourself for announcements var/msgVerified = "" //Will contain the name of the person who verified it var/msgStamped = "" //If a message is stamped, this will contain the stamp name - var/message = ""; - var/dpt = ""; //the department which will be receiving the message - var/priority = -1 ; //Priority of the message being sent + var/message = "" + var/to_department = "" //the department which will be receiving the message + var/priority = REQ_NO_NEW_MESSAGE //Priority of the message being sent var/obj/item/radio/Radio var/emergency //If an emergency has been called by this device. Acts as both a cooldown and lets the responder know where it the emergency was triggered from var/receive_ore_updates = FALSE //If ore redemption machines will send an update when it receives new ores. @@ -74,11 +87,11 @@ GLOBAL_LIST_EMPTY(allConsoles) if(icon_state != "req_comp_off") icon_state = "req_comp_off" else - if(emergency || (newmessagepriority == EXTREME_MESSAGE_PRIORITY)) + if(emergency || (newmessagepriority == REQ_EXTREME_MESSAGE_PRIORITY)) icon_state = "req_comp3" - else if(newmessagepriority == HIGH_MESSAGE_PRIORITY) + else if(newmessagepriority == REQ_HIGH_MESSAGE_PRIORITY) icon_state = "req_comp2" - else if(newmessagepriority == NORMAL_MESSAGE_PRIORITY) + else if(newmessagepriority == REQ_NORMAL_MESSAGE_PRIORITY) icon_state = "req_comp1" else icon_state = "req_comp0" @@ -87,38 +100,19 @@ GLOBAL_LIST_EMPTY(allConsoles) . = ..() name = "\improper [department] requests console" GLOB.allConsoles += src - switch(departmentType) - if(1) - if(!("[department]" in GLOB.req_console_assistance)) - GLOB.req_console_assistance += department - if(2) - if(!("[department]" in GLOB.req_console_supplies)) - GLOB.req_console_supplies += department - if(3) - if(!("[department]" in GLOB.req_console_information)) - GLOB.req_console_information += department - if(4) - if(!("[department]" in GLOB.req_console_assistance)) - GLOB.req_console_assistance += department - if(!("[department]" in GLOB.req_console_supplies)) - GLOB.req_console_supplies += department - if(5) - if(!("[department]" in GLOB.req_console_assistance)) - GLOB.req_console_assistance += department - if(!("[department]" in GLOB.req_console_information)) - GLOB.req_console_information += department - if(6) - if(!("[department]" in GLOB.req_console_supplies)) - GLOB.req_console_supplies += department - if(!("[department]" in GLOB.req_console_information)) - GLOB.req_console_information += department - if(7) - if(!("[department]" in GLOB.req_console_assistance)) - GLOB.req_console_assistance += department - if(!("[department]" in GLOB.req_console_supplies)) - GLOB.req_console_supplies += department - if(!("[department]" in GLOB.req_console_information)) - GLOB.req_console_information += department + + if(departmentType) + + if((departmentType & REQ_DEP_TYPE_ASSISTANCE) && !(department in GLOB.req_console_assistance)) + GLOB.req_console_assistance += department + + if((departmentType & REQ_DEP_TYPE_SUPPLIES) && !(department in GLOB.req_console_supplies)) + GLOB.req_console_supplies += department + + if((departmentType & REQ_DEP_TYPE_INFORMATION) && !(department in GLOB.req_console_information)) + GLOB.req_console_information += department + + GLOB.req_console_ckey_departments[ckey(department)] = department Radio = new /obj/item/radio(src) Radio.listening = 0 @@ -133,83 +127,77 @@ GLOBAL_LIST_EMPTY(allConsoles) var/dat = "" if(!open) switch(screen) - if(1) //req. assistance + if(REQ_SCREEN_MAIN) + announceAuth = FALSE + if (newmessagepriority == REQ_NORMAL_MESSAGE_PRIORITY) + dat += "
There are new messages

" + else if (newmessagepriority == REQ_HIGH_MESSAGE_PRIORITY) + dat += "
There are new PRIORITY messages

" + else if (newmessagepriority == REQ_EXTREME_MESSAGE_PRIORITY) + dat += "
There are new EXTREME PRIORITY messages

" + dat += "View Messages

" + + dat += "Request Assistance
" + dat += "Request Supplies
" + dat += "Relay Anonymous Information

" + + if(!emergency) + dat += "Emergency: Security
" + dat += "Emergency: Engineering
" + dat += "Emergency: Medical

" + else + dat += "[emergency] has been dispatched to this location.

" + + if(announcementConsole) + dat += "Send Station-wide Announcement

" + if (silent) + dat += "Speaker OFF" + else + dat += "Speaker ON" + if(REQ_SCREEN_REQ_ASSISTANCE) dat += "Which department do you need assistance from?

" - dat += "" - for(var/dpt in GLOB.req_console_assistance) - if (dpt != department) - dat += "" - dat += "" - dat += "" - dat += "" - dat += "
[dpt]Normal High" - if(hackState) - dat += "EXTREME" - dat += "
" - dat += "
<< Back
" + dat += departments_table(GLOB.req_console_assistance) - if(2) //req. supplies + if(REQ_SCREEN_REQ_SUPPLIES) dat += "Which department do you need supplies from?

" - dat += "" - for(var/dpt in GLOB.req_console_supplies) - if (dpt != department) - dat += "" - dat += "" - dat += "" - dat += "" - dat += "
[dpt]Normal High" - if(hackState) - dat += "EXTREME" - dat += "
" - dat += "
<< Back
" + dat += departments_table(GLOB.req_console_supplies) - if(3) //relay information + if(REQ_SCREEN_RELAY) dat += "Which department would you like to send information to?

" - dat += "" - for(var/dpt in GLOB.req_console_information) - if (dpt != department) - dat += "" - dat += "" - dat += "" - dat += "" - dat += "
[dpt]Normal High" - if(hackState) - dat += "EXTREME" - dat += "
" - dat += "
<< Back
" + dat += departments_table(GLOB.req_console_information) - if(6) //sent successfully + if(REQ_SCREEN_SENT) dat += "Message sent.

" - dat += "Continue
" + dat += "<< Back
" - if(7) //unsuccessful; not sent + if(REQ_SCREEN_ERR) dat += "An error occurred.

" - dat += "Continue
" + dat += "<< Back
" - if(8) //view messages + if(REQ_SCREEN_VIEW_MSGS) for (var/obj/machinery/requests_console/Console in GLOB.allConsoles) if (Console.department == department) - Console.newmessagepriority = NO_NEW_MESSAGE + Console.newmessagepriority = REQ_NO_NEW_MESSAGE Console.update_icon() - newmessagepriority = NO_NEW_MESSAGE + newmessagepriority = REQ_NO_NEW_MESSAGE update_icon() var/messageComposite = "" for(var/msg in messages) // This puts more recent messages at the *top*, where they belong. messageComposite = "
[msg]
" + messageComposite dat += messageComposite - dat += "
<< Back to Main Menu
" + dat += "
<< Back to Main Menu
" - if(9) //authentication before sending + if(REQ_SCREEN_AUTHENTICATE) dat += "Message Authentication

" - dat += "Message for [dpt]: [message]

" + dat += "Message for [to_department]: [message]

" dat += "
You may authenticate your message now by scanning your ID or your stamp

" dat += "Validated by: [msgVerified ? msgVerified : "Not Validated"]
" dat += "Stamped by: [msgStamped ? msgStamped : "Not Stamped"]

" - dat += "Send Message
" - dat += "
<< Discard Message
" + dat += "Send Message
" + dat += "
<< Discard Message
" - if(10) //send announcement + if(REQ_SCREEN_ANNOUNCE) dat += "

Station-wide Announcement

" if(announceAuth) dat += "
Authentication accepted

" @@ -221,42 +209,32 @@ GLOBAL_LIST_EMPTY(allConsoles) dat += "Announce Message
" else dat += "Announce Message
" - dat += "
<< Back
" + dat += "
<< Back
" - else //main menu - screen = 0 - announceAuth = FALSE - if (newmessagepriority == NORMAL_MESSAGE_PRIORITY) - dat += "
There are new messages

" - if (newmessagepriority == HIGH_MESSAGE_PRIORITY) - dat += "
There are new PRIORITY messages

" - if (newmessagepriority == EXTREME_MESSAGE_PRIORITY) - dat += "
There are new EXTREME PRIORITY messages

" - dat += "View Messages

" - - dat += "Request Assistance
" - dat += "Request Supplies
" - dat += "Relay Anonymous Information

" - - if(!emergency) - dat += "Emergency: Security
" - dat += "Emergency: Engineering
" - dat += "Emergency: Medical

" - else - dat += "[emergency] has been dispatched to this location.

" - - if(announcementConsole) - dat += "Send Station-wide Announcement

" - if (silent) - dat += "Speaker OFF" - else - dat += "Speaker ON" + if(!dat) + CRASH("No UI for src. Screen var is: [screen]") var/datum/browser/popup = new(user, "req_console", "[department] Requests Console", 450, 440) popup.set_content(dat) popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state)) popup.open() return +/obj/machinery/requests_console/proc/departments_table(list/req_consoles) + var/dat = "" + dat += "" + for(var/req_dpt in req_consoles) + if (req_dpt != department) + dat += "" + dat += "" + dat += "" + dat += "" + dat += "
[req_dpt]Normal High" + if(hackState) + dat += "EXTREME" + dat += "
" + dat += "
<< Back
" + return dat + /obj/machinery/requests_console/Topic(href, href_list) if(..()) return @@ -264,35 +242,24 @@ GLOBAL_LIST_EMPTY(allConsoles) add_fingerprint(usr) if(reject_bad_text(href_list["write"])) - dpt = ckey(href_list["write"]) //write contains the string of the receiving department's name + to_department = ckey(href_list["write"]) //write contains the string of the receiving department's name - var/new_message = copytext(reject_bad_text(input(usr, "Write your message:", "Awaiting Input", "")),1,MAX_MESSAGE_LEN) + var/new_message = (to_department in GLOB.req_console_ckey_departments) && copytext(reject_bad_text(input(usr, "Write your message:", "Awaiting Input", "")),1,MAX_MESSAGE_LEN) if(new_message) + to_department = GLOB.req_console_ckey_departments[to_department] message = new_message - screen = 9 - if (text2num(href_list["priority"]) < 2) - priority = -1 - else - priority = text2num(href_list["priority"]) - else - dpt = ""; - msgVerified = "" - msgStamped = "" - screen = 0 - priority = -1 + screen = REQ_SCREEN_AUTHENTICATE + priority = CLAMP(text2num(href_list["priority"]), REQ_NORMAL_MESSAGE_PRIORITY, REQ_EXTREME_MESSAGE_PRIORITY) if(href_list["writeAnnouncement"]) var/new_message = copytext(reject_bad_text(input(usr, "Write your message:", "Awaiting Input", "")),1,MAX_MESSAGE_LEN) if(new_message) message = new_message - if (text2num(href_list["priority"]) < 2) - priority = -1 - else - priority = text2num(href_list["priority"]) + priority = CLAMP(text2num(href_list["priority"]) || REQ_NORMAL_MESSAGE_PRIORITY, REQ_NORMAL_MESSAGE_PRIORITY, REQ_EXTREME_MESSAGE_PRIORITY) else message = "" announceAuth = FALSE - screen = 0 + screen = REQ_SCREEN_MAIN if(href_list["sendAnnouncement"]) if(!announcementConsole) @@ -306,136 +273,78 @@ GLOBAL_LIST_EMPTY(allConsoles) message_admins("[ADMIN_LOOKUPFLW(usr)] has made a station announcement from [src] at [AREACOORD(usr)].") announceAuth = FALSE message = "" - screen = 0 + screen = REQ_SCREEN_MAIN if(href_list["emergency"]) if(!emergency) var/radio_freq switch(text2num(href_list["emergency"])) - if(1) //Security + if(REQ_EMERGENCY_SECURITY) //Security radio_freq = FREQ_SECURITY emergency = "Security" - if(2) //Engineering + if(REQ_EMERGENCY_ENGINEERING) //Engineering radio_freq = FREQ_ENGINEERING emergency = "Engineering" - if(3) //Medical + if(REQ_EMERGENCY_MEDICAL) //Medical radio_freq = FREQ_MEDICAL emergency = "Medical" if(radio_freq) Radio.set_frequency(radio_freq) Radio.talk_into(src,"[emergency] emergency in [department]!!",radio_freq,get_spans(),get_default_language()) update_icon() - addtimer(CALLBACK(src, .proc/clear_emergency), 3000) + addtimer(CALLBACK(src, .proc/clear_emergency), 5 MINUTES) - if( href_list["department"] && message ) - var/log_msg = message - var/sending = message - sending += "
" - if (msgVerified) - sending += msgVerified - sending += "
" - if (msgStamped) - sending += msgStamped - sending += "
" - screen = 7 //if it's successful, this will get overrwritten (7 = unsufccessfull, 6 = successfull) - if (sending) - var/pass = FALSE - var/datum/data_rc_msg/log = new(href_list["department"], department, log_msg, msgStamped, msgVerified, priority) - for (var/obj/machinery/telecomms/message_server/MS in GLOB.telecomms_list) - if (MS.toggled) - MS.rc_msgs += log - pass = TRUE + if(href_list["send"] && message && to_department && priority) - if(pass) - var/radio_freq = 0 - switch(href_list["department"]) - if("bridge") - radio_freq = FREQ_COMMAND - if("medbay") - radio_freq = FREQ_MEDICAL - if("science") - radio_freq = FREQ_SCIENCE - if("engineering") - radio_freq = FREQ_ENGINEERING - if("security") - radio_freq = FREQ_SECURITY - if("cargobay" || "mining") - radio_freq = FREQ_SUPPLY - Radio.set_frequency(radio_freq) - var/authentic - if(msgVerified || msgStamped) - authentic = " (Authenticated)" + var/radio_freq + switch(ckey(to_department)) + if("bridge") + radio_freq = FREQ_COMMAND + if("medbay") + radio_freq = FREQ_MEDICAL + if("science") + radio_freq = FREQ_SCIENCE + if("engineering") + radio_freq = FREQ_ENGINEERING + if("security") + radio_freq = FREQ_SECURITY + if("cargobay" || "mining") + radio_freq = FREQ_SUPPLY - var/alert = "" - for (var/obj/machinery/requests_console/Console in GLOB.allConsoles) - if (ckey(Console.department) == ckey(href_list["department"])) - switch(priority) - if(2) //High priority - alert = "PRIORITY Alert in [department][authentic]" - Console.createmessage(src, alert, sending, 2, 1) - if(3) // Extreme Priority - alert = "EXTREME PRIORITY Alert from [department][authentic]" - Console.createmessage(src, alert , sending, 3, 1) - else // Normal priority - alert = "Message from [department][authentic]" - Console.createmessage(src, alert , sending, 1, 1) - screen = 6 - - if(radio_freq) - Radio.talk_into(src,"[alert]: [message]",radio_freq,get_spans(),get_default_language()) - - switch(priority) - if(2) - messages += "High Priority
To: [dpt]
[sending]" - else - messages += "To: [dpt]
[sending]" - else - say("NOTICE: No server detected!") + var/datum/signal/subspace/messaging/rc/signal = new(src, list( + "sender" = department, + "rec_dpt" = to_department, + "send_dpt" = department, + "message" = message, + "verified" = msgVerified, + "stamped" = msgStamped, + "priority" = priority, + "notify_freq" = radio_freq + )) + signal.send_to_receivers() + screen = signal.data["done"] ? REQ_SCREEN_SENT : REQ_SCREEN_ERR //Handle screen switching - switch(text2num(href_list["setScreen"])) - if(null) //skip - if(1) //req. assistance - screen = 1 - if(2) //req. supplies - screen = 2 - if(3) //relay information - screen = 3 -// if(4) //write message -// screen = 4 - if(5) //choose priority - screen = 5 - if(6) //sent successfully - screen = 6 - if(7) //unsuccessfull; not sent - screen = 7 - if(8) //view messages - screen = 8 - if(9) //authentication - screen = 9 - if(10) //send announcement - if(!announcementConsole) - return - screen = 10 - else //main menu - dpt = "" - msgVerified = "" - msgStamped = "" - message = "" - priority = -1 - screen = 0 + if(href_list["setScreen"]) + var/set_screen = CLAMP(text2num(href_list["setScreen"]) || 0, REQ_SCREEN_MAIN, REQ_SCREEN_ANNOUNCE) + switch(set_screen) + if(REQ_SCREEN_MAIN) + to_department = "" + msgVerified = "" + msgStamped = "" + message = "" + priority = -1 + if(REQ_SCREEN_ANNOUNCE) + if(!announcementConsole) + return + screen = set_screen //Handle silencing the console - switch( href_list["setSilent"] ) - if(null) //skip - if("1") - silent = TRUE - else - silent = FALSE + if(href_list["setSilent"]) + silent = text2num(href_list["setSilent"]) ? TRUE : FALSE updateUsrDialog() - return /obj/machinery/requests_console/say_mod(input, message_mode) var/ending = copytext(input, length(input) - 2) @@ -448,42 +357,53 @@ GLOBAL_LIST_EMPTY(allConsoles) emergency = null update_icon() -/obj/machinery/requests_console/proc/createmessage(source, title, message, priority) +//from message_server.dm: Console.createmessage(data["sender"], data["send_dpt"], data["message"], data["verified"], data["stamped"], data["priority"], data["notify_freq"]) +/obj/machinery/requests_console/proc/createmessage(source, source_department, message, msgVerified, msgStamped, priority, radio_freq) var/linkedsender - if(istype(source, /obj/machinery/requests_console)) - var/obj/machinery/requests_console/sender = source - linkedsender = "[sender.department]" - else - capitalize(source) - linkedsender = source - capitalize(title) + + var/sending = "[message]
" + if(msgVerified) + sending = "[sending][msgVerified]
" + if(msgStamped) + sending = "[sending][msgStamped]
" + + linkedsender = source_department ? "[source_department]" : (source || "unknown") + + var/authentic = (msgVerified || msgStamped) && " (Authenticated)" + var/alert = "Message from [source][authentic]" + var/silenced = silent + var/header = "From: [linkedsender] Received: [station_time_timestamp()]
" + switch(priority) - if(2) //High priority - if(newmessagepriority < HIGH_MESSAGE_PRIORITY) - newmessagepriority = HIGH_MESSAGE_PRIORITY + if(REQ_NORMAL_MESSAGE_PRIORITY) + if(newmessagepriority < REQ_NORMAL_MESSAGE_PRIORITY) + newmessagepriority = REQ_NORMAL_MESSAGE_PRIORITY update_icon() - if(!silent) - playsound(src, 'sound/machines/twobeep.ogg', 50, 1) - say(title) - messages += "High Priority
From: [linkedsender]
[message]" - if(3) // Extreme Priority - if(newmessagepriority < EXTREME_MESSAGE_PRIORITY) - newmessagepriority = EXTREME_MESSAGE_PRIORITY + if(REQ_HIGH_MESSAGE_PRIORITY) + header = "High Priority
[header]" + alert = "PRIORITY Alert from [source][authentic]" + if(newmessagepriority < REQ_HIGH_MESSAGE_PRIORITY) + newmessagepriority = REQ_HIGH_MESSAGE_PRIORITY update_icon() - if(1) - playsound(src, 'sound/machines/twobeep.ogg', 50, 1) - say(title) - messages += "!!!Extreme Priority!!!
From: [linkedsender]
[message]" - else // Normal priority - if(newmessagepriority < NORMAL_MESSAGE_PRIORITY) - newmessagepriority = NORMAL_MESSAGE_PRIORITY + if(REQ_EXTREME_MESSAGE_PRIORITY) + header = "!!!Extreme Priority!!!
[header]" + alert = "EXTREME PRIORITY Alert from [source][authentic]" + silenced = FALSE + if(newmessagepriority < REQ_EXTREME_MESSAGE_PRIORITY) + newmessagepriority = REQ_EXTREME_MESSAGE_PRIORITY update_icon() - if(!src.silent) - playsound(src, 'sound/machines/twobeep.ogg', 50, 1) - say(title) - messages += "From: [linkedsender]
[message]" + + messages += "[header][sending]" + + if(!silenced) + playsound(src, 'sound/machines/twobeep_high.ogg', 50, 1) + say(alert) + + if(radio_freq) + Radio.set_frequency(radio_freq) + Radio.talk_into(src, "[alert]: [message]", radio_freq, get_spans(), get_default_language()) /obj/machinery/requests_console/attackby(obj/item/O, mob/user, params) if(O.tool_behaviour == TOOL_CROWBAR) @@ -509,10 +429,10 @@ GLOBAL_LIST_EMPTY(allConsoles) var/obj/item/card/id/ID = O.GetID() if(ID) - if(screen == 9) + if(screen == REQ_SCREEN_AUTHENTICATE) msgVerified = "Verified by [ID.registered_name] ([ID.assignment])" updateUsrDialog() - if(screen == 10) + if(screen == REQ_SCREEN_ANNOUNCE) if (ACCESS_RC_ANNOUNCE in ID.access) announceAuth = TRUE else @@ -521,14 +441,25 @@ GLOBAL_LIST_EMPTY(allConsoles) updateUsrDialog() return if (istype(O, /obj/item/stamp)) - if(screen == 9) + if(screen == REQ_SCREEN_AUTHENTICATE) var/obj/item/stamp/T = O msgStamped = "Stamped with the [T.name]" updateUsrDialog() return return ..() -#undef NO_NEW_MESSAGE -#undef NORMAL_MESSAGE_PRIORITY -#undef HIGH_MESSAGE_PRIORITY -#undef EXTREME_MESSAGE_PRIORITY +#undef REQ_EMERGENCY_SECURITY +#undef REQ_EMERGENCY_ENGINEERING +#undef REQ_EMERGENCY_MEDICAL + +#undef REQ_SCREEN_MAIN +#undef REQ_SCREEN_REQ_ASSISTANCE +#undef REQ_SCREEN_REQ_SUPPLIES +#undef REQ_SCREEN_RELAY +#undef REQ_SCREEN_WRITE +#undef REQ_SCREEN_CHOOSE +#undef REQ_SCREEN_SENT +#undef REQ_SCREEN_ERR +#undef REQ_SCREEN_VIEW_MSGS +#undef REQ_SCREEN_AUTHENTICATE +#undef REQ_SCREEN_ANNOUNCE diff --git a/code/game/machinery/scan_gate.dm b/code/game/machinery/scan_gate.dm index 69d3c18a149..5a2ef113d02 100644 --- a/code/game/machinery/scan_gate.dm +++ b/code/game/machinery/scan_gate.dm @@ -90,7 +90,7 @@ if(!R || (R.fields["criminal"] == "*Arrest*")) beep = TRUE if(SCANGATE_MINDSHIELD) - if(M.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(M, TRAIT_MINDSHIELD)) beep = TRUE if(SCANGATE_NANITES) if(SEND_SIGNAL(M, COMSIG_HAS_NANITES)) diff --git a/code/game/machinery/slotmachine.dm b/code/game/machinery/slotmachine.dm index 298587cdea4..b15b2506e24 100644 --- a/code/game/machinery/slotmachine.dm +++ b/code/game/machinery/slotmachine.dm @@ -11,6 +11,8 @@ #define SPIN_TIME 65 //As always, deciseconds. #define REEL_DEACTIVATE_DELAY 7 #define SEVEN "7" +#define HOLOCHIP 1 +#define COIN 2 /obj/machinery/computer/slot_machine name = "slot machine" @@ -26,6 +28,8 @@ var/working = 0 var/balance = 0 //How much money is in the machine, ready to be CONSUMED. var/jackpots = 0 + var/paymode = HOLOCHIP //toggles between HOLOCHIP/COIN, defined above + var/cointype = /obj/item/coin/iron //default cointype var/list/coinvalues = list() var/list/reels = list(list("", "", "") = 0, list("", "", "") = 0, list("", "", "") = 0, list("", "", "") = 0, list("", "", "") = 0) var/list/symbols = list(SEVEN = 1, "&" = 2, "@" = 2, "$" = 2, "?" = 2, "#" = 2, "!" = 2, "%" = 2) //if people are winning too much, multiply every number in this list by 2 and see if they are still winning too much. @@ -45,13 +49,13 @@ toggle_reel_spin(0) - for(var/cointype in typesof(/obj/item/coin)) + for(cointype in typesof(/obj/item/coin)) var/obj/item/coin/C = cointype coinvalues["[cointype]"] = initial(C.value) /obj/machinery/computer/slot_machine/Destroy() if(balance) - give_coins(balance) + give_payout(balance) return ..() /obj/machinery/computer/slot_machine/process() @@ -81,20 +85,43 @@ /obj/machinery/computer/slot_machine/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/coin)) var/obj/item/coin/C = I - if(prob(2)) - if(!user.transferItemToLoc(C, drop_location())) - return - C.throw_at(user, 3, 10) - if(prob(10)) - balance = max(balance - SPIN_PRICE, 0) - to_chat(user, "[src] spits your coin back out!") + if(paymode == COIN) + if(prob(2)) + if(!user.transferItemToLoc(C, drop_location())) + return + C.throw_at(user, 3, 10) + if(prob(10)) + balance = max(balance - SPIN_PRICE, 0) + to_chat(user, "[src] spits your coin back out!") + else + if(!user.temporarilyRemoveItemFromInventory(C)) + return + to_chat(user, "You insert a [C.cmineral] coin into [src]'s slot!") + balance += C.value + qdel(C) else - if(!user.temporarilyRemoveItemFromInventory(C)) + to_chat(user, "This machine is only accepting holochips!") + else if(istype(I, /obj/item/holochip)) + if(paymode == HOLOCHIP) + var/obj/item/holochip/H = I + if(!user.temporarilyRemoveItemFromInventory(H)) return - to_chat(user, "You insert a [C.cmineral] coin into [src]'s slot!") - balance += C.value - qdel(C) + to_chat(user, "You insert [H.credits] holocredits into [src]'s!") + balance += H.credits + qdel(H) + else + to_chat(user, "This machine is only accepting coins!") + else if(I.tool_behaviour == TOOL_MULTITOOL) + if(balance > 0) + visible_message("[src] says, 'ERROR! Please empty the machine balance before altering paymode'") //Prevents converting coins into holocredits and vice versa + else + if(paymode == HOLOCHIP) + paymode = COIN + visible_message("[src] says, 'This machine now works with COINS!'") + else + paymode = HOLOCHIP + visible_message("[src] says, 'This machine now works with HOLOCHIPS!'") else return ..() @@ -130,8 +157,9 @@ Play!

[reeltext] -
- Refund balance
"} +
"} + if(balance > 0) + dat+="Refund balance
" var/datum/browser/popup = new(user, "slotmachine", "Slot Machine") popup.set_content(dat) @@ -147,8 +175,9 @@ spin(usr) else if(href_list["refund"]) - give_coins(balance) - balance = 0 + if(balance > 0) + give_payout(balance) + balance = 0 /obj/machinery/computer/slot_machine/emp_act(severity) . = ..() @@ -161,7 +190,7 @@ var/severity_ascending = 4 - severity money = max(rand(money - (200 * severity_ascending), money + (200 * severity_ascending)), 0) balance = max(rand(balance - (50 * severity_ascending), balance + (50 * severity_ascending)), 0) - money -= max(0, give_coins(min(rand(-50, 100 * severity_ascending)), money)) //This starts at -50 because it shouldn't always dispense coins yo + money -= max(0, give_payout(min(rand(-50, 100 * severity_ascending)), money)) //This starts at -50 because it shouldn't always dispense coins yo spin() /obj/machinery/computer/slot_machine/proc/spin(mob/user) @@ -227,23 +256,25 @@ var/linelength = get_lines() if(reels[1][2] + reels[2][2] + reels[3][2] + reels[4][2] + reels[5][2] == "[SEVEN][SEVEN][SEVEN][SEVEN][SEVEN]") - visible_message("[src] says, 'JACKPOT! You win [money] credits worth of coins!'") + visible_message("[src] says, 'JACKPOT! You win [money] credits!'") priority_announce("Congratulations to [user ? user.real_name : usrname] for winning the jackpot at the slot machine in [get_area(src)]!") jackpots += 1 - balance += money - give_coins(JACKPOT) + balance += money - give_payout(JACKPOT) money = 0 - - for(var/i = 0, i < 5, i++) - var/cointype = pick(subtypesof(/obj/item/coin)) - var/obj/item/coin/C = new cointype(loc) - random_step(C, 2, 50) + if(paymode == HOLOCHIP) + new /obj/item/holochip(loc,JACKPOT) + else + for(var/i = 0, i < 5, i++) + cointype = pick(subtypesof(/obj/item/coin)) + var/obj/item/coin/C = new cointype(loc) + random_step(C, 2, 50) else if(linelength == 5) - visible_message("[src] says, 'Big Winner! You win a thousand credits worth of coins!'") + visible_message("[src] says, 'Big Winner! You win a thousand credits!'") give_money(BIG_PRIZE) else if(linelength == 4) - visible_message("[src] says, 'Winner! You win four hundred credits worth of coins!'") + visible_message("[src] says, 'Winner! You win four hundred credits!'") give_money(SMALL_PRIZE) else if(linelength == 3) @@ -275,12 +306,15 @@ /obj/machinery/computer/slot_machine/proc/give_money(amount) var/amount_to_give = money >= amount ? amount : money - var/surplus = amount_to_give - give_coins(amount_to_give) + var/surplus = amount_to_give - give_payout(amount_to_give) money = max(0, money - amount) balance += surplus -/obj/machinery/computer/slot_machine/proc/give_coins(amount) - var/cointype = obj_flags & EMAGGED ? /obj/item/coin/iron : /obj/item/coin/silver +/obj/machinery/computer/slot_machine/proc/give_payout(amount) + if(paymode == HOLOCHIP) + cointype = /obj/item/holochip + else + cointype = obj_flags & EMAGGED ? /obj/item/coin/iron : /obj/item/coin/silver if(!(obj_flags & EMAGGED)) amount = dispense(amount, cointype, null, 0) @@ -293,16 +327,21 @@ return amount /obj/machinery/computer/slot_machine/proc/dispense(amount = 0, cointype = /obj/item/coin/silver, mob/living/target, throwit = 0) - var/value = coinvalues["[cointype]"] + if(paymode == HOLOCHIP) + var/obj/item/holochip/H = new /obj/item/holochip(loc,amount) - - while(amount >= value) - var/obj/item/coin/C = new cointype(loc) //DOUBLE THE PAIN - amount -= value if(throwit && target) - C.throw_at(target, 3, 10) - else - random_step(C, 2, 40) + H.throw_at(target, 3, 10) + else + var/value = coinvalues["[cointype]"] + + while(amount >= value) + var/obj/item/coin/C = new cointype(loc) //DOUBLE THE PAIN + amount -= value + if(throwit && target) + C.throw_at(target, 3, 10) + else + random_step(C, 2, 40) return amount @@ -312,3 +351,5 @@ #undef BIG_PRIZE #undef SMALL_PRIZE #undef SPIN_PRICE +#undef HOLOCHIP +#undef COIN diff --git a/code/game/machinery/stasis.dm b/code/game/machinery/stasis.dm new file mode 100644 index 00000000000..2069b012001 --- /dev/null +++ b/code/game/machinery/stasis.dm @@ -0,0 +1,147 @@ +#define STASIS_TOGGLE_COOLDOWN 50 +/obj/machinery/stasis + name = "Lifeform Stasis Unit" + desc = "A not so comfortable looking bed with some nozzles at the top and bottom. It will keep someone in stasis." + icon = 'icons/obj/machines/stasis.dmi' + icon_state = "stasis" + density = FALSE + can_buckle = TRUE + buckle_lying = 90 + circuit = /obj/item/circuitboard/machine/stasis + idle_power_usage = 40 + active_power_usage = 340 + fair_market_price = 10 + payment_department = ACCOUNT_MED + var/stasis_enabled = TRUE + var/last_stasis_sound = FALSE + var/stasis_can_toggle = 0 + var/mattress_state = "stasis_on" + var/obj/effect/overlay/vis/mattress_on + +/obj/machinery/stasis/examine(mob/user) + ..() + var/turn_on_or_off = stasis_enabled ? "turn off" : "turn on" + to_chat(user, "Alt-click to [turn_on_or_off] the machine.") + +/obj/machinery/stasis/proc/play_power_sound() + var/_running = stasis_running() + if(last_stasis_sound != _running) + var/sound_freq = rand(5120, 8800) + if(_running) + playsound(src, 'sound/machines/synth_yes.ogg', 50, TRUE, frequency = sound_freq) + else + playsound(src, 'sound/machines/synth_no.ogg', 50, TRUE, frequency = sound_freq) + last_stasis_sound = _running + +/obj/machinery/stasis/AltClick(mob/user) + if(world.time >= stasis_can_toggle && user.canUseTopic(src, !issilicon(user))) + stasis_enabled = !stasis_enabled + stasis_can_toggle = world.time + STASIS_TOGGLE_COOLDOWN + playsound(src, 'sound/machines/click.ogg', 60, TRUE) + play_power_sound() + update_icon() + +/obj/machinery/stasis/Exited(atom/movable/AM, atom/newloc) + if(AM == occupant) + var/mob/living/L = AM + if(IS_IN_STASIS(L)) + thaw_them(L) + . = ..() + +/obj/machinery/stasis/proc/stasis_running() + return stasis_enabled && is_operational() + +/obj/machinery/stasis/update_icon() + . = ..() + var/_running = stasis_running() + var/list/overlays_to_remove = managed_vis_overlays + + if(mattress_state) + if(!mattress_on || !managed_vis_overlays) + mattress_on = SSvis_overlays.add_vis_overlay(src, icon, mattress_state, layer, plane, dir, alpha = 0, unique = TRUE) + + if(mattress_on.alpha ? !_running : _running) //check the inverse of _running compared to truthy alpha, to see if they differ + var/new_alpha = _running ? 255 : 0 + var/easing_direction = _running ? EASE_OUT : EASE_IN + animate(mattress_on, alpha = new_alpha, time = 50, easing = CUBIC_EASING|easing_direction) + + overlays_to_remove = managed_vis_overlays - mattress_on + + SSvis_overlays.remove_vis_overlay(src, overlays_to_remove) + + if(occupant) + SSvis_overlays.add_vis_overlay(src, 'icons/obj/machines/stasis.dmi', "tubes", LYING_MOB_LAYER + 0.1, plane, dir) //using vis_overlays instead of normal overlays for mouse_opacity here + + if(stat & BROKEN) + icon_state = "stasis_broken" + return + if(panel_open || stat & MAINT) + icon_state = "stasis_maintenance" + return + icon_state = "stasis" + +/obj/machinery/stasis/obj_break(damage_flag) + . = ..() + play_power_sound() + update_icon() + +/obj/machinery/stasis/power_change() + . = ..() + play_power_sound() + update_icon() + +/obj/machinery/stasis/proc/chill_out(mob/living/target) + if(target != occupant) + return + var/freq = rand(24750, 26550) + playsound(src, 'sound/effects/spray.ogg', 5, TRUE, 2, frequency = freq) + target.apply_status_effect(STATUS_EFFECT_STASIS, null, TRUE) + target.ExtinguishMob() + use_power = ACTIVE_POWER_USE + +/obj/machinery/stasis/proc/thaw_them(mob/living/target) + target.remove_status_effect(STATUS_EFFECT_STASIS) + if(target == occupant) + use_power = IDLE_POWER_USE + +/obj/machinery/stasis/post_buckle_mob(mob/living/L) + if(!can_be_occupant(L)) + return + occupant = L + if(stasis_running() && check_nap_violations()) + chill_out(L) + update_icon() + +/obj/machinery/stasis/post_unbuckle_mob(mob/living/L) + thaw_them(L) + if(L == occupant) + occupant = null + update_icon() + +/obj/machinery/stasis/process() + if( !( occupant && isliving(occupant) && check_nap_violations() ) ) + use_power = IDLE_POWER_USE + return + var/mob/living/L_occupant = occupant + if(stasis_running()) + if(!IS_IN_STASIS(L_occupant)) + chill_out(L_occupant) + else if(IS_IN_STASIS(L_occupant)) + thaw_them(L_occupant) + +/obj/machinery/stasis/screwdriver_act(mob/living/user, obj/item/I) + . = default_deconstruction_screwdriver(user, "stasis_maintenance", "stasis", I) + update_icon() + +/obj/machinery/stasis/crowbar_act(mob/living/user, obj/item/I) + return default_deconstruction_crowbar(I) + +/obj/machinery/stasis/nap_violation(mob/violator) + unbuckle_mob(violator, TRUE) + +/obj/machinery/stasis/attack_robot(mob/user) + if(Adjacent(user) && occupant) + unbuckle_mob(occupant) + else + ..() +#undef STASIS_TOGGLE_COOLDOWN diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index 50569a17979..5e4e2bdc59e 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -11,6 +11,7 @@ density = FALSE layer = BELOW_MOB_LAYER //so people can't hide it and it's REALLY OBVIOUS resistance_flags = FIRE_PROOF | ACID_PROOF + speed_process = TRUE interaction_flags_machine = INTERACT_MACHINE_WIRES_IF_OPEN | INTERACT_MACHINE_OFFLINE @@ -22,7 +23,6 @@ var/open_panel = FALSE //are the wires exposed? var/active = FALSE //is the bomb counting down? - var/defused = FALSE //is the bomb capable of exploding? var/obj/item/bombcore/payload = /obj/item/bombcore var/beepsound = 'sound/items/timer.ogg' var/delayedbig = FALSE //delay wire pulsed? @@ -34,7 +34,7 @@ var/explode_now = FALSE /obj/machinery/syndicatebomb/proc/try_detonate(ignore_active = FALSE) - . = (payload in src) && (active || ignore_active) && !defused + . = (payload in src) && (active || ignore_active) if(.) payload.detonate() @@ -52,6 +52,8 @@ detonation_timer = null next_beep = null countdown.stop() + if(payload in src) + payload.defuse() return if(!isnull(next_beep) && (next_beep <= world.time)) @@ -72,17 +74,11 @@ playsound(loc, beepsound, volume, 0) next_beep = world.time + 10 - if(active && !defused && ((detonation_timer <= world.time) || explode_now)) + if(active && ((detonation_timer <= world.time) || explode_now)) active = FALSE timer_set = initial(timer_set) update_icon() try_detonate(TRUE) - //Counter terrorists win - else if(!active || defused) - if(defused && payload in src) - payload.defuse() - countdown.stop() - STOP_PROCESSING(SSfastprocess, src) /obj/machinery/syndicatebomb/Initialize() . = ..() @@ -91,6 +87,7 @@ payload = new payload(src) update_icon() countdown = new(src) + STOP_PROCESSING(SSfastprocess, src) /obj/machinery/syndicatebomb/Destroy() QDEL_NULL(wires) @@ -173,7 +170,7 @@ else var/old_integ = obj_integrity . = ..() - if((old_integ > obj_integrity) && active && !defused && (payload in src)) + if((old_integ > obj_integrity) && active && (payload in src)) to_chat(user, "That seems like a really bad idea...") /obj/machinery/syndicatebomb/interact(mob/user) @@ -199,11 +196,7 @@ timer_set = CLAMP(new_timer, minimum_timer, maximum_timer) loc.visible_message("[icon2html(src, viewers(src))] timer set for [timer_set] seconds.") if(alert(user,"Would you like to start the countdown now?",,"Yes","No") == "Yes" && in_range(src, user) && isliving(user)) - if(defused || active) - if(defused) - visible_message("[icon2html(src, viewers(src))] Device error: User intervention required.") - return - else + if(!active) visible_message("[icon2html(src, viewers(loc))] [timer_set] seconds until detonation, please clear the area.") activate() update_icon() @@ -287,8 +280,7 @@ qdel(src) /obj/item/bombcore/proc/defuse() -//Note: Because of how var/defused is used you shouldn't override this UNLESS you intend to set the var to 0 or -// otherwise remove the core/reset the wires before the end of defuse(). It will repeatedly be called otherwise. +//Note: the machine's defusal is mostly done from the wires code, this is here if you want the core itself to do anything. ///Bomb Core Subtypes/// @@ -304,12 +296,12 @@ if(holder.wires) holder.wires.repair() holder.wires.shuffle_wires() - holder.defused = 0 - holder.open_panel = 0 holder.delayedbig = FALSE holder.delayedlittle = FALSE + holder.explode_now = FALSE holder.update_icon() holder.updateDialog() + STOP_PROCESSING(SSfastprocess, holder) /obj/item/bombcore/training/detonate() var/obj/machinery/syndicatebomb/holder = loc diff --git a/code/game/machinery/telecomms/computers/message.dm b/code/game/machinery/telecomms/computers/message.dm index b1daa1eb85b..2070a69e386 100644 --- a/code/game/machinery/telecomms/computers/message.dm +++ b/code/game/machinery/telecomms/computers/message.dm @@ -5,6 +5,12 @@ #define LINKED_SERVER_NONRESPONSIVE (!linkedServer || (linkedServer.stat & (NOPOWER|BROKEN))) +#define MSG_MON_SCREEN_MAIN 0 +#define MSG_MON_SCREEN_LOGS 1 +#define MSG_MON_SCREEN_HACKED 2 +#define MSG_MON_SCREEN_CUSTOM_MSG 3 +#define MSG_MON_SCREEN_REQUEST_LOGS 4 + // The monitor itself. /obj/machinery/computer/message_monitor name = "message monitor console" @@ -21,7 +27,7 @@ var/defaultmsg = "Welcome. Please select an option." 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/screen = MSG_MON_SCREEN_MAIN // 0 = Main menu, 1 = Message Logs, 2 = Hacked screen, 3 = Custom Message var/hacking = FALSE // Is it being hacked into by the AI/Cyborg var/message = "System bootup complete. Please select an option." // The message that shows on the main menu. var/auth = FALSE // Are they authenticated? @@ -46,7 +52,7 @@ return if(!isnull(linkedServer)) obj_flags |= EMAGGED - screen = 2 + screen = MSG_MON_SCREEN_HACKED spark_system.set_up(5, 0, src) spark_system.start() var/obj/item/paper/monitorkey/MK = new(loc, linkedServer) @@ -86,21 +92,21 @@ if(auth) dat += "

\[Authenticated\] /" - dat += " Server Power: [linkedServer && linkedServer.toggled ? "\[On\]":"\[Off\]"]

" + dat += " Server Power: [linkedServer && linkedServer.on ? "\[On\]":"\[Off\]"]" else dat += "

\[Unauthenticated\] /" - dat += " Server Power: [linkedServer && linkedServer.toggled ? "\[On\]":"\[Off\]"]

" + dat += " Server Power: [linkedServer && linkedServer.on ? "\[On\]":"\[Off\]"]" if(hacking || (obj_flags & EMAGGED)) - screen = 2 + screen = MSG_MON_SCREEN_HACKED else if(!auth || LINKED_SERVER_NONRESPONSIVE) if(LINKED_SERVER_NONRESPONSIVE) message = noserver - screen = 0 + screen = MSG_MON_SCREEN_MAIN switch(screen) //Main menu - if(0) + if(MSG_MON_SCREEN_MAIN) // = TAB var/i = 0 dat += "
[++i]. Link To A Server
" @@ -131,7 +137,7 @@ dat += "

Reg, #514 forbids sending messages to a Head of Staff containing Erotic Rendering Properties." //Message Logs - if(1) + if(MSG_MON_SCREEN_LOGS) var/index = 0 dat += "
Back - Refresh

" dat += "" @@ -144,7 +150,7 @@ dat += "" dat += "
XSenderRecipientMessage
X
[pda.sender][pda.recipient][pda.message][pda.picture ? " (Photo)":""]
" //Hacking screen. - if(2) + if(MSG_MON_SCREEN_HACKED) if(isAI(user) || iscyborg(user)) 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." @@ -187,7 +193,7 @@ 001101001011011010110010100101110"} //Fake messages - if(3) + if(MSG_MON_SCREEN_CUSTOM_MSG) dat += "
Back - Reset

" dat += {" @@ -205,7 +211,7 @@ dat += "

Send" //Request Console Logs - if(4) + if(MSG_MON_SCREEN_REQUEST_LOGS) var/index = 0 /* data_rc_msg @@ -243,7 +249,7 @@ var/currentKey = linkedServer.decryptkey to_chat(user, "Brute-force completed! The key is '[currentKey]'.") hacking = FALSE - screen = 0 // Return the screen back to normal + screen = MSG_MON_SCREEN_MAIN // Return the screen back to normal /obj/machinery/computer/message_monitor/proc/UnmagConsole() obj_flags &= ~EMAGGED @@ -265,7 +271,7 @@ message = noserver else if(auth) auth = FALSE - screen = 0 + screen = MSG_MON_SCREEN_MAIN else var/dkey = trim(input(usr, "Please enter the decryption key.") as text|null) if(dkey && dkey != "") @@ -300,7 +306,7 @@ if(LINKED_SERVER_NONRESPONSIVE) message = noserver else if(auth) - screen = 1 + screen = MSG_MON_SCREEN_LOGS //Clears the logs - KEY REQUIRED if (href_list["clear_logs"]) @@ -340,7 +346,7 @@ var/mob/living/silicon/S = usr if(istype(S) && S.hack_software) hacking = TRUE - screen = 2 + screen = MSG_MON_SCREEN_HACKED //Time it takes to bruteforce is dependant on the password length. spawn(100*length(linkedServer.decryptkey)) if(src && linkedServer && usr) @@ -348,7 +354,7 @@ //Delete the log. if (href_list["delete_logs"]) //Are they on the view logs screen? - if(screen == 1) + if(screen == MSG_MON_SCREEN_LOGS) if(LINKED_SERVER_NONRESPONSIVE) message = noserver else //if(istype(href_list["delete_logs"], /datum/data_pda_msg)) @@ -357,7 +363,7 @@ //Delete the request console log. if (href_list["delete_requests"]) //Are they on the view logs screen? - if(screen == 4) + if(screen == MSG_MON_SCREEN_REQUEST_LOGS) if(LINKED_SERVER_NONRESPONSIVE) message = noserver else //if(istype(href_list["delete_logs"], /datum/data_pda_msg)) @@ -368,12 +374,12 @@ if(LINKED_SERVER_NONRESPONSIVE) message = noserver else if(auth) - screen = 3 + screen = MSG_MON_SCREEN_CUSTOM_MSG //Fake messaging selection - KEY REQUIRED if (href_list["select"]) if(LINKED_SERVER_NONRESPONSIVE) message = noserver - screen = 0 + screen = MSG_MON_SCREEN_MAIN else switch(href_list["select"]) @@ -415,7 +421,7 @@ message = "NOTICE: No message entered!" return attack_hand(usr) - var/datum/signal/subspace/pda/signal = new(src, list( + var/datum/signal/subspace/messaging/pda/signal = new(src, list( "name" = "[customsender]", "job" = "[customjob]", "message" = custommessage, @@ -431,13 +437,19 @@ if(LINKED_SERVER_NONRESPONSIVE) message = noserver else if(auth) - screen = 4 + screen = MSG_MON_SCREEN_REQUEST_LOGS if (href_list["back"]) - screen = 0 + screen = MSG_MON_SCREEN_MAIN return attack_hand(usr) +#undef MSG_MON_SCREEN_MAIN +#undef MSG_MON_SCREEN_LOGS +#undef MSG_MON_SCREEN_HACKED +#undef MSG_MON_SCREEN_CUSTOM_MSG +#undef MSG_MON_SCREEN_REQUEST_LOGS + #undef LINKED_SERVER_NONRESPONSIVE /obj/item/paper/monitorkey @@ -457,7 +469,7 @@ add_overlay("paper_words") /obj/item/paper/monitorkey/LateInitialize() - for (var/obj/machinery/telecomms/message_server/server in GLOB.telecomms_list) + for (var/obj/machinery/telecomms/message_server/preset/server in GLOB.telecomms_list) if (server.decryptkey) print(server) break diff --git a/code/game/machinery/telecomms/machines/bus.dm b/code/game/machinery/telecomms/machines/bus.dm index 8638d22450d..9b73692b626 100644 --- a/code/game/machinery/telecomms/machines/bus.dm +++ b/code/game/machinery/telecomms/machines/bus.dm @@ -69,7 +69,7 @@ id = "Bus 4" network = "tcommsat" freq_listening = list(FREQ_ENGINEERING) - autolinkers = list("processor4", "engineering", "common") + autolinkers = list("processor4", "engineering", "common", "messaging") /obj/machinery/telecomms/bus/preset_four/Initialize() . = ..() @@ -78,5 +78,5 @@ /obj/machinery/telecomms/bus/preset_one/birdstation name = "Bus" - autolinkers = list("processor1", "common") + autolinkers = list("processor1", "common", "messaging") freq_listening = list() diff --git a/code/game/machinery/telecomms/machines/hub.dm b/code/game/machinery/telecomms/machines/hub.dm index b23c4436786..dedf7c7f3a7 100644 --- a/code/game/machinery/telecomms/machines/hub.dm +++ b/code/game/machinery/telecomms/machines/hub.dm @@ -39,5 +39,5 @@ network = "tcommsat" autolinkers = list("hub", "relay", "s_relay", "m_relay", "r_relay", "h_relay", "science", "medical", "supply", "service", "common", "command", "engineering", "security", - "receiverA", "receiverB", "broadcasterA", "broadcasterB") + "receiverA", "receiverB", "broadcasterA", "broadcasterB", "autorelay", "messaging") diff --git a/code/game/machinery/telecomms/machines/message_server.dm b/code/game/machinery/telecomms/machines/message_server.dm index cc390e1fc04..9b6d2430f1c 100644 --- a/code/game/machinery/telecomms/machines/message_server.dm +++ b/code/game/machinery/telecomms/machines/message_server.dm @@ -17,30 +17,35 @@ armor = list("melee" = 25, "bullet" = 10, "laser" = 10, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 70) +#define MESSAGE_SERVER_FUNCTIONING_MESSAGE "This is an automated message. The messaging system is functioning correctly." + // The message server itself. /obj/machinery/telecomms/message_server - icon = 'icons/obj/machines/research.dmi' - icon_state = "server" + icon_state = "message_server" name = "Messaging Server" - desc = "A machine that attempts to gather the secret knowledge of the universe." + desc = "A machine that processes and routes PDA and request console messages." density = TRUE use_power = IDLE_POWER_USE idle_power_usage = 10 active_power_usage = 100 - - id = "Messaging Server" - network = "tcommsat" - autolinkers = list("common") + circuit = /obj/item/circuitboard/machine/telecomms/message_server var/list/datum/data_pda_msg/pda_msgs = list() var/list/datum/data_rc_msg/rc_msgs = list() - var/decryptkey + var/decryptkey = "password" + var/calibrating = 15 MINUTES //Init reads this and adds world.time, then becomes 0 when that time has passed and the machine works -/obj/machinery/telecomms/message_server/Initialize() +/obj/machinery/telecomms/message_server/Initialize(mapload) . = ..() if (!decryptkey) decryptkey = GenerateKey() - pda_msgs += new /datum/data_pda_msg("System Administrator", "system", "This is an automated message. The messaging system is functioning correctly.") + + if (calibrating) + calibrating += world.time + say("Calibrating... Estimated wait time: [rand(3, 9)] minutes.") + pda_msgs += new /datum/data_pda_msg("System Administrator", "system", "This is an automated message. System calibration started at [station_time_timestamp()]") + else + pda_msgs += new /datum/data_pda_msg("System Administrator", "system", MESSAGE_SERVER_FUNCTIONING_MESSAGE) /obj/machinery/telecomms/message_server/Destroy() for(var/obj/machinery/computer/message_monitor/monitor in GLOB.telecomms_list) @@ -48,6 +53,11 @@ monitor.linkedServer = null . = ..() +/obj/machinery/telecomms/message_server/examine(mob/user) + ..() + if(calibrating) + to_chat(user, "It's still calibrating.") + /obj/machinery/telecomms/message_server/proc/GenerateKey() var/newKey newKey += pick("the", "if", "of", "as", "in", "a", "you", "from", "to", "an", "too", "little", "snow", "dead", "drunk", "rosebud", "duck", "al", "le") @@ -56,68 +66,86 @@ return newKey /obj/machinery/telecomms/message_server/process() - if(toggled && (stat & (BROKEN|NOPOWER))) - toggled = FALSE - update_icon() + . = ..() + if(calibrating && calibrating <= world.time) + calibrating = 0 + pda_msgs += new /datum/data_pda_msg("System Administrator", "system", MESSAGE_SERVER_FUNCTIONING_MESSAGE) -/obj/machinery/telecomms/message_server/receive_information(datum/signal/subspace/pda/signal, obj/machinery/telecomms/machine_from) - // can't log non-PDA signals - if(!istype(signal) || !signal.data["message"] || !toggled) +/obj/machinery/telecomms/message_server/receive_information(datum/signal/subspace/messaging/signal, obj/machinery/telecomms/machine_from) + // can't log non-message signals + if(!istype(signal) || !signal.data["message"] || !on || calibrating) return // log the signal - var/datum/data_pda_msg/M = new(signal.format_target(), "[signal.data["name"]] ([signal.data["job"]])", signal.data["message"], signal.data["photo"]) - pda_msgs += M - signal.logged = M + if(istype(signal, /datum/signal/subspace/messaging/pda)) + var/datum/signal/subspace/messaging/pda/PDAsignal = signal + var/datum/data_pda_msg/M = new(PDAsignal.format_target(), "[PDAsignal.data["name"]] ([PDAsignal.data["job"]])", PDAsignal.data["message"], PDAsignal.data["photo"]) + pda_msgs += M + signal.logged = M + else if(istype(signal, /datum/signal/subspace/messaging/rc)) + var/datum/data_rc_msg/M = new(signal.data["rec_dpt"], signal.data["send_dpt"], signal.data["message"], signal.data["stamped"], signal.data["verified"], signal.data["priority"]) + signal.logged = M + if(signal.data["send_dpt"]) // don't log messages not from a department but allow them to work + rc_msgs += M + signal.data["reject"] = FALSE // pass it along to either the hub or the broadcaster if(!relay_information(signal, /obj/machinery/telecomms/hub)) relay_information(signal, /obj/machinery/telecomms/broadcaster) /obj/machinery/telecomms/message_server/update_icon() - if((stat & (BROKEN|NOPOWER))) - icon_state = "server-nopower" - else if (!toggled) - icon_state = "server-off" - else - icon_state = "server-on" + ..() + cut_overlays() + if(calibrating) + add_overlay("message_server_calibrate") -// PDA signal datum -/datum/signal/subspace/pda +// Root messaging signal datum +/datum/signal/subspace/messaging frequency = FREQ_COMMON server_type = /obj/machinery/telecomms/message_server - var/datum/data_pda_msg/logged + var/datum/logged -/datum/signal/subspace/pda/New(source, data) - src.source = source - src.data = data +/datum/signal/subspace/messaging/New(init_source, init_data) + source = init_source + data = init_data var/turf/T = get_turf(source) levels = list(T.z) + if(!("reject" in data)) + data["reject"] = TRUE -/datum/signal/subspace/pda/copy() - var/datum/signal/subspace/pda/copy = new(source, data.Copy()) +/datum/signal/subspace/messaging/copy() + var/datum/signal/subspace/messaging/copy = new type(source, data.Copy()) copy.original = src copy.levels = levels return copy -/datum/signal/subspace/pda/proc/format_target() +// PDA signal datum +/datum/signal/subspace/messaging/pda/proc/format_target() if (length(data["targets"]) > 1) return "Everyone" return data["targets"][1] -/datum/signal/subspace/pda/proc/format_message() +/datum/signal/subspace/messaging/pda/proc/format_message() if (logged && data["photo"]) return "\"[data["message"]]\" (Photo)" return "\"[data["message"]]\"" -/datum/signal/subspace/pda/broadcast() +/datum/signal/subspace/messaging/pda/broadcast() if (!logged) // Can only go through if a message server logs it return for (var/obj/item/pda/P in GLOB.PDAs) if ("[P.owner] ([P.ownjob])" in data["targets"]) P.receive_message(src) +// Request Console signal datum +/datum/signal/subspace/messaging/rc/broadcast() + if (!logged) // Like /pda, only if logged + return + var/rec_dpt = ckey(data["rec_dpt"]) + for (var/obj/machinery/requests_console/Console in GLOB.allConsoles) + if(ckey(Console.department) == rec_dpt || (data["ore_update"] && Console.receive_ore_updates)) + Console.createmessage(data["sender"], data["send_dpt"], data["message"], data["verified"], data["stamped"], data["priority"], data["notify_freq"]) // Log datums stored by the message server. /datum/data_pda_msg @@ -168,12 +196,20 @@ id_auth = param_id_auth if(param_priority) switch(param_priority) - if(1) + if(REQ_NORMAL_MESSAGE_PRIORITY) priority = "Normal" - if(2) + if(REQ_HIGH_MESSAGE_PRIORITY) priority = "High" - if(3) + if(REQ_EXTREME_MESSAGE_PRIORITY) priority = "Extreme" else priority = "Undetermined" +#undef MESSAGE_SERVER_FUNCTIONING_MESSAGE + +/obj/machinery/telecomms/message_server/preset + id = "Messaging Server" + network = "tcommsat" + autolinkers = list("messaging") + decryptkey = null //random + calibrating = 0 diff --git a/code/game/machinery/telecomms/machines/relay.dm b/code/game/machinery/telecomms/machines/relay.dm index 9e6716278bf..65f70a4f236 100644 --- a/code/game/machinery/telecomms/machines/relay.dm +++ b/code/game/machinery/telecomms/machines/relay.dm @@ -49,6 +49,11 @@ /obj/machinery/telecomms/relay/preset network = "tcommsat" +/obj/machinery/telecomms/relay/Initialize(mapload) + . = ..() + if(autolinkers.len) //We want lateloaded presets to autolink (lateloaded aways/ruins/shuttles) + return INITIALIZE_HINT_LATELOAD + /obj/machinery/telecomms/relay/preset/station id = "Station Relay" autolinkers = list("s_relay") @@ -74,3 +79,8 @@ icon = 'icons/obj/clockwork_objects.dmi' hide = TRUE autolinkers = list("h_relay") + +//Generic preset relay +/obj/machinery/telecomms/relay/preset/auto + hide = TRUE + autolinkers = list("autorelay") diff --git a/code/game/machinery/telecomms/telecomunications.dm b/code/game/machinery/telecomms/telecomunications.dm index c2fb13c34c2..2395dcc9562 100644 --- a/code/game/machinery/telecomms/telecomunications.dm +++ b/code/game/machinery/telecomms/telecomunications.dm @@ -107,6 +107,8 @@ GLOBAL_LIST_EMPTY(telecomms_list) for(var/x in autolinkers) if(x in T.autolinkers) links |= T + T.links |= src + /obj/machinery/telecomms/update_icon() if(on) @@ -143,9 +145,10 @@ GLOBAL_LIST_EMPTY(telecomms_list) . = ..() if(. & EMP_PROTECT_SELF) return - if(prob(100/severity)) - if(!(stat & EMPED)) - stat |= EMPED - var/duration = (300 * 10)/severity - spawn(rand(duration - 20, duration + 20)) // Takes a long time for the machines to reboot. - stat &= ~EMPED + if(prob(100/severity) && !(stat & EMPED)) + stat |= EMPED + var/duration = (300 * 10)/severity + addtimer(CALLBACK(src, .proc/de_emp), rand(duration - 20, duration + 20)) + +/obj/machinery/telecomms/proc/de_emp() + stat &= ~EMPED diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index a44a643e967..ebfc2f506f9 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -19,7 +19,7 @@ to_chat(user, "Alt-click it to start a wash cycle.") /obj/machinery/washing_machine/AltClick(mob/user) - if(!user.canUseTopic(src)) + if(!user.canUseTopic(src, !issilicon(user))) return if(busy) diff --git a/code/game/mecha/combat/combat.dm b/code/game/mecha/combat/combat.dm index ef0db8da73b..b5e5be91e6a 100644 --- a/code/game/mecha/combat/combat.dm +++ b/code/game/mecha/combat/combat.dm @@ -4,3 +4,5 @@ internal_damage_threshold = 50 armor = list("melee" = 30, "bullet" = 30, "laser" = 15, "energy" = 20, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) mouse_pointer = 'icons/mecha/mecha_mouse.dmi' + destruction_sleep_duration = 40 + exit_delay = 40 \ No newline at end of file diff --git a/code/game/mecha/combat/durand.dm b/code/game/mecha/combat/durand.dm index 7896d7aa358..0ff90cdba32 100644 --- a/code/game/mecha/combat/durand.dm +++ b/code/game/mecha/combat/durand.dm @@ -6,7 +6,7 @@ dir_in = 1 //Facing North. max_integrity = 400 deflect_chance = 20 - armor = list("melee" = 40, "bullet" = 35, "laser" = 15, "energy" = 10, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) + armor = list("melee" = 40, "bullet" = 35, "laser" = 15, "energy" = 10, "bomb" = 20, "bio" = 0, "rad" = 50, "fire" = 100, "acid" = 100) max_temperature = 30000 infra_luminosity = 8 force = 40 diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index 9c7ca2bae52..601bcce7fef 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -20,13 +20,14 @@ icon_state = "darkgygax" max_integrity = 300 deflect_chance = 15 - armor = list("melee" = 40, "bullet" = 40, "laser" = 50, "energy" = 35, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) + armor = list("melee" = 40, "bullet" = 40, "laser" = 50, "energy" = 35, "bomb" = 20, "bio" = 0, "rad" =20, "fire" = 100, "acid" = 100) max_temperature = 35000 leg_overload_coeff = 100 operation_req_access = list(ACCESS_SYNDICATE) internals_req_access = list(ACCESS_SYNDICATE) wreckage = /obj/structure/mecha_wreckage/gygax/dark max_equip = 4 + destruction_sleep_duration = 20 /obj/mecha/combat/gygax/dark/loaded/Initialize() . = ..() diff --git a/code/game/mecha/combat/marauder.dm b/code/game/mecha/combat/marauder.dm index 8644a855d44..a39b4987532 100644 --- a/code/game/mecha/combat/marauder.dm +++ b/code/game/mecha/combat/marauder.dm @@ -5,7 +5,7 @@ step_in = 5 max_integrity = 500 deflect_chance = 25 - armor = list("melee" = 50, "bullet" = 55, "laser" = 40, "energy" = 30, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) + armor = list("melee" = 50, "bullet" = 55, "laser" = 40, "energy" = 30, "bomb" = 30, "bio" = 0, "rad" = 60, "fire" = 100, "acid" = 100) max_temperature = 60000 resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF infra_luminosity = 3 @@ -56,8 +56,7 @@ /obj/mecha/combat/marauder/seraph/Initialize() . = ..() - var/obj/item/mecha_parts/mecha_equipment/ME - ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot(src) + var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/pulse(src) ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack(src) ME.attach(src) @@ -76,6 +75,7 @@ internals_req_access = list(ACCESS_SYNDICATE) wreckage = /obj/structure/mecha_wreckage/mauler max_equip = 5 + destruction_sleep_duration = 20 /obj/mecha/combat/marauder/mauler/loaded/Initialize() . = ..() diff --git a/code/game/mecha/combat/phazon.dm b/code/game/mecha/combat/phazon.dm index f5f369c2ad7..4f37ac7f1b9 100644 --- a/code/game/mecha/combat/phazon.dm +++ b/code/game/mecha/combat/phazon.dm @@ -7,7 +7,7 @@ step_energy_drain = 3 max_integrity = 200 deflect_chance = 30 - armor = list("melee" = 30, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) + armor = list("melee" = 30, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 30, "bio" = 0, "rad" = 50, "fire" = 100, "acid" = 100) max_temperature = 25000 infra_luminosity = 3 wreckage = /obj/structure/mecha_wreckage/phazon diff --git a/code/game/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm index 31d9fdb813e..cce75b3b137 100644 --- a/code/game/mecha/equipment/mecha_equipment.dm +++ b/code/game/mecha/equipment/mecha_equipment.dm @@ -51,9 +51,6 @@ to_chat(user, "You are unable to attach [src] to [M]!") return FALSE -/obj/item/mecha_parts/mecha_equipment/proc/critfail() - log_message("Critical failure", LOG_MECHA, color="red") - /obj/item/mecha_parts/mecha_equipment/proc/get_equip_info() if(!chassis) return @@ -81,10 +78,10 @@ return 0 if(!equip_ready) return 0 - if(crit_fail) - return 0 if(energy_drain && !chassis.has_charge(energy_drain)) return 0 + if(chassis.is_currently_ejecting) + return 0 return 1 /obj/item/mecha_parts/mecha_equipment/proc/action(atom/target) diff --git a/code/game/mecha/equipment/tools/medical_tools.dm b/code/game/mecha/equipment/tools/medical_tools.dm index 15cf8a6ba49..21db291f39e 100644 --- a/code/game/mecha/equipment/tools/medical_tools.dm +++ b/code/game/mecha/equipment/tools/medical_tools.dm @@ -108,15 +108,17 @@ /obj/item/mecha_parts/mecha_equipment/medical/sleeper/Topic(href,href_list) ..() - var/datum/topic_input/afilter = new /datum/topic_input(href,href_list) - if(afilter.get("eject")) + if(href_list["eject"]) go_out() - if(afilter.get("view_stats")) + if(href_list["view_stats"]) chassis.occupant << browse(get_patient_stats(),"window=msleeper") onclose(chassis.occupant, "msleeper") return - if(afilter.get("inject")) - inject_reagent(afilter.getType("inject", /datum/reagent),afilter.getObj("source")) + if(href_list["inject"]) + var/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/SG = locate() in chassis + var/datum/reagent/R = locate(href_list["inject"]) in SG.reagents.reagent_list + if (istype(R)) + inject_reagent(R, SG) return /obj/item/mecha_parts/mecha_equipment/medical/sleeper/proc/get_patient_stats() @@ -159,15 +161,15 @@ t1 = "*dead*" else t1 = "Unknown" - return {"Health: [patient.stat > 1 ? "[t1]" : "[patient.health]% ([t1])"]
- Core Temperature: [patient.bodytemperature-T0C]°C ([patient.bodytemperature*1.8-459.67]°F)
- Brute Damage: [patient.getBruteLoss()]%
- Respiratory Damage: [patient.getOxyLoss()]%
- Toxin Content: [patient.getToxLoss()]%
- Burn Severity: [patient.getFireLoss()]%
- [patient.getCloneLoss() ? "Subject appears to have cellular damage." : ""]
- [patient.getBrainLoss() ? "Significant brain damage detected." : ""]
- [length(patient.get_traumas()) ? "Brain Traumas detected." : ""]
+ return {"Health: [patient.stat > 1 ? "[t1]" : "[patient.health]% ([t1])"]
+ Core Temperature: [patient.bodytemperature-T0C]°C ([patient.bodytemperature*1.8-459.67]°F)
+ Brute Damage: [patient.getBruteLoss()]%
+ Respiratory Damage: [patient.getOxyLoss()]%
+ Toxin Content: [patient.getToxLoss()]%
+ Burn Severity: [patient.getFireLoss()]%
+ [patient.getCloneLoss() ? "Subject appears to have cellular damage." : ""]
+ [patient.getBrainLoss() ? "Significant brain damage detected." : ""]
+ [length(patient.get_traumas()) ? "Brain Traumas detected." : ""]
"} /obj/item/mecha_parts/mecha_equipment/medical/sleeper/proc/get_patient_reagents() @@ -183,7 +185,7 @@ if(SG && SG.reagents && islist(SG.reagents.reagent_list)) for(var/datum/reagent/R in SG.reagents.reagent_list) if(R.volume > 0) - output += "Inject [R.name]
" + output += "Inject [R.name]
" return output @@ -272,11 +274,6 @@ STOP_PROCESSING(SSobj, src) return ..() -/obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/critfail() - ..() - if(reagents) - DISABLE_BITFIELD(reagents.flags, NO_REACT) - /obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/can_attach(obj/mecha/medical/M) if(..()) if(istype(M)) @@ -357,19 +354,18 @@ /obj/item/mecha_parts/mecha_equipment/medical/syringe_gun/Topic(href,href_list) ..() - var/datum/topic_input/afilter = new (href,href_list) - if(afilter.get("toggle_mode")) + if (href_list["toggle_mode"]) mode = !mode update_equip_info() return - if(afilter.get("select_reagents")) + if (href_list["select_reagents"]) processed_reagents.len = 0 var/m = 0 var/message for(var/i=1 to known_reagents.len) if(m>=synth_speed) break - var/reagent = afilter.get("reagent_[i]") + var/reagent = href_list["reagent_[i]"] if(reagent && (reagent in known_reagents)) message = "[m ? ", " : null][known_reagents[reagent]]" processed_reagents += reagent @@ -381,14 +377,14 @@ occupant_message("Reagent processing started.") log_message("Reagent processing started.", LOG_MECHA) return - if(afilter.get("show_reagents")) + if (href_list["show_reagents"]) chassis.occupant << browse(get_reagents_page(),"window=msyringegun") - if(afilter.get("purge_reagent")) - var/reagent = afilter.get("purge_reagent") + if (href_list["purge_reagent"]) + var/reagent = href_list["purge_reagent"] if(reagent) reagents.del_reagent(reagent) return - if(afilter.get("purge_all")) + if (href_list["purge_all"]) reagents.clear_reagents() return return diff --git a/code/game/mecha/equipment/tools/other_tools.dm b/code/game/mecha/equipment/tools/other_tools.dm index 0e466f225d1..719c5ef474f 100644 --- a/code/game/mecha/equipment/tools/other_tools.dm +++ b/code/game/mecha/equipment/tools/other_tools.dm @@ -424,25 +424,6 @@ /obj/item/mecha_parts/mecha_equipment/generator/attackby(weapon,mob/user, params) load_fuel(weapon) -/obj/item/mecha_parts/mecha_equipment/generator/critfail() - ..() - var/turf/open/T = get_turf(src) - if(!istype(T)) - return - var/datum/gas_mixture/GM = new - GM.add_gas(/datum/gas/plasma) - if(prob(10)) - GM.gases[/datum/gas/plasma][MOLES] += 100 - GM.temperature = 1500+T0C //should be enough to start a fire - T.visible_message("[src] suddenly disgorges a cloud of heated plasma.") - qdel(src) - else - GM.gases[/datum/gas/plasma][MOLES] += 5 - GM.temperature = istype(T) ? T.air.return_temperature() : T20C - T.visible_message("[src] suddenly disgorges a cloud of plasma.") - T.assume_air(GM) - return - /obj/item/mecha_parts/mecha_equipment/generator/process() if(!chassis) STOP_PROCESSING(SSobj, src) @@ -482,9 +463,6 @@ /obj/item/mecha_parts/mecha_equipment/generator/nuclear/generator_init() fuel = new /obj/item/stack/sheet/mineral/uranium(src, 0) -/obj/item/mecha_parts/mecha_equipment/generator/nuclear/critfail() - return - /obj/item/mecha_parts/mecha_equipment/generator/nuclear/process() if(..()) radiation_pulse(get_turf(src), rad_per_cycle) diff --git a/code/game/mecha/equipment/tools/work_tools.dm b/code/game/mecha/equipment/tools/work_tools.dm index 3e0a1fe2e3d..dc74659289e 100644 --- a/code/game/mecha/equipment/tools/work_tools.dm +++ b/code/game/mecha/equipment/tools/work_tools.dm @@ -34,6 +34,14 @@ return if(isobj(target)) var/obj/O = target + if(istype(O, /obj/machinery/door/firedoor)) + var/obj/machinery/door/firedoor/D = O + D.try_to_crowbar(src,chassis.occupant) + return + if(istype(O, /obj/machinery/door/airlock/)) + var/obj/machinery/door/airlock/D = O + D.try_to_crowbar(src,chassis.occupant) + return if(!O.anchored) if(cargo_holder.cargo.len < cargo_holder.cargo_capacity) chassis.visible_message("[chassis] lifts [target] and starts to load it into cargo compartment.") @@ -461,3 +469,53 @@ //NC.mergeConnectedNetworksOnTurf() last_piece = NC return 1 + +//Dunno where else to put this so shrug +/obj/item/mecha_parts/mecha_equipment/ripleyupgrade + name = "Ripley MK-II Conversion Kit" + desc = "A pressurized canopy attachment kit for an Autonomous Power Loader Unit \"Ripley\" MK-I mecha, to convert it to the slower, but space-worthy MK-II design. This kit cannot be removed, once applied." + icon_state = "ripleyupgrade" + +/obj/item/mecha_parts/mecha_equipment/ripleyupgrade/can_attach(obj/mecha/working/ripley/M) + if(M.type != /obj/mecha/working/ripley) + to_chat(loc, "This conversion kit can only be applied to APLU MK-I models.") + return FALSE + if(M.cargo.len) + to_chat(loc, "[M]'s cargo hold must be empty before this conversion kit can be applied.") + return FALSE + if(!M.maint_access) //non-removable upgrade, so lets make sure the pilot or owner has their say. + to_chat(loc, "[M] must have maintenance protocols active in order to allow this conversion kit.") + return FALSE + if(M.occupant) //We're actualy making a new mech and swapping things over, it might get weird if players are involved + to_chat(loc, "[M] must be unoccupied before this conversion kit can be applied.") + return FALSE + return TRUE + +/obj/item/mecha_parts/mecha_equipment/ripleyupgrade/attach(obj/mecha/M) + var/obj/mecha/working/ripley/mkii/N = new /obj/mecha/working/ripley/mkii(get_turf(M),1) + if(!N) + return + QDEL_NULL(N.cell) + if (M.cell) + N.cell = M.cell + M.cell.forceMove(N) + M.cell = null + N.step_energy_drain = M.step_energy_drain //For the scanning module + N.armor = N.armor.setRating(energy = M.armor["energy"]) //for the capacitor + for(var/obj/item/mecha_parts/E in M.contents) + if(istype(E, /obj/item/mecha_parts/concealed_weapon_bay)) //why is the bay not just a variable change who did this + E.forceMove(N) + for(var/obj/item/mecha_parts/mecha_equipment/E in M.equipment) //Move the equipment over... + E.detach() + E.attach(N) + M.equipment -= E + N.dna_lock = M.dna_lock + N.maint_access = M.maint_access + N.strafe = M.strafe + N.obj_integrity = M.obj_integrity //This is not a repair tool + if (M.name != "\improper APLU MK-I \"Ripley\"") + N.name = M.name + M.wreckage = 0 + qdel(M) + playsound(get_turf(N),'sound/items/ratchet.ogg',50,1) + return \ No newline at end of file diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index 9d161c1cd34..62112be7683 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -83,6 +83,15 @@ fire_sound = 'sound/weapons/laser.ogg' harmful = TRUE +/obj/item/mecha_parts/mecha_equipment/weapon/energy/disabler + equip_cooldown = 8 + name = "\improper CH-DS \"Peacemaker\" disabler" + desc = "A weapon for combat exosuits. Shoots basic disablers." + icon_state = "mecha_disabler" + energy_drain = 30 + projectile = /obj/item/projectile/beam/disabler + fire_sound = 'sound/weapons/taser2.ogg' + /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy equip_cooldown = 15 name = "\improper CH-LC \"Solaris\" laser cannon" diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm index 6a829237742..5919df1a119 100644 --- a/code/game/mecha/mech_bay.dm +++ b/code/game/mecha/mech_bay.dm @@ -29,6 +29,11 @@ . = ..() recharging_turf = get_step(loc, dir) +/obj/machinery/mech_bay_recharge_port/Destroy() + if (recharge_console && recharge_console.recharge_port == src) + recharge_console.recharge_port = null + return ..() + /obj/machinery/mech_bay_recharge_port/RefreshParts() var/MC for(var/obj/item/stock_parts/capacitor/C in component_parts) @@ -103,7 +108,6 @@ data["recharge_port"]["mech"] = list("health" = recharge_port.recharging_mech.obj_integrity, "maxhealth" = recharge_port.recharging_mech.max_integrity, "cell" = null) if(recharge_port.recharging_mech.cell && !QDELETED(recharge_port.recharging_mech.cell)) data["recharge_port"]["mech"]["cell"] = list( - "critfail" = recharge_port.recharging_mech.cell.crit_fail, "charge" = recharge_port.recharging_mech.cell.charge, "maxcharge" = recharge_port.recharging_mech.cell.maxcharge ) @@ -136,3 +140,8 @@ /obj/machinery/computer/mech_bay_power_console/Initialize() . = ..() reconnect() + +/obj/machinery/computer/mech_bay_power_console/Destroy() + if (recharge_port && recharge_port.recharge_console == src) + recharge_port.recharge_console = null + return ..() diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index a97c0e3a683..3c99cd1a15d 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -312,9 +312,8 @@ /obj/machinery/mecha_part_fabricator/Topic(href, href_list) if(..()) return - var/datum/topic_input/afilter = new /datum/topic_input(href,href_list) if(href_list["part_set"]) - var/tpart_set = afilter.getStr("part_set") + var/tpart_set = href_list["part_set"] if(tpart_set) if(tpart_set=="clear") part_set = null @@ -322,7 +321,7 @@ part_set = tpart_set screen = "parts" if(href_list["part"]) - var/T = afilter.getStr("part") + var/T = href_list["part"] for(var/v in stored_research.researched_designs) var/datum/design/D = SSresearch.techweb_design_by_id(v) if(D.build_type & MECHFAB) @@ -333,7 +332,7 @@ add_to_queue(D) break if(href_list["add_to_queue"]) - var/T = afilter.getStr("add_to_queue") + var/T = href_list["add_to_queue"] for(var/v in stored_research.researched_designs) var/datum/design/D = SSresearch.techweb_design_by_id(v) if(D.build_type & MECHFAB) @@ -342,10 +341,10 @@ break return update_queue_on_page() if(href_list["remove_from_queue"]) - remove_from_queue(afilter.getNum("remove_from_queue")) + remove_from_queue(text2num(href_list["remove_from_queue"])) return update_queue_on_page() if(href_list["partset_to_queue"]) - add_part_set_to_queue(afilter.get("partset_to_queue")) + add_part_set_to_queue(href_list["partset_to_queue"]) return update_queue_on_page() if(href_list["process_queue"]) spawn(0) @@ -359,8 +358,8 @@ if(href_list["screen"]) screen = href_list["screen"] if(href_list["queue_move"] && href_list["index"]) - var/index = afilter.getNum("index") - var/new_index = index + afilter.getNum("queue_move") + var/index = text2num(href_list["index"]) + var/new_index = index + text2num(href_list["queue_move"]) if(isnum(index) && isnum(new_index) && ISINTEGER(index) && ISINTEGER(new_index)) if(ISINRANGE(new_index,1,queue.len)) queue.Swap(index,new_index) @@ -371,7 +370,7 @@ if(href_list["sync"]) sync() if(href_list["part_desc"]) - var/T = afilter.getStr("part_desc") + var/T = href_list["part_desc"] for(var/v in stored_research.researched_designs) var/datum/design/D = SSresearch.techweb_design_by_id(v) if(D.build_type & MECHFAB) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 065c8995a50..0fb1c3370db 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -48,6 +48,7 @@ var/lights = FALSE var/lights_power = 6 var/last_user_hud = 1 // used to show/hide the mecha hud while preserving previous preference + var/completely_disabled = FALSE //stops the mech from doing anything var/bumpsmash = 0 //Whether or not the mech destroys walls by running into it. //inner atmos @@ -80,6 +81,15 @@ var/melee_cooldown = 10 var/melee_can_hit = 1 + var/silicon_pilot = FALSE //set to true if an AI or MMI is piloting. + + var/enter_delay = 40 //Time taken to enter the mech + var/exit_delay = 20 //Time to exit mech + var/destruction_sleep_duration = 20 //Time that mech pilot is put to sleep for if mech is destroyed + var/enclosed = TRUE //Set to false for open-cockpit mechs + var/silicon_icon_state = null //if the mech has a different icon when piloted by an AI or MMI + var/is_currently_ejecting = FALSE //Mech cannot use equiptment when true, set to true if pilot is trying to exit mech + //Action datums var/datum/action/innate/mecha/mech_eject/eject_action = new var/datum/action/innate/mecha/mech_toggle_internals/internals_action = new @@ -127,7 +137,8 @@ icon_state += "-open" add_radio() add_cabin() - add_airtank() + if (enclosed) + add_airtank() spark_system.set_up(2, 0, src) spark_system.attach(src) smoke_system.set_up(3, src) @@ -145,10 +156,17 @@ diag_hud_set_mechstat() diag_hud_set_mechtracking() +/obj/mecha/update_icon() + if (silicon_pilot && silicon_icon_state) + icon_state = silicon_icon_state + . = ..() + /obj/mecha/get_cell() return cell /obj/mecha/Destroy() + if(occupant) + occupant.SetSleeping(destruction_sleep_duration) go_out() var/mob/living/silicon/ai/AI for(var/mob/M in src) //Let's just be ultra sure @@ -158,8 +176,6 @@ else M.forceMove(loc) if(wreckage) - if(prob(30)) - explosion(get_turf(src), 0, 0, 1, 3) var/obj/structure/mecha_wreckage/WR = new wreckage(loc, AI) for(var/obj/item/mecha_parts/mecha_equipment/E in equipment) if(E.salvageable && prob(30)) @@ -280,6 +296,17 @@ to_chat(user, "It's equipped with:") for(var/obj/item/mecha_parts/mecha_equipment/ME in visible_equipment) to_chat(user, "[icon2html(ME, user)] \A [ME].") + if(!enclosed) + if(silicon_pilot) + to_chat(user, "[src] appears to be piloting itself...") + else if(occupant && occupant != user) //!silicon_pilot implied + to_chat(user, "You can see [occupant] inside.") + if(ishuman(user)) + var/mob/living/carbon/human/H = user + for(var/O in H.held_items) + if(istype(O, /obj/item/gun)) + to_chat(user, "It looks like you can hit the pilot directly if you target the center or above.") + break //in case user is holding two guns //processing internal damage, temperature, air regulation, alert updates, lights power use. /obj/mecha/process() @@ -394,12 +421,21 @@ var/lights_energy_drain = 2 use_power(lights_energy_drain) + if(!enclosed && occupant?.incapacitated()) //no sides mean it's easy to just sorta fall out if you're incapacitated. + visible_message("[occupant] tumbles out of the cockpit!") + go_out() //Maybe we should install seat belts? + //Diagnostic HUD updates diag_hud_set_mechhealth() diag_hud_set_mechcell() diag_hud_set_mechstat() diag_hud_set_mechtracking() +/obj/mecha/fire_act() //Check if we should ignite the pilot of an open-canopy mech + if (occupant && !enclosed && !silicon_pilot) + if (occupant.fire_stacks < 5) + occupant.fire_stacks += 1 + occupant.IgniteMob() /obj/mecha/proc/drop_item()//Derpfix, but may be useful in future for engineering exosuits. return @@ -407,7 +443,7 @@ /obj/mecha/Hear(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode) . = ..() if(speaker == occupant) - if(radio.broadcasting) + if(radio?.broadcasting) radio.talk_into(speaker, text, , spans, message_language) //flick speech bubble var/list/speech_bubble_recipients = list() @@ -426,6 +462,10 @@ return if(!locate(/turf) in list(target,target.loc)) // Prevents inventory from being drilled return + if(completely_disabled) + return + if(is_currently_ejecting) + return if(phasing) occupant_message("Unable to interact with objects while phasing") return @@ -449,13 +489,13 @@ var/mob/living/L = user if(!Adjacent(target)) if(selected && selected.is_ranged()) - if(L.has_trait(TRAIT_PACIFISM) && selected.harmful) + if(HAS_TRAIT(L, TRAIT_PACIFISM) && selected.harmful) to_chat(user, "You don't want to harm other living beings!") return if(selected.action(target,params)) selected.start_cooldown() else if(selected && selected.is_melee()) - if(isliving(target) && selected.harmful && L.has_trait(TRAIT_PACIFISM)) + if(isliving(target) && selected.harmful && HAS_TRAIT(L, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm other living beings!") return if(selected.action(target,params)) @@ -483,7 +523,7 @@ . = ..() if(.) events.fireEvent("onMove",get_turf(src)) - if (internal_tank.disconnect()) // Something moved us and broke connection + if (internal_tank?.disconnect()) // Something moved us and broke connection occupant_message("Air port connection teared off!") log_message("Lost connection to gas port.", LOG_MECHA) @@ -503,13 +543,15 @@ return 1 /obj/mecha/relaymove(mob/user,direction) + if(completely_disabled) + return if(!direction) return if(user != occupant) //While not "realistic", this piece is player friendly. user.forceMove(get_turf(src)) to_chat(user, "You climb out from [src].") return 0 - if(internal_tank.connected_port) + if(internal_tank?.connected_port) if(world.time - last_message > 20) occupant_message("Unable to move while connected to the air system port!") last_message = world.time @@ -697,6 +739,7 @@ AI.disconnect_shell() RemoveActions(AI, TRUE) occupant = null + silicon_pilot = FALSE AI.forceMove(card) card.AI = AI AI.controlled_mech = null @@ -738,7 +781,9 @@ AI.ai_restore_power() AI.forceMove(src) occupant = AI + silicon_pilot = TRUE icon_state = initial(icon_state) + update_icon() playsound(src, 'sound/machines/windowdoor.ogg', 50, 1) if(!internal_damage) SEND_SOUND(occupant, sound('sound/mecha/nominal.ogg',volume=50)) @@ -791,6 +836,9 @@ return cabin_air return ..() +/obj/mecha/return_analyzable_air() + return cabin_air + /obj/mecha/proc/return_pressure() var/datum/gas_mixture/t_air = return_air() if(t_air) @@ -803,12 +851,8 @@ . = t_air.return_temperature() return -/obj/mecha/portableConnectorReturnAir() - return internal_tank.return_air() - - /obj/mecha/MouseDrop_T(mob/M, mob/user) - if (!user.canUseTopic(src) || (user != M)) + if((user != M) || user.incapacitated() || !Adjacent(user)) return if(!ishuman(user)) // no silicons or drones in mechas. return @@ -842,7 +886,7 @@ visible_message("[user] starts to climb into [name].") - if(do_after(user, 40, target = src)) + if(do_after(user, enter_delay, target = src)) if(obj_integrity <= 0) to_chat(user, "You cannot get in the [name], it has been destroyed!") else if(occupant) @@ -915,6 +959,7 @@ var/mob/living/brainmob = mmi_as_oc.brainmob mmi_as_oc.mecha = src occupant = brainmob + silicon_pilot = TRUE brainmob.forceMove(src) //should allow relaymove brainmob.reset_perspective(src) brainmob.remote_control = src @@ -930,8 +975,14 @@ return TRUE /obj/mecha/container_resist(mob/living/user) - go_out() - + is_currently_ejecting = TRUE + to_chat(occupant, "You begin the ejection procedure. Equipment is disabled during this process. Hold still to finish ejecting.") + if(do_after(occupant,exit_delay, target = src)) + to_chat(occupant, "You exit the mech.") + go_out() + else + to_chat(occupant, "You stop exiting the mech. Weapons are enabled again.") + is_currently_ejecting = FALSE /obj/mecha/Exited(atom/movable/M, atom/newloc) if(occupant && occupant == M) // The occupant exited the mech without calling go_out() @@ -956,6 +1007,7 @@ RemoveActions(occupant) occupant.gib() //If one Malf decides to steal a mech from another AI (even other Malfs!), they are destroyed, as they have nowhere to go when replaced. occupant = null + silicon_pilot = FALSE return else if(!AI.linked_core) @@ -973,6 +1025,7 @@ return var/mob/living/L = occupant occupant = null //we need it null when forceMove calls Exited(). + silicon_pilot = FALSE if(mob_container.forceMove(newloc))//ejecting mob container log_message("[mob_container] moved out.", LOG_MECHA) L << browse(null, "window=exosuit") diff --git a/code/game/mecha/mecha_actions.dm b/code/game/mecha/mecha_actions.dm index 2a180ae4361..30d5b8266fa 100644 --- a/code/game/mecha/mecha_actions.dm +++ b/code/game/mecha/mecha_actions.dm @@ -3,7 +3,8 @@ /obj/mecha/proc/GrantActions(mob/living/user, human_occupant = 0) if(human_occupant) eject_action.Grant(user, src) - internals_action.Grant(user, src) + if(enclosed) + internals_action.Grant(user, src) cycle_action.Grant(user, src) lights_action.Grant(user, src) stats_action.Grant(user, src) @@ -43,8 +44,7 @@ return if(!chassis || chassis.occupant != owner) return - chassis.go_out() - + chassis.container_resist(chassis.occupant) /datum/action/innate/mecha/mech_toggle_internals name = "Toggle Internal Airtank Usage" diff --git a/code/game/mecha/mecha_construction_paths.dm b/code/game/mecha/mecha_construction_paths.dm index 440f1656136..b515bcc250f 100644 --- a/code/game/mecha/mecha_construction_paths.dm +++ b/code/game/mecha/mecha_construction_paths.dm @@ -171,36 +171,29 @@ list( "key" = TOOL_WRENCH, "back_key" = TOOL_CROWBAR, - "desc" = "Internal armor is installed." + "desc" = "Outer plating is installed." ), //17 list( "key" = TOOL_WELDER, "back_key" = TOOL_WRENCH, - "desc" = "Internal armor is wrenched." + "desc" = "Outer Plating is wrenched." ), //18 list( - "key" = /obj/item/stack/sheet/plasteel, - "amount" = 5, + "key" = /obj/item/stack/rods, + "amount" = 10, "back_key" = TOOL_WELDER, - "desc" = "Internal armor is welded." + "desc" = "Outer Plating is welded." ), //19 - list( - "key" = TOOL_WRENCH, - "back_key" = TOOL_CROWBAR, - "desc" = "External armor is installed." - ), - - //20 list( "key" = TOOL_WELDER, - "back_key" = TOOL_WRENCH, - "desc" = "External armor is wrenched." + "back_key" = TOOL_WIRECUTTER, + "desc" = "Cockpit wire screen is installed." ), ) @@ -827,57 +820,57 @@ user.visible_message("[user] secures the scanner module.", "You secure the scanner module.") else user.visible_message("[user] removes the scanner module from [parent].", "You remove the scanner module from [parent].") - if(12) + if(11) if(diff==FORWARD) user.visible_message("[user] installs [I] to [parent].", "You install [I] to [parent].") else user.visible_message("[user] unfastens the scanner module.", "You unfasten the scanner module.") - if(13) + if(12) if(diff==FORWARD) user.visible_message("[user] secures the capacitor.", "You secure the capacitor.") else user.visible_message("[user] removes the capacitor from [parent].", "You remove the capacitor from [parent].") - if(14) + if(13) if(diff==FORWARD) user.visible_message("[user] installs [I] into [parent].", "You install [I] into [parent].") else user.visible_message("[user] unfastens the capacitor.", "You unfasten the capacitor.") - if(15) + if(14) if(diff==FORWARD) user.visible_message("[user] secures the power cell.", "You secure the power cell.") else user.visible_message("[user] pries the power cell from [parent].", "You pry the power cell from [parent].") - if(16) + if(15) if(diff==FORWARD) user.visible_message("[user] installs the internal armor layer to [parent].", "You install the internal armor layer to [parent].") else user.visible_message("[user] unfastens the power cell.", "You unfasten the power cell.") - if(17) + if(16) if(diff==FORWARD) user.visible_message("[user] secures the internal armor layer.", "You secure the internal armor layer.") else user.visible_message("[user] pries internal armor layer from [parent].", "You pry internal armor layer from [parent].") - if(18) + if(17) if(diff==FORWARD) user.visible_message("[user] welds the internal armor layer to [parent].", "You weld the internal armor layer to [parent].") else user.visible_message("[user] unfastens the internal armor layer.", "You unfasten the internal armor layer.") - if(19) + if(18) if(diff==FORWARD) user.visible_message("[user] starts to install the external armor layer to [parent].", "You install the external armor layer to [parent].") else user.visible_message("[user] cuts the internal armor layer from [parent].", "You cut the internal armor layer from [parent].") - if(20) + if(19) if(diff==FORWARD) user.visible_message("[user] installs the external reinforced armor layer to [parent].", "You install the external reinforced armor layer to [parent].") else user.visible_message("[user] removes the external armor from [parent].", "You remove the external armor from [parent].") - if(21) + if(20) if(diff==FORWARD) user.visible_message("[user] secures the external armor layer.", "You secure the external reinforced armor layer.") else user.visible_message("[user] pries external armor layer from [parent].", "You pry external armor layer from [parent].") - if(22) + if(21) if(diff==FORWARD) user.visible_message("[user] welds the external armor layer to [parent].", "You weld the external armor layer to [parent].") else diff --git a/code/game/mecha/mecha_control_console.dm b/code/game/mecha/mecha_control_console.dm index e736630701c..053660b50b6 100644 --- a/code/game/mecha/mecha_control_console.dm +++ b/code/game/mecha/mecha_control_console.dm @@ -30,17 +30,19 @@ /obj/machinery/computer/mecha/Topic(href, href_list) if(..()) return - var/datum/topic_input/afilter = new /datum/topic_input(href,href_list) if(href_list["send_message"]) - var/obj/item/mecha_parts/mecha_tracking/MT = afilter.getObj("send_message") + var/obj/item/mecha_parts/mecha_tracking/MT = locate(href_list["send_message"]) + if (!istype(MT)) + return var/message = stripped_input(usr,"Input message","Transmit message") var/obj/mecha/M = MT.in_mecha() if(trim(message) && M) M.occupant_message(message) return if(href_list["shock"]) - var/obj/item/mecha_parts/mecha_tracking/MT = afilter.getObj("shock") - MT.shock() + var/obj/item/mecha_parts/mecha_tracking/MT = locate(href_list["shock"]) + if (istype(MT)) + MT.shock() updateUsrDialog() return @@ -61,7 +63,7 @@ var/answer = {"Name: [M.name]
Integrity: [round((M.obj_integrity/M.max_integrity*100), 0.01)]%
Cell Charge: [isnull(cell_charge)?"Not Found":"[M.cell.percent()]%"]
-Airtank: [round(M.return_pressure(), 0.01)] kPa
+Airtank: [M.internal_tank?"[round(M.return_pressure(), 0.01)]":"Not Equipped"] kPa
Pilot: [M.occupant||"None"]
Location: [get_area_name(M, TRUE)||"Unknown"]
Active Equipment: [M.selected||"None"]"} diff --git a/code/game/mecha/mecha_defense.dm b/code/game/mecha/mecha_defense.dm index 80ac5f86b56..477e03b028b 100644 --- a/code/game/mecha/mecha_defense.dm +++ b/code/game/mecha/mecha_defense.dm @@ -113,6 +113,9 @@ /obj/mecha/bullet_act(obj/item/projectile/Proj) //wrapper + if (!enclosed && occupant && !silicon_pilot && !Proj.force_hit && (Proj.def_zone == BODY_ZONE_HEAD || Proj.def_zone == BODY_ZONE_CHEST)) //allows bullets to hit the pilot of open-canopy mechs + occupant.bullet_act(Proj) //If the sides are open, the occupant can be hit + return BULLET_ACT_HIT log_message("Hit by projectile. Type: [Proj.name]([Proj.flag]).", LOG_MECHA, color="red") . = ..() diff --git a/code/game/mecha/mecha_topic.dm b/code/game/mecha/mecha_topic.dm index 0465146d486..e7d53db45c1 100644 --- a/code/game/mecha/mecha_topic.dm +++ b/code/game/mecha/mecha_topic.dm @@ -71,19 +71,24 @@ /obj/mecha/proc/get_stats_part() var/integrity = obj_integrity/max_integrity*100 var/cell_charge = get_charge() - var/datum/gas_mixture/int_tank_air = internal_tank.return_air() - var/tank_pressure = internal_tank ? round(int_tank_air.return_pressure(),0.01) : "None" - var/tank_temperature = internal_tank ? int_tank_air.temperature : "Unknown" - var/cabin_pressure = round(return_pressure(),0.01) + var/datum/gas_mixture/int_tank_air = 0 + var/tank_pressure = 0 + var/tank_temperature = 0 + var/cabin_pressure = 0 + if (internal_tank) + int_tank_air = internal_tank.return_air() + tank_pressure = internal_tank ? round(int_tank_air.return_pressure(),0.01) : "None" + tank_temperature = internal_tank ? int_tank_air.temperature : "Unknown" + cabin_pressure = round(return_pressure(),0.01) . = {"[report_internal_damage()] [integrity<30?"DAMAGE LEVEL CRITICAL
":null] Integrity: [integrity]%
Powercell charge: [isnull(cell_charge)?"No powercell installed":"[cell.percent()]%"]
- Air source: [use_internal_tank?"Internal Airtank":"Environment"]
- Airtank pressure: [tank_pressure]kPa
- Airtank temperature: [tank_temperature]°K|[tank_temperature - T0C]°C
- Cabin pressure: [cabin_pressure>WARNING_HIGH_PRESSURE ? "[cabin_pressure]": cabin_pressure]kPa
- Cabin temperature: [return_temperature()]°K|[return_temperature() - T0C]°C
+ Air source: [internal_tank?"[use_internal_tank?"Internal Airtank":"Environment"]":"Environment"]
+ Airtank pressure: [internal_tank?"[tank_pressure]kPa":"N/A"]
+ Airtank temperature: [internal_tank?"[tank_temperature]°K|[tank_temperature - T0C]°C":"N/A"]
+ Cabin pressure: [internal_tank?"[cabin_pressure>WARNING_HIGH_PRESSURE ? "[cabin_pressure]": cabin_pressure]kPa":"N/A"]
+ Cabin temperature: [internal_tank?"[return_temperature()]°K|[return_temperature() - T0C]°C":"N/A"]
[dna_lock?"DNA-locked:
[dna_lock] \[Reset\]
":""]
[thrusters_action.owner ? "Thrusters: [thrusters_active ? "Enabled" : "Disabled"]
" : ""] [defense_action.owner ? "Defence Mode: [defence_mode ? "Enabled" : "Disabled"]
" : ""] @@ -100,14 +105,14 @@
Electronics
@@ -115,7 +120,7 @@ @@ -211,73 +216,71 @@ if(usr.incapacitated()) return - var/datum/topic_input/afilter = new /datum/topic_input(href,href_list) - if(in_range(src, usr)) + var/obj/item/card/id/id_card + if (href_list["id_card"]) + id_card = locate(href_list["id_card"]) + if (!istype(id_card)) + return - if(href_list["req_access"] && add_req_access) - output_access_dialog(afilter.getObj("id_card"),afilter.getMob("user")) + if(href_list["req_access"] && add_req_access && id_card) + output_access_dialog(id_card,usr) - if(href_list["maint_access"] && maint_access) - var/mob/user = afilter.getMob("user") - if(user) - if(state==0) - state = 1 - to_chat(user, "The securing bolts are now exposed.") - else if(state==1) - state = 0 - to_chat(user, "The securing bolts are now hidden.") - output_maintenance_dialog(afilter.getObj("id_card"),user) + if(href_list["maint_access"] && maint_access && id_card) + if(state==0) + state = 1 + to_chat(usr, "The securing bolts are now exposed.") + else if(state==1) + state = 0 + to_chat(usr, "The securing bolts are now hidden.") + output_maintenance_dialog(id_card,usr) if(href_list["set_internal_tank_valve"] && state >=1) - var/mob/user = afilter.getMob("user") - if(user) - var/new_pressure = input(user,"Input new output pressure","Pressure setting",internal_tank_valve) as num - if(new_pressure) - internal_tank_valve = new_pressure - to_chat(user, "The internal pressure valve has been set to [internal_tank_valve]kPa.") + var/new_pressure = input(usr,"Input new output pressure","Pressure setting",internal_tank_valve) as num + if(new_pressure) + internal_tank_valve = new_pressure + to_chat(usr, "The internal pressure valve has been set to [internal_tank_valve]kPa.") - if(href_list["add_req_access"] && add_req_access && afilter.getObj("id_card")) - operation_req_access += afilter.getNum("add_req_access") - output_access_dialog(afilter.getObj("id_card"),afilter.getMob("user")) + if(href_list["add_req_access"] && add_req_access && id_card) + operation_req_access += text2num(href_list["add_req_access"]) + output_access_dialog(id_card,usr) - if(href_list["del_req_access"] && add_req_access && afilter.getObj("id_card")) - operation_req_access -= afilter.getNum("del_req_access") - output_access_dialog(afilter.getObj("id_card"),afilter.getMob("user")) + if(href_list["del_req_access"] && add_req_access && id_card) + operation_req_access -= text2num(href_list["add_req_access"]) + output_access_dialog(id_card, usr) if(href_list["finish_req_access"]) add_req_access = 0 - var/mob/user = afilter.getMob("user") - user << browse(null,"window=exosuit_add_access") + usr << browse(null,"window=exosuit_add_access") if(usr != occupant) return if(href_list["update_content"]) - send_byjax(src.occupant,"exosuit.browser","content",src.get_stats_part()) + send_byjax(usr,"exosuit.browser","content",src.get_stats_part()) if(href_list["select_equip"]) - var/obj/item/mecha_parts/mecha_equipment/equip = afilter.getObj("select_equip") + var/obj/item/mecha_parts/mecha_equipment/equip = locate(href_list["select_equip"]) in src if(equip && equip.selectable) - src.selected = equip - src.occupant_message("You switch to [equip]") - src.visible_message("[src] raises [equip]") - send_byjax(src.occupant,"exosuit.browser","eq_list",src.get_equipment_list()) + selected = equip + occupant_message("You switch to [equip]") + visible_message("[src] raises [equip]") + send_byjax(usr,"exosuit.browser","eq_list",src.get_equipment_list()) if(href_list["rmictoggle"]) radio.broadcasting = !radio.broadcasting - send_byjax(src.occupant,"exosuit.browser","rmicstate",(radio.broadcasting?"Engaged":"Disengaged")) + send_byjax(usr,"exosuit.browser","rmicstate",(radio.broadcasting?"Engaged":"Disengaged")) if(href_list["rspktoggle"]) radio.listening = !radio.listening - send_byjax(src.occupant,"exosuit.browser","rspkstate",(radio.listening?"Engaged":"Disengaged")) + send_byjax(usr,"exosuit.browser","rspkstate",(radio.listening?"Engaged":"Disengaged")) if(href_list["rfreq"]) - var/new_frequency = (radio.frequency + afilter.getNum("rfreq")) + var/new_frequency = (radio.frequency + text2num(href_list["rfreq"])) if (!radio.freerange || (radio.frequency < MIN_FREE_FREQ || radio.frequency > MAX_FREE_FREQ)) new_frequency = sanitize_frequency(new_frequency) radio.set_frequency(new_frequency) - send_byjax(src.occupant,"exosuit.browser","rfreq","[format_frequency(radio.frequency)]") + send_byjax(usr,"exosuit.browser","rfreq","[format_frequency(radio.frequency)]") if (href_list["change_name"]) var/userinput = input(occupant, "Choose new exosuit name", "Rename exosuit", "") as null|text @@ -287,14 +290,14 @@ if (href_list["toggle_id_upload"]) add_req_access = !add_req_access - send_byjax(src.occupant,"exosuit.browser","t_id_upload","[add_req_access?"L":"Unl"]ock ID upload panel") + send_byjax(usr,"exosuit.browser","t_id_upload","[add_req_access?"L":"Unl"]ock ID upload panel") if(href_list["toggle_maint_access"]) if(state) occupant_message("Maintenance protocols in effect") return maint_access = !maint_access - send_byjax(src.occupant,"exosuit.browser","t_maint_access","[maint_access?"Forbid":"Permit"] maintenance protocols") + send_byjax(usr,"exosuit.browser","t_maint_access","[maint_access?"Forbid":"Permit"] maintenance protocols") if (href_list["toggle_port_connection"]) if(internal_tank.connected_port) diff --git a/code/game/mecha/mecha_wreckage.dm b/code/game/mecha/mecha_wreckage.dm index e53d79880ec..7088d2eb36d 100644 --- a/code/game/mecha/mecha_wreckage.dm +++ b/code/game/mecha/mecha_wreckage.dm @@ -161,6 +161,23 @@ welder_salvage += part parts -= part +/obj/structure/mecha_wreckage/ripley/mkii + name = "\improper Ripley MK-II wreckage" + icon_state = "ripleymkii-broken" + +/obj/structure/mecha_wreckage/ripley/mkii/Initialize() + . = ..() + var/list/parts = list(/obj/item/mecha_parts/part/ripley_torso, + /obj/item/mecha_parts/part/ripley_left_arm, + /obj/item/mecha_parts/part/ripley_right_arm, + /obj/item/mecha_parts/part/ripley_left_leg, + /obj/item/mecha_parts/part/ripley_right_leg) + for(var/i = 0; i < 2; i++) + if(parts.len && prob(40)) + var/part = pick(parts) + welder_salvage += part + parts -= part + /obj/structure/mecha_wreckage/ripley/firefighter name = "\improper Firefighter wreckage" diff --git a/code/game/mecha/working/ripley.dm b/code/game/mecha/working/ripley.dm index c87a81b058e..4eeea1f2014 100644 --- a/code/game/mecha/working/ripley.dm +++ b/code/game/mecha/working/ripley.dm @@ -1,21 +1,26 @@ /obj/mecha/working/ripley - desc = "Autonomous Power Loader Unit. This newer model is refitted with powerful armour against the dangers of planetary mining." - name = "\improper APLU \"Ripley\"" + desc = "Autonomous Power Loader Unit MK-I. Designed primarily around heavy lifting, the Ripley can be outfitted with utility equipment to fill a number of roles." + name = "\improper APLU MK-I \"Ripley\"" icon_state = "ripley" - step_in = 4 //Move speed, lower is faster. - var/fast_pressure_step_in = 2 //step_in while in normal pressure conditions - var/slow_pressure_step_in = 4 //step_in while in better pressure conditions + silicon_icon_state = "ripley-empty" + step_in = 1.5 //Move speed, lower is faster. + var/fast_pressure_step_in = 1.5 //step_in while in low pressure conditions + var/slow_pressure_step_in = 2.0 //step_in while in normal pressure conditions max_temperature = 20000 max_integrity = 200 lights_power = 7 deflect_chance = 15 - armor = list("melee" = 40, "bullet" = 20, "laser" = 10, "energy" = 20, "bomb" = 40, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) + armor = list("melee" = 40, "bullet" = 20, "laser" = 10, "energy" = 20, "bomb" = 40, "bio" = 0, "rad" = 20, "fire" = 100, "acid" = 100) max_equip = 6 wreckage = /obj/structure/mecha_wreckage/ripley internals_req_access = list(ACCESS_MECH_ENGINE, ACCESS_MECH_SCIENCE, ACCESS_MECH_MINING) var/list/cargo = new var/cargo_capacity = 15 var/hides = 0 + enclosed = FALSE //Normal ripley has an open cockpit design + enter_delay = 10 //can enter in a quarter of the time of other mechs + exit_delay = 10 + opacity = FALSE //Ripley has a window /obj/mecha/working/ripley/Move() . = ..() @@ -56,33 +61,67 @@ else add_overlay(occupant ? "ripley-g-full" : "ripley-g-full-open") +/obj/mecha/working/ripley/check_for_internal_damage(list/possible_int_damage,ignore_threshold=null) + if (!enclosed) + possible_int_damage -= (MECHA_INT_TEMP_CONTROL + MECHA_INT_TANK_BREACH) //if we don't even have an air tank, these two doesn't make a ton of sense. + . = ..() + + /obj/mecha/working/ripley/Initialize() . = ..() AddComponent(/datum/component/armor_plate,3,/obj/item/stack/sheet/animalhide/goliath_hide,list("melee" = 10, "bullet" = 5, "laser" = 5)) +/obj/mecha/working/ripley/mkii + desc = "Autonomous Power Loader Unit MK-II. This prototype Ripley is refitted with a pressurized cabin, trading its prior speed for atmospheric protection" + name = "\improper APLU MK-II \"Ripley\"" + icon_state = "ripleymkii" + fast_pressure_step_in = 2 //step_in while in low pressure conditions + slow_pressure_step_in = 4 //step_in while in normal pressure conditions + step_in = 4 + armor = list("melee" = 40, "bullet" = 20, "laser" = 10, "energy" = 20, "bomb" = 40, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) + wreckage = /obj/structure/mecha_wreckage/ripley/mkii + enclosed = TRUE + enter_delay = 40 + silicon_icon_state = null + opacity = TRUE + /obj/mecha/working/ripley/firefighter - desc = "Autonomous Power Loader Unit. This model is refitted with additional thermal protection." - name = "\improper APLU \"Firefighter\"" + desc = "Autonomous Power Loader Unit MK-III. This model is refitted with a pressurized cabin and additional thermal protection." + name = "\improper APLU MK-III \"Firefighter\"" icon_state = "firefighter" max_temperature = 65000 max_integrity = 250 + fast_pressure_step_in = 2 //step_in while in low pressure conditions + slow_pressure_step_in = 4 //step_in while in normal pressure conditions + step_in = 4 resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF lights_power = 7 - armor = list("melee" = 40, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 60, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100) + armor = list("melee" = 40, "bullet" = 30, "laser" = 30, "energy" = 30, "bomb" = 60, "bio" = 0, "rad" = 70, "fire" = 100, "acid" = 100) max_equip = 5 // More armor, less tools wreckage = /obj/structure/mecha_wreckage/ripley/firefighter + enclosed = TRUE + enter_delay = 40 + silicon_icon_state = null + opacity = TRUE /obj/mecha/working/ripley/deathripley desc = "OH SHIT IT'S THE DEATHSQUAD WE'RE ALL GONNA DIE" name = "\improper DEATH-RIPLEY" icon_state = "deathripley" + fast_pressure_step_in = 2 //step_in while in low pressure conditions + slow_pressure_step_in = 4 //step_in while in normal pressure conditions + step_in = 4 slow_pressure_step_in = 3 opacity=0 lights_power = 7 wreckage = /obj/structure/mecha_wreckage/ripley/deathripley step_energy_drain = 0 + enclosed = TRUE + enter_delay = 40 + silicon_icon_state = null + opacity = TRUE /obj/mecha/working/ripley/deathripley/Initialize() . = ..() diff --git a/code/game/objects/buckling.dm b/code/game/objects/buckling.dm index a7fb465b70f..19f0cdd1b43 100644 --- a/code/game/objects/buckling.dm +++ b/code/game/objects/buckling.dm @@ -54,8 +54,12 @@ M.buckling = null return FALSE - if(M.pulledby && buckle_prevents_pull) - M.pulledby.stop_pulling() + if(M.pulledby) + if(buckle_prevents_pull) + M.pulledby.stop_pulling() + else if(isliving(M.pulledby)) + var/mob/living/L = M.pulledby + L.reset_pull_offsets(M, TRUE) if(!check_loc && M.loc != loc) M.forceMove(loc) @@ -136,4 +140,7 @@ "You unbuckle yourself from [src].",\ "You hear metal clanking.") add_fingerprint(user) + if(isliving(M.pulledby)) + var/mob/living/L = M.pulledby + L.set_pull_offsets(M, L.grab_state) return M diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index a75d1fb4492..efc8ea06781 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -72,7 +72,7 @@ ..() if(ishuman(O)) var/mob/living/carbon/human/H = O - if(H.shoes && blood_state && bloodiness && !H.has_trait(TRAIT_LIGHT_STEP)) + if(H.shoes && blood_state && bloodiness && !HAS_TRAIT(H, TRAIT_LIGHT_STEP)) var/obj/item/clothing/shoes/S = H.shoes if(!S.can_be_bloody) return diff --git a/code/game/objects/effects/decals/cleanable/food.dm b/code/game/objects/effects/decals/cleanable/food.dm index bbb32ccbc59..b0154535d14 100644 --- a/code/game/objects/effects/decals/cleanable/food.dm +++ b/code/game/objects/effects/decals/cleanable/food.dm @@ -30,6 +30,12 @@ desc = "A sizable pile of table salt. Someone must be upset." icon_state = "salt_pile" +/obj/effect/decal/cleanable/food/salt/CanPass(atom/movable/AM, turf/target) + if(is_species(AM, /datum/species/snail)) + to_chat(AM, "Your path is obstructed by salt.") + return FALSE + return TRUE + /obj/effect/decal/cleanable/food/flour name = "flour" desc = "It's still good. Four second rule!" diff --git a/code/game/objects/effects/decals/cleanable/humans.dm b/code/game/objects/effects/decals/cleanable/humans.dm index c9facba06e0..aa7d0a2f137 100644 --- a/code/game/objects/effects/decals/cleanable/humans.dm +++ b/code/game/objects/effects/decals/cleanable/humans.dm @@ -38,7 +38,6 @@ /obj/effect/decal/cleanable/trail_holder //not a child of blood on purpose name = "blood" icon = 'icons/effects/blood.dmi' - icon_state = "ltrails_1" desc = "Your instincts say you shouldn't be following these." var/list/existing_dirs = list() @@ -75,7 +74,7 @@ /obj/effect/decal/cleanable/blood/gibs/Crossed(mob/living/L) if(istype(L) && has_gravity(loc)) - playsound(loc, 'sound/effects/gib_step.ogg', L.has_trait(TRAIT_LIGHT_STEP) ? 20 : 50, 1) + playsound(loc, 'sound/effects/gib_step.ogg', HAS_TRAIT(L, TRAIT_LIGHT_STEP) ? 20 : 50, 1) . = ..() /obj/effect/decal/cleanable/blood/gibs/proc/streak(list/directions) diff --git a/code/game/objects/effects/decals/cleanable/robots.dm b/code/game/objects/effects/decals/cleanable/robots.dm index 32d2963ca24..d04623a3d51 100644 --- a/code/game/objects/effects/decals/cleanable/robots.dm +++ b/code/game/objects/effects/decals/cleanable/robots.dm @@ -54,11 +54,27 @@ . = ..() reagents.add_reagent("oil", 30) +/obj/effect/decal/cleanable/oil/attackby(obj/item/I, mob/living/user) + var/attacked_by_hot_thing = I.is_hot() + if(attacked_by_hot_thing) + visible_message("[user] tries to ignite [src] with [I]!", "You try to ignite [src] with [I].") + log_combat(user, src, (attacked_by_hot_thing < 480) ? "tried to ignite" : "ignited", I) + fire_act(attacked_by_hot_thing) + return + return ..() + +/obj/effect/decal/cleanable/oil/fire_act(exposed_temperature, exposed_volume) + if(exposed_temperature < 480) + return + visible_message("[src] catches fire!") + var/turf/T = get_turf(src) + qdel(src) + new /obj/effect/hotspot(T) + /obj/effect/decal/cleanable/oil/streak icon_state = "streak1" random_icon_states = list("streak1", "streak2", "streak3", "streak4", "streak5") -/obj/effect/decal/cleanable/oil/slippery - -/obj/effect/decal/cleanable/oil/slippery/Initialize() +/obj/effect/decal/cleanable/oil/slippery/ComponentInitialize() + . = ..() AddComponent(/datum/component/slippery, 80, (NO_SLIP_WHEN_WALKING | SLIDE)) diff --git a/code/game/objects/effects/effect_system/effect_system.dm b/code/game/objects/effects/effect_system/effect_system.dm index eb4c562c369..e2bc6f54ec1 100644 --- a/code/game/objects/effects/effect_system/effect_system.dm +++ b/code/game/objects/effects/effect_system/effect_system.dm @@ -20,6 +20,9 @@ would spawn and follow the beaker, even if it is carried or thrown. GLOB.cameranet.updateVisibility(src) return ..() +/obj/effect/particle_effect/newtonian_move() // Prevents effects from getting registered for SSspacedrift + return TRUE + /datum/effect_system var/number = 3 var/cardinals = FALSE diff --git a/code/game/objects/effects/effect_system/effects_explosion.dm b/code/game/objects/effects/effect_system/effects_explosion.dm index d208510e860..c91df696e6c 100644 --- a/code/game/objects/effects/effect_system/effects_explosion.dm +++ b/code/game/objects/effects/effect_system/effects_explosion.dm @@ -5,19 +5,23 @@ anchored = TRUE /obj/effect/particle_effect/expl_particles/Initialize() - . = ..() - QDEL_IN(src, 15) + ..() + return INITIALIZE_HINT_LATELOAD + +/obj/effect/particle_effect/expl_particles/LateInitialize() + var/direct = pick(GLOB.alldirs) + var/steps_amt = pick(1;25,2;50,3,4;200) + for(var/j in 1 to steps_amt) + step(src, direct) + sleep(1) + qdel(src) /datum/effect_system/expl_particles number = 10 /datum/effect_system/expl_particles/start() for(var/i in 1 to number) - var/obj/effect/particle_effect/expl_particles/expl = new /obj/effect/particle_effect/expl_particles(location) - var/direct = pick(GLOB.alldirs) - var/steps_amt = pick(1;25,2;50,3,4;200) - for(var/j in 1 to steps_amt) - addtimer(CALLBACK(GLOBAL_PROC, .proc/_step, expl, direct), j) + new /obj/effect/particle_effect/expl_particles(location) /obj/effect/explosion name = "fire" diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index 264715e2ac3..cea0558c25e 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -22,16 +22,15 @@ /turf/open/space/transit, /turf/open/chasm, /turf/open/lava)) + var/slippery_foam = TRUE /obj/effect/particle_effect/foam/firefighting name = "firefighting foam" lifetime = 20 //doesn't last as long as normal foam amount = 0 //no spread + slippery_foam = FALSE var/absorbed_plasma = 0 -/obj/effect/particle_effect/foam/firefighting/MakeSlippery() - return - /obj/effect/particle_effect/foam/firefighting/process() ..() @@ -73,9 +72,7 @@ name = "aluminium foam" metal = ALUMINUM_FOAM icon_state = "mfoam" - -/obj/effect/particle_effect/foam/metal/MakeSlippery() - return + slippery_foam = FALSE /obj/effect/particle_effect/foam/metal/smart name = "smart foam" @@ -93,13 +90,14 @@ /obj/effect/particle_effect/foam/Initialize() . = ..() - MakeSlippery() create_reagents(1000) //limited by the size of the reagent holder anyway. START_PROCESSING(SSfastprocess, src) playsound(src, 'sound/effects/bubbles2.ogg', 80, 1, -3) -/obj/effect/particle_effect/foam/proc/MakeSlippery() - AddComponent(/datum/component/slippery, 100) +/obj/effect/particle_effect/foam/ComponentInitialize() + . = ..() + if(slippery_foam) + AddComponent(/datum/component/slippery, 100) /obj/effect/particle_effect/foam/Destroy() STOP_PROCESSING(SSfastprocess, src) diff --git a/code/game/objects/effects/effect_system/effects_sparks.dm b/code/game/objects/effects/effect_system/effects_sparks.dm index 6da00041048..2912cffccd9 100644 --- a/code/game/objects/effects/effect_system/effects_sparks.dm +++ b/code/game/objects/effects/effect_system/effects_sparks.dm @@ -25,13 +25,17 @@ light_color = LIGHT_COLOR_FIRE /obj/effect/particle_effect/sparks/Initialize() - . = ..() + ..() + return INITIALIZE_HINT_LATELOAD + +/obj/effect/particle_effect/sparks/LateInitialize() flick("sparks", src) // replay the animation playsound(src, "sparks", 100, TRUE) var/turf/T = loc if(isturf(T)) T.hotspot_expose(1000,100) - QDEL_IN(src, 20) + sleep(20) + qdel(src) /obj/effect/particle_effect/sparks/Destroy() var/turf/T = loc diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm index d074e107396..00ac8fa4afc 100644 --- a/code/game/objects/effects/mines.dm +++ b/code/game/objects/effects/mines.dm @@ -131,7 +131,7 @@ var/obj/item/twohanded/required/chainsaw/doomslayer/chainsaw = new(victim.loc) victim.log_message("entered a blood frenzy", LOG_ATTACK) - chainsaw.add_trait(TRAIT_NODROP, CHAINSAW_FRENZY_TRAIT) + ADD_TRAIT(chainsaw, TRAIT_NODROP, CHAINSAW_FRENZY_TRAIT) victim.drop_all_held_items() victim.put_in_hands(chainsaw, forced = TRUE) chainsaw.attack_self(victim) diff --git a/code/game/objects/effects/portals.dm b/code/game/objects/effects/portals.dm index df204273a7e..c16bae26c7d 100644 --- a/code/game/objects/effects/portals.dm +++ b/code/game/objects/effects/portals.dm @@ -200,37 +200,41 @@ /obj/effect/portal/permanent/proc/get_linked() if(!id) return + var/list/possible = list() for(var/obj/effect/portal/permanent/P in GLOB.portals - src) if(P.id && P.id == id) // gets portals with the same id, there should only be two permanent portals with the same id - return P + possible += P + return possible /obj/effect/portal/permanent/proc/set_linked() - var/obj/effect/portal/permanent/other = get_linked() - if(!other) + var/list/possible = get_linked() + if(!possible || !possible.len) return - other.linked = src - linked = other + for(var/obj/effect/portal/permanent/other in possible) + other.linked = src + linked = pick(possible) /obj/effect/portal/permanent/teleport(atom/movable/M, force = FALSE) - if(!linked) // try to search for a new one if something was var edited etc - set_linked() + // try to search for a new one if something was var edited etc + set_linked() . = ..() /obj/effect/portal/permanent/one_way // doesn't have a return portal name = "one-way portal" desc = "You get the feeling that this might not be the safest thing you've ever done." + var/list/possible_exits = list() var/keep // if this is a portal that should be kept /obj/effect/portal/permanent/one_way/set_linked() - var/obj/effect/portal/permanent/one_way/other = get_linked() - if(!other) + if(!keep) // wait for a keep portal to set return - hard_target = get_turf(other) - other.hard_target = get_turf(src) - if(!other.keep) - qdel(other) - if(!keep) - qdel(src) + var/list/possible_temp = get_linked() + if(possible_temp && possible_temp.len) + for(var/obj/effect/portal/permanent/other in possible_temp) + possible_exits += get_turf(other) + qdel(other) + if(possible_exits && possible_exits.len) + hard_target = pick(possible_exits) /obj/effect/portal/permanent/one_way/keep // because its nice to be able to tell which is which on the map keep = TRUE diff --git a/code/game/objects/effects/spawners/bundle.dm b/code/game/objects/effects/spawners/bundle.dm index 4dc8cc76d94..3781a382028 100644 --- a/code/game/objects/effects/spawners/bundle.dm +++ b/code/game/objects/effects/spawners/bundle.dm @@ -133,7 +133,7 @@ /obj/effect/spawner/bundle/costume/holiday_priest name = "holiday priest costume spawner" items = list( - /obj/item/clothing/suit/holidaypriest) + /obj/item/clothing/suit/chaplainsuit/holidaypriest) /obj/effect/spawner/bundle/costume/marisawizard name = "marisa wizard costume spawner" diff --git a/code/game/objects/effects/spawners/gibspawner.dm b/code/game/objects/effects/spawners/gibspawner.dm index 98d456d5f19..3a29b72ca34 100644 --- a/code/game/objects/effects/spawners/gibspawner.dm +++ b/code/game/objects/effects/spawners/gibspawner.dm @@ -46,9 +46,6 @@ for(var/j = 1, j<= gibamounts[i], j++) var/gibType = gibtypes[i] gib = new gibType(loc, diseases) - if(iscarbon(loc)) - var/mob/living/carbon/digester = loc - digester.stomach_contents += gib gib.add_blood_DNA(dna_to_add) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 22931b6848c..681eb0cc93d 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -94,9 +94,6 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) // non-clothing items var/datum/dog_fashion/dog_fashion = null - var/datum/rpg_loot/rpg_loot = null - - //Tooltip vars var/force_string //string form of an item's force. Edit this var only to set a custom force string var/last_force_string_check = 0 @@ -121,7 +118,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) actions_types = null if(GLOB.rpg_loot_items) - rpg_loot = new(src) + AddComponent(/datum/component/fantasy) if(force_string) item_flags |= FORCE_STRING_OVERRIDE @@ -146,7 +143,6 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) m.temporarilyRemoveItemFromInventory(src, TRUE) for(var/X in actions) qdel(X) - QDEL_NULL(rpg_loot) return ..() /obj/item/proc/check_allowed_items(atom/target, not_inside, target_self) @@ -260,7 +256,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) can_handle_hot = TRUE else if(C.gloves && (C.gloves.max_heat_protection_temperature > 360)) can_handle_hot = TRUE - else if(C.has_trait(TRAIT_RESISTHEAT) || C.has_trait(TRAIT_RESISTHEATHANDS)) + else if(HAS_TRAIT(C, TRAIT_RESISTHEAT) || HAS_TRAIT(C, TRAIT_RESISTHEATHANDS)) can_handle_hot = TRUE if(can_handle_hot) @@ -493,7 +489,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) M.adjust_blurriness(15) if(M.stat != DEAD) to_chat(M, "Your eyes start to bleed profusely!") - if(!(M.has_trait(TRAIT_BLIND) || M.has_trait(TRAIT_NEARSIGHT))) + if(!(HAS_TRAIT(M, TRAIT_BLIND) || HAS_TRAIT(M, TRAIT_NEARSIGHT))) to_chat(M, "You become nearsighted!") M.become_nearsighted(EYE_DAMAGE) if(prob(50)) @@ -534,7 +530,6 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) /obj/item/proc/after_throw(datum/callback/callback) if (callback) //call the original callback . = callback.Invoke() - throw_speed = initial(throw_speed) //explosions change this. item_flags &= ~IN_INVENTORY /obj/item/proc/remove_item_from_storage(atom/newLoc) //please use this if you're going to snowflake an item out of a obj/item/storage @@ -790,6 +785,13 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) return ..() /obj/item/throw_at(atom/target, range, speed, mob/thrower, spin=TRUE, diagonals_first = FALSE, var/datum/callback/callback) - if(has_trait(TRAIT_NODROP)) + if(HAS_TRAIT(src, TRAIT_NODROP)) return return ..() + +/obj/item/proc/canStrip(mob/stripper, mob/owner) + return !HAS_TRAIT(src, TRAIT_NODROP) + +/obj/item/proc/doStrip(mob/stripper, mob/owner) + return owner.dropItemToGround(src) + diff --git a/code/game/objects/items/RCD.dm b/code/game/objects/items/RCD.dm index 0edea379e2b..a1fd145d4c4 100644 --- a/code/game/objects/items/RCD.dm +++ b/code/game/objects/items/RCD.dm @@ -151,7 +151,7 @@ RLD max_matter = 160 item_flags = NO_MAT_REDEMPTION | NOBLUDGEON has_ammobar = TRUE - var/mode = 1 + var/mode = RCD_FLOORWALL var/ranged = FALSE var/computer_dir = 1 var/airlock_type = /obj/machinery/door/airlock diff --git a/code/game/objects/items/RCL.dm b/code/game/objects/items/RCL.dm index 0f0dcf56e6f..147e544e68f 100644 --- a/code/game/objects/items/RCL.dm +++ b/code/game/objects/items/RCL.dm @@ -14,13 +14,14 @@ w_class = WEIGHT_CLASS_NORMAL var/max_amount = 90 var/active = FALSE - actions_types = list(/datum/action/item_action/rcl) + actions_types = list(/datum/action/item_action/rcl_col,/datum/action/item_action/rcl_gui,) var/list/colors = list("red", "yellow", "green", "blue", "pink", "orange", "cyan", "white") var/current_color_index = 1 var/ghetto = FALSE lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi' var/datum/component/mobhook + var/datum/radial_menu/persistent/wiring_gui_menu /obj/item/twohanded/rcl/attackby(obj/item/W, mob/user) if(istype(W, /obj/item/stack/cable_coil)) @@ -85,7 +86,8 @@ /obj/item/twohanded/rcl/Destroy() QDEL_NULL(loaded) last = null - setActive(FALSE, null) // setactive(FALSE) removes mobhook + QDEL_NULL(mobhook) + QDEL_NULL(wiring_gui_menu) return ..() /obj/item/twohanded/rcl/update_icon() @@ -115,20 +117,28 @@ if(loaded) QDEL_NULL(loaded) loaded = null + QDEL_NULL(wiring_gui_menu) unwield(user) - setActive(wielded, user) + active = wielded return TRUE return FALSE +/obj/item/twohanded/rcl/pickup(mob/user) + ..() + getMobhook(user) + + /obj/item/twohanded/rcl/dropped(mob/wearer) ..() if(mobhook) - setActive(FALSE, mobhook.parent) + active = FALSE + QDEL_NULL(mobhook) last = null + QDEL_NULL(wiring_gui_menu) /obj/item/twohanded/rcl/attack_self(mob/user) ..() - setActive(wielded, user) + active = wielded if(!active) last = null else if(!last) @@ -137,17 +147,25 @@ last = C break -/obj/item/twohanded/rcl/proc/setActive(toggle, mob/user) - active = toggle - if (active && user) - if (mobhook && mobhook.parent != user) +/obj/item/twohanded/rcl/proc/getMobhook(mob/to_hook) + if(to_hook) + if(mobhook && mobhook.parent != to_hook) QDEL_NULL(mobhook) if (!mobhook) - mobhook = user.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/trigger))) + mobhook = to_hook.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/trigger))) else QDEL_NULL(mobhook) + /obj/item/twohanded/rcl/proc/trigger(mob/user) + if(active) + layCable(user) + if(wiring_gui_menu) //update the wire options as you move + wiringGuiUpdate(user) + + +//previous contents of trigger(), lays cable each time the player moves +/obj/item/twohanded/rcl/proc/layCable(mob/user) if(!isturf(user.loc)) return if(is_empty(user, 0)) @@ -156,7 +174,7 @@ if(prob(2) && ghetto) //Give ghetto RCLs a 2% chance to jam, requiring it to be reactviated manually. to_chat(user, "[src]'s wires jam!") - setActive(FALSE, user) + active = FALSE return else if(last) @@ -180,6 +198,92 @@ update_icon() +//searches the current tile for a stub cable of the same colour +/obj/item/twohanded/rcl/proc/findLinkingCable(mob/user) + var/turf/T + if(!isturf(user.loc)) + return + + T = get_turf(user) + if(T.intact || !T.can_have_cabling()) + return + + for(var/obj/structure/cable/C in T) + if(!C) + continue + if(C.cable_color != GLOB.cable_colors[colors[current_color_index]]) + continue + if(C.d1 == 0) + return C + break + return + + +/obj/item/twohanded/rcl/proc/wiringGuiGenerateChoices(mob/user) + var/fromdir = 0 + var/obj/structure/cable/linkingCable = findLinkingCable(user) + if(linkingCable) + fromdir = linkingCable.d2 + + var/list/wiredirs = list("1","5","4","6","2","10","8","9") + for(var/icondir in wiredirs) + var/dirnum = text2num(icondir) + var/cablesuffix = "[min(fromdir,dirnum)]-[max(fromdir,dirnum)]" + if(fromdir == dirnum) //cables can't loop back on themselves + cablesuffix = "invalid" + var/image/img = image(icon = 'icons/mob/radial.dmi', icon_state = "cable_[cablesuffix]") + img.color = GLOB.cable_colors[colors[current_color_index]] + wiredirs[icondir] = img + return wiredirs + +/obj/item/twohanded/rcl/proc/showWiringGui(mob/user) + var/list/choices = wiringGuiGenerateChoices(user) + + wiring_gui_menu = show_radial_menu_persistent(user, src , choices, select_proc = CALLBACK(src, .proc/wiringGuiReact, user), radius = 42) + +/obj/item/twohanded/rcl/proc/wiringGuiUpdate(mob/user) + if(!wiring_gui_menu) + return + + wiring_gui_menu.entry_animation = FALSE //stop the open anim from playing each time we update + var/list/choices = wiringGuiGenerateChoices(user) + + wiring_gui_menu.change_choices(choices,FALSE) + + +//Callback used to respond to interactions with the wiring menu +/obj/item/twohanded/rcl/proc/wiringGuiReact(mob/living/user,choice) + if(!choice) //close on a null choice (the center button) + QDEL_NULL(wiring_gui_menu) + return + + choice = text2num(choice) + + if(!isturf(user.loc)) + return + if(is_empty(user, 0)) + to_chat(user, "\The [src] is empty!") + return + + var/turf/T = get_turf(user) + if(T.intact || !T.can_have_cabling()) + return + + loaded.item_color = colors[current_color_index] + + var/obj/structure/cable/linkingCable = findLinkingCable(user) + if(linkingCable) + if(choice != linkingCable.d2) + loaded.cable_join(linkingCable, user, FALSE, choice) + last = null + else + last = loaded.place_turf(get_turf(src), user, choice) + + is_empty(user) //If we've run out, display message + + wiringGuiUpdate(user) + + /obj/item/twohanded/rcl/pre_loaded/Initialize() //Comes preloaded with cable, for testing stuff . = ..() loaded = new() @@ -192,12 +296,21 @@ update_icon() /obj/item/twohanded/rcl/ui_action_click(mob/user, action) - if(istype(action, /datum/action/item_action/rcl)) + if(istype(action, /datum/action/item_action/rcl_col)) current_color_index++; if (current_color_index > colors.len) current_color_index = 1 var/cwname = colors[current_color_index] to_chat(user, "Color changed to [cwname]!") + if(loaded) + loaded.item_color= colors[current_color_index] + if(wiring_gui_menu) + wiringGuiUpdate(user) + else if(istype(action, /datum/action/item_action/rcl_gui)) + if(wiring_gui_menu) //The menu is already open, close it + QDEL_NULL(wiring_gui_menu) + else //open the menu + showWiringGui(user) /obj/item/twohanded/rcl/ghetto actions_types = list() diff --git a/code/game/objects/items/RPD.dm b/code/game/objects/items/RPD.dm index e130fd4dbe2..f4a41dae23f 100644 --- a/code/game/objects/items/RPD.dm +++ b/code/game/objects/items/RPD.dm @@ -232,6 +232,10 @@ GLOBAL_LIST_INIT(transit_tube_recipes, list( playsound(get_turf(user), 'sound/items/deconstruct.ogg', 50, 1) return(BRUTELOSS) +/obj/item/pipe_dispenser/ui_base_html(html) + var/datum/asset/spritesheet/assets = get_asset_datum(/datum/asset/spritesheet/pipes) + . = replacetext(html, "", assets.css_tag()) + /obj/item/pipe_dispenser/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ datum/tgui/master_ui = null, datum/ui_state/state = GLOB.default_state) ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) @@ -274,7 +278,7 @@ GLOBAL_LIST_INIT(transit_tube_recipes, list( /obj/item/pipe_dispenser/ui_act(action, params) if(..()) return - if(!usr.canUseTopic(src)) + if(!usr.canUseTopic(src, BE_CLOSE)) return var/playeffect = TRUE switch(action) @@ -329,7 +333,7 @@ GLOBAL_LIST_INIT(transit_tube_recipes, list( //make sure what we're clicking is valid for the current category var/static/list/make_pipe_whitelist if(!make_pipe_whitelist) - make_pipe_whitelist = typecacheof(list(/obj/structure/lattice, /obj/structure/girder, /obj/item/pipe)) + make_pipe_whitelist = typecacheof(list(/obj/structure/lattice, /obj/structure/girder, /obj/item/pipe, /obj/structure/window, /obj/structure/grille)) var/can_make_pipe = (isturf(A) || is_type_in_typecache(A, make_pipe_whitelist)) . = FALSE diff --git a/code/game/objects/items/RSF.dm b/code/game/objects/items/RSF.dm index 6df370ef780..416a20dd647 100644 --- a/code/game/objects/items/RSF.dm +++ b/code/game/objects/items/RSF.dm @@ -173,7 +173,7 @@ RSF to_chat(user, "Fabricating Cookie..") var/obj/item/reagent_containers/food/snacks/cookie/S = new /obj/item/reagent_containers/food/snacks/cookie(T) if(toxin) - S.reagents.add_reagent("chloralhydratedelayed", 10) + S.reagents.add_reagent("chloralhydrate", 10) if (iscyborg(user)) var/mob/living/silicon/robot/R = user R.cell.charge -= 100 diff --git a/code/game/objects/items/blueprints.dm b/code/game/objects/items/blueprints.dm index 0d4ea67d2f8..e5b0617c63c 100644 --- a/code/game/objects/items/blueprints.dm +++ b/code/game/objects/items/blueprints.dm @@ -59,7 +59,7 @@ /obj/item/areaeditor/blueprints/attack_self(mob/user) . = ..() if(!legend) - var/area/A = get_area() + var/area/A = get_area(user) if(get_area_type() == AREA_STATION) . += "

According to \the [src], you are now in \"[html_encode(A.name)]\".

" . += "

Change area name

" @@ -140,12 +140,9 @@ legend = FALSE -/obj/item/areaeditor/proc/get_area() - var/turf/T = get_turf(usr) - var/area/A = T.loc - return A - -/obj/item/areaeditor/proc/get_area_type(area/A = get_area()) +/obj/item/areaeditor/proc/get_area_type(area/A) + if (!A) + A = get_area(usr) if(A.outdoors) return AREA_SPACE var/list/SPECIALS = list( @@ -183,7 +180,7 @@ return "" /obj/item/areaeditor/proc/edit_area() - var/area/A = get_area() + var/area/A = get_area(usr) var/prevname = "[A.name]" var/str = stripped_input(usr,"New area name:", "Area Creation", "", MAX_NAME_LEN) if(!str || !length(str) || str==prevname) //cancel diff --git a/code/game/objects/items/body_egg.dm b/code/game/objects/items/body_egg.dm index a8f5894b7c0..80fc0f43fd7 100644 --- a/code/game/objects/items/body_egg.dm +++ b/code/game/objects/items/body_egg.dm @@ -16,7 +16,7 @@ /obj/item/organ/body_egg/Insert(var/mob/living/carbon/M, special = 0) ..() - owner.add_trait(TRAIT_XENO_HOST, TRAIT_GENERIC) + ADD_TRAIT(owner, TRAIT_XENO_HOST, TRAIT_GENERIC) START_PROCESSING(SSobj, src) owner.med_hud_set_status() INVOKE_ASYNC(src, .proc/AddInfectionImages, owner) @@ -24,7 +24,7 @@ /obj/item/organ/body_egg/Remove(var/mob/living/carbon/M, special = 0) STOP_PROCESSING(SSobj, src) if(owner) - owner.remove_trait(TRAIT_XENO_HOST, TRAIT_GENERIC) + REMOVE_TRAIT(owner, TRAIT_XENO_HOST, TRAIT_GENERIC) owner.med_hud_set_status() INVOKE_ASYNC(src, .proc/RemoveInfectionImages, owner) ..() diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm index e6f275dcb1f..b961a6a4352 100644 --- a/code/game/objects/items/bodybag.dm +++ b/code/game/objects/items/bodybag.dm @@ -4,8 +4,8 @@ desc = "A folded bag designed for the storage and transportation of cadavers." icon = 'icons/obj/bodybag.dmi' icon_state = "bodybag_folded" - var/unfoldedbag_path = /obj/structure/closet/body_bag w_class = WEIGHT_CLASS_SMALL + var/unfoldedbag_path = /obj/structure/closet/body_bag /obj/item/bodybag/attack_self(mob/user) deploy_bodybag(user, user.loc) @@ -20,7 +20,8 @@ var/obj/structure/closet/body_bag/R = new unfoldedbag_path(location) R.open(user) R.add_fingerprint(user) - qdel(src) + R.foldedbag_instance = src + moveToNullspace() /obj/item/bodybag/suicide_act(mob/user) if(isopenturf(user.loc)) @@ -73,7 +74,8 @@ to_chat(A, "You suddenly feel air around you! You're free!") R.open(user) R.add_fingerprint(user) - qdel(src) + R.foldedbag_instance = src + moveToNullspace() /obj/item/bodybag/bluespace/container_resist(mob/living/user) if(user.incapacitated()) diff --git a/code/game/objects/items/candle.dm b/code/game/objects/items/candle.dm index b660801f904..1165501d9a9 100644 --- a/code/game/objects/items/candle.dm +++ b/code/game/objects/items/candle.dm @@ -8,72 +8,70 @@ item_state = "candle1" w_class = WEIGHT_CLASS_TINY light_color = LIGHT_COLOR_FIRE + heat = 1000 var/wax = 1000 var/lit = FALSE var/infinite = FALSE var/start_lit = FALSE - heat = 1000 /obj/item/candle/Initialize() . = ..() if(start_lit) - // No visible message - light(show_message = FALSE) + light() /obj/item/candle/update_icon() - var/i - if(wax>750) - i = 1 - else if(wax>400) - i = 2 - else i = 3 - icon_state = "candle[i][lit ? "_lit" : ""]" - + icon_state = "candle[(wax > 400) ? ((wax > 750) ? 1 : 2) : 3][lit ? "_lit" : ""]" /obj/item/candle/attackby(obj/item/W, mob/user, params) - ..() var/msg = W.ignition_effect(src, user) if(msg) light(msg) + else + return ..() /obj/item/candle/fire_act(exposed_temperature, exposed_volume) - if(!src.lit) + if(!lit) light() //honk - ..() + return ..() + +/obj/item/candle/is_hot() + return lit * heat /obj/item/candle/proc/light(show_message) - if(!src.lit) - src.lit = TRUE - //src.damtype = "fire" + if(!lit) + lit = TRUE if(show_message) usr.visible_message(show_message) set_light(CANDLE_LUMINOSITY) START_PROCESSING(SSobj, src) update_icon() +/obj/item/candle/proc/put_out_candle() + if(!lit) + return + lit = FALSE + update_icon() + set_light(0) + return TRUE + +/obj/item/candle/extinguish() + put_out_candle() + return ..() /obj/item/candle/process() if(!lit) - return + return PROCESS_KILL if(!infinite) wax-- if(!wax) - new/obj/item/trash/candle(src.loc) + new /obj/item/trash/candle(loc) qdel(src) update_icon() open_flame() /obj/item/candle/attack_self(mob/user) - if(lit) - user.visible_message( - "[user] snuffs [src].") - lit = FALSE - update_icon() - set_light(0) - -/obj/item/candle/is_hot() - return lit * heat - + if(put_out_candle()) + user.visible_message("[user] snuffs [src].") /obj/item/candle/infinite infinite = TRUE diff --git a/code/game/objects/items/cardboard_cutouts.dm b/code/game/objects/items/cardboard_cutouts.dm index fe51b0fc0ad..768c7ac2137 100644 --- a/code/game/objects/items/cardboard_cutouts.dm +++ b/code/game/objects/items/cardboard_cutouts.dm @@ -88,7 +88,7 @@ to_chat(user, "Take the cap off first!") return var/new_appearance = input(user, "Choose a new appearance for [src].", "26th Century Deception") as null|anything in possible_appearances - if(!new_appearance || !crayon || !user.canUseTopic(src)) + if(!new_appearance || !crayon || !user.canUseTopic(src, BE_CLOSE)) return if(!do_after(user, 10, FALSE, src, TRUE)) return diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index dbadf81eb5d..84738681ff3 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -125,6 +125,13 @@ if(mapload && access_txt) access = text2access(access_txt) +/obj/item/card/id/Destroy() + if (registered_account) + registered_account.bank_cards -= src + if (my_store && my_store.my_card == src) + my_store.my_card = null + return ..() + /obj/item/card/id/attack_self(mob/user) if(Adjacent(user)) user.visible_message("[user] shows you: [icon2html(src, viewers(user))] [src.name].", "You show \the [src.name].") @@ -175,9 +182,7 @@ return if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) return - if(user.get_active_held_item() != src) - to_chat(user, "You must hold the ID in your hand to do this.") - return + return TRUE /obj/item/card/id/AltClick(mob/living/user) @@ -199,8 +204,15 @@ return to_chat(user, "The account ID number provided is invalid.") return - var/amount_to_remove = input(user, "How much do you want to withdraw?", "Account Reclamation", 5) as num + + if (world.time < registered_account.withdrawDelay) + registered_account.bank_card_talk("ERROR: UNABLE TO LOGIN DUE TO SCHEDULED MAINTENANCE. MAINTENANCE IS SCHEDULED TO COMPLETE IN [(registered_account.withdrawDelay - world.time)/10] SECONDS.", TRUE) + return + + var/amount_to_remove = FLOOR(input(user, "How much do you want to withdraw? Current Balance: [registered_account.account_balance]", "Withdraw Funds", 5) as num, 1) + if(!amount_to_remove || amount_to_remove < 0) + to_chat(user, "You're pretty sure that's not how money works.") return if(!alt_click_can_use_id(user)) return @@ -210,7 +222,8 @@ to_chat(user, "You withdraw [amount_to_remove] credits into a holochip.") return else - to_chat(user, "The linked account doesn't have the funds for that.") + var/difference = amount_to_remove - registered_account.account_balance + registered_account.bank_card_talk("ERROR: The linked account requires [difference] more credit\s to perform that withdrawal.", TRUE) /obj/item/card/id/examine(mob/user) ..() @@ -222,7 +235,7 @@ var/datum/bank_account/D = SSeconomy.get_dep_account(registered_account.account_job.paycheck_department) if(D) to_chat(user, "The [D.account_holder] reports a balance of $[D.account_balance].") - to_chat(user, "Alt-Click the ID while holding it to pull money from the linked account in the form of holochips.") + to_chat(user, "Alt-Click the ID to pull money from the linked account in the form of holochips.") to_chat(user, "You can insert credits into the linked account by pressing holochips, cash, or coins against the ID.") if(registered_account.account_holder == user.real_name) to_chat(user, "If you lose this ID card, you can reclaim your account by Alt-Clicking a blank ID card while holding it and entering your account ID number.") @@ -291,29 +304,33 @@ update_label("John Doe", "Clowny") var/obj/item/card/id/I = O src.access |= I.access if(isliving(user) && user.mind) - if(user.mind.special_role) + if(user.mind.special_role || anyone) to_chat(usr, "The card's microscanners activate as you pass it over the ID, copying its access.") /obj/item/card/id/syndicate/attack_self(mob/user) if(isliving(user) && user.mind) - if(user.mind.special_role || anyone) - if(alert(user, "Action", "Agent ID", "Show", "Forge") == "Forge") - var/t = copytext(sanitize(input(user, "What name would you like to put on this card?", "Agent card name", registered_name ? registered_name : (ishuman(user) ? user.real_name : user.name))as text | null),1,26) - if(!t || t == "Unknown" || t == "floor" || t == "wall" || t == "r-wall") //Same as mob/dead/new_player/prefrences.dm - if (t) - alert("Invalid name.") - return - registered_name = t - - var/u = copytext(sanitize(input(user, "What occupation would you like to put on this card?\nNote: This will not grant any access levels other than Maintenance.", "Agent card job assignment", "Assistant")as text | null),1,MAX_MESSAGE_LEN) - if(!u) - registered_name = "" - return - assignment = u - update_label() - to_chat(user, "You successfully forge the ID card.") + if(!(user.mind.special_role || anyone)) //Unless anyone is allowed, only syndies can use the card, to stop metagaming. + if(!registered_name) //If a non-syndie is the first to forge an unassigned agent ID, then anyone can forge it. + anyone = TRUE + else + return ..() + if(alert(user, "Action", "Agent ID", "Show", "Forge") == "Forge") + var/t = copytext(sanitize(input(user, "What name would you like to put on this card?", "Agent card name", registered_name ? registered_name : (ishuman(user) ? user.real_name : user.name))as text | null),1,26) + if(!t || t == "Unknown" || t == "floor" || t == "wall" || t == "r-wall") //Same as mob/dead/new_player/prefrences.dm + if (t) + alert("Invalid name.") return - ..() + registered_name = t + + var/u = copytext(sanitize(input(user, "What occupation would you like to put on this card?\nNote: This will not grant any access levels other than Maintenance.", "Agent card job assignment", "Assistant")as text | null),1,MAX_MESSAGE_LEN) + if(!u) + registered_name = "" + return + assignment = u + update_label() + to_chat(user, "You successfully forge the ID card.") + return + return ..() /obj/item/card/id/syndicate/anyone anyone = TRUE diff --git a/code/game/objects/items/chrono_eraser.dm b/code/game/objects/items/chrono_eraser.dm index ba4e365e982..52841f06921 100644 --- a/code/game/objects/items/chrono_eraser.dm +++ b/code/game/objects/items/chrono_eraser.dm @@ -50,7 +50,7 @@ w_class = WEIGHT_CLASS_NORMAL item_flags = DROPDEL ammo_type = list(/obj/item/ammo_casing/energy/chrono_beam) - can_charge = 0 + can_charge = FALSE fire_delay = 50 var/obj/item/chrono_eraser/TED = null var/obj/structure/chrono_field/field = null @@ -58,7 +58,7 @@ /obj/item/gun/energy/chrono_gun/Initialize() . = ..() - add_trait(TRAIT_NODROP, CHRONO_GUN_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, CHRONO_GUN_TRAIT) if(istype(loc, /obj/item/chrono_eraser)) TED = loc else //admin must have spawned it @@ -124,7 +124,7 @@ name = "eradication beam" icon_state = "chronobolt" range = CHRONO_BEAM_RANGE - nodamage = 1 + nodamage = TRUE var/obj/item/gun/energy/chrono_gun/gun = null /obj/item/projectile/energy/chrono_beam/Initialize() diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index 3f50d9ba8ee..606ddb7df7c 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -644,7 +644,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM /obj/item/lighter/greyscale name = "cheap lighter" - desc = "A cheap-as-free lighter." + desc = "A cheap lighter." icon_state = "lighter" fancy = FALSE overlay_list = list( diff --git a/code/game/objects/items/circuitboards/computer_circuitboards.dm b/code/game/objects/items/circuitboards/computer_circuitboards.dm index 7acc09bc688..501342ce6c7 100644 --- a/code/game/objects/items/circuitboards/computer_circuitboards.dm +++ b/code/game/objects/items/circuitboards/computer_circuitboards.dm @@ -155,6 +155,10 @@ name = "Orion Trail (Computer Board)" build_path = /obj/machinery/computer/arcade/orion_trail +/obj/item/circuitboard/computer/arcade/amputation + name = "Mediborg's Amputation Adventure (Computer Board)" + build_path = /obj/machinery/computer/arcade/amputation + /obj/item/circuitboard/computer/turbine_control name = "Turbine control (Computer Board)" build_path = /obj/machinery/computer/turbine_computer diff --git a/code/game/objects/items/circuitboards/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machine_circuitboards.dm index f472b605130..1a4cd7a02ef 100644 --- a/code/game/objects/items/circuitboards/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machine_circuitboards.dm @@ -7,15 +7,6 @@ /obj/item/stack/cable_coil = 1, /obj/item/stack/sheet/glass = 2) -/obj/item/circuitboard/machine/vr_sleeper - name = "VR Sleeper (Machine Board)" - build_path = /obj/machinery/vr_sleeper - req_components = list( - /obj/item/stock_parts/manipulator = 1, - /obj/item/stack/cable_coil = 1, - /obj/item/stock_parts/scanning_module = 2, - /obj/item/stack/sheet/glass = 2) - /obj/item/circuitboard/machine/announcement_system name = "Announcement System (Machine Board)" build_path = /obj/machinery/announcement_system @@ -194,6 +185,14 @@ /obj/item/stack/cable_coil = 1, /obj/item/stock_parts/subspace/filter = 1) +/obj/item/circuitboard/machine/telecomms/message_server + name = "Messaging Server (Machine Board)" + build_path = /obj/machinery/telecomms/message_server + req_components = list( + /obj/item/stock_parts/manipulator = 2, + /obj/item/stack/cable_coil = 1, + /obj/item/stock_parts/subspace/filter = 3) + /obj/item/circuitboard/machine/teleporter_hub name = "Teleporter Hub (Machine Board)" build_path = /obj/machinery/teleport/hub @@ -244,16 +243,28 @@ /obj/machinery/vending/wardrobe/viro_wardrobe = "ViroDrobe", /obj/machinery/vending/clothing = "ClothesMate", /obj/machinery/vending/medical = "NanoMed Plus", - /obj/machinery/vending/wallmed = "NanoMed") + /obj/machinery/vending/wallmed = "NanoMed", + /obj/machinery/vending/assist = "Vendomat", + /obj/machinery/vending/engivend = "Engi-Vend", + /obj/machinery/vending/hydronutrients = "NutriMax", + /obj/machinery/vending/hydroseeds = "MegaSeed Servitor", + /obj/machinery/vending/sustenance = "Sustenance Vendor", + /obj/machinery/vending/dinnerware = "Plasteel Chef's Dinnerware Vendor", + /obj/machinery/vending/cart = "PTech", + /obj/machinery/vending/robotics = "Robotech Deluxe", + /obj/machinery/vending/engineering = "Robco Tool Maker", + /obj/machinery/vending/sovietsoda = "BODA", + /obj/machinery/vending/modularpc = "Deluxe Silicate Selections") /obj/item/circuitboard/machine/vendor/attackby(obj/item/I, mob/user, params) if(I.tool_behaviour == TOOL_SCREWDRIVER) - var/position = vending_names_paths.Find(build_path) - position = (position == vending_names_paths.len) ? 1 : (position + 1) - var/typepath = vending_names_paths[position] - - to_chat(user, "You set the board to \"[vending_names_paths[typepath]]\".") - set_type(typepath) + var/static/list/display_vending_names_paths + if(!display_vending_names_paths) + display_vending_names_paths = list() + for(var/path in vending_names_paths) + display_vending_names_paths[vending_names_paths[path]] = path + var/choice = input(user,"Choose a new brand","Select an Item") as null|anything in display_vending_names_paths + set_type(display_vending_names_paths[choice]) else return ..() @@ -984,3 +995,17 @@ name = "Pay Stand (Machine Board)" build_path = /obj/machinery/paystand req_components = list() + +/obj/item/circuitboard/machine/fat_sucker + name = "Lipid Extractor (Machine Board)" + build_path = /obj/machinery/fat_sucker + req_components = list(/obj/item/stock_parts/micro_laser = 1, + /obj/item/kitchen/fork = 1) + +/obj/item/circuitboard/machine/stasis + name = "Lifeform Stasis Unit (Machine Board)" + build_path = /obj/machinery/stasis + req_components = list( + /obj/item/stack/cable_coil = 3, + /obj/item/stock_parts/manipulator = 1, + /obj/item/stock_parts/capacitor = 1) diff --git a/code/game/objects/items/clown_items.dm b/code/game/objects/items/clown_items.dm index a4a429fc96e..83e71939028 100644 --- a/code/game/objects/items/clown_items.dm +++ b/code/game/objects/items/clown_items.dm @@ -28,7 +28,7 @@ force_string = "robust... against germs" var/uses = 100 -/obj/item/soap/Initialize() +/obj/item/soap/ComponentInitialize() . = ..() AddComponent(/datum/component/slippery, 80) @@ -39,13 +39,13 @@ if(uses != max_uses) var/percentage_left = uses / max_uses switch(percentage_left) - if(0 to 14) + if(0 to 0.15) msg = "There's just a tiny bit left of what it used to be, you're not sure it'll last much longer." - if(15 to 29) + if(0.15 to 0.30) msg = "It's dissolved quite a bit, but there's still some life to it." - if(30 to 49) + if(0.30 to 0.50) msg = "It's past its prime, but it's definitely still good." - if(50 to 74) + if(0.50 to 0.75) msg = "It's started to get a little smaller than it used to be, but it'll definitely still last for a while." else msg = "It's seen some light use, but it's still pretty fresh." @@ -147,13 +147,15 @@ throwforce = 0 hitsound = null //To prevent tap.ogg playing, as the item lacks of force w_class = WEIGHT_CLASS_TINY + slot_flags = ITEM_SLOT_BACK|ITEM_SLOT_BELT throw_speed = 3 throw_range = 7 attack_verb = list("HONKED") + var/component = /datum/component/squeak/bikehorn /obj/item/bikehorn/Initialize() . = ..() - AddComponent(/datum/component/squeak, /datum/outputs/bikehorn, 50) + AddComponent(component, 50) /obj/item/bikehorn/attack(mob/living/carbon/M, mob/living/carbon/user) SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "honk", /datum/mood_event/honk) @@ -169,10 +171,7 @@ name = "air horn" desc = "Damn son, where'd you find this?" icon_state = "air_horn" - -/obj/item/bikehorn/airhorn/Initialize() - . = ..() - AddComponent(/datum/component/squeak, /datum/outputs/airhorn, 50) + component = /datum/component/squeak/airhorn //golden bikehorn /obj/item/bikehorn/golden diff --git a/code/game/objects/items/cosmetics.dm b/code/game/objects/items/cosmetics.dm index 03a751c2b90..db7b86b502c 100644 --- a/code/game/objects/items/cosmetics.dm +++ b/code/game/objects/items/cosmetics.dm @@ -131,60 +131,97 @@ to_chat(user, "[H] doesn't have a head!") return if(location == BODY_ZONE_PRECISE_MOUTH) - if(!(FACEHAIR in H.dna.species.species_traits)) - to_chat(user, "There is no facial hair to shave!") - return - if(!get_location_accessible(H, location)) - to_chat(user, "The mask is in the way!") - return - if(H.facial_hair_style == "Shaved") - to_chat(user, "Already clean-shaven!") - return + if(user.a_intent == INTENT_HELP) + if(H.gender == MALE) + if (H == user) + to_chat(user, "You need a mirror to properly style your own facial hair!") + return + if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + return + var/new_style = input(user, "Select a facial hair style", "Grooming") as null|anything in GLOB.facial_hair_styles_list + if(!get_location_accessible(H, location)) + to_chat(user, "The mask is in the way!") + return + user.visible_message("[user] tries to change [H]'s facial hair style using [src].", "You try to change [H]'s facial hair style using [src].") + if(new_style && do_after(user, 60, target = H)) + user.visible_message("[user] successfully changes [H]'s facial hair style using [src].", "You successfully change [H]'s facial hair style using [src].") + H.facial_hair_style = new_style + H.update_hair() + return + else + return - if(H == user) //shaving yourself - user.visible_message("[user] starts to shave [user.p_their()] facial hair with [src].", \ - "You take a moment to shave your facial hair with [src]...") - if(do_after(user, 50, target = H)) - user.visible_message("[user] shaves [user.p_their()] facial hair clean with [src].", \ - "You finish shaving with [src]. Fast and clean!") - shave(H, location) else - var/turf/H_loc = H.loc - user.visible_message("[user] tries to shave [H]'s facial hair with [src].", \ - "You start shaving [H]'s facial hair...") - if(do_after(user, 50, target = H)) - if(H_loc == H.loc) + if(!(FACEHAIR in H.dna.species.species_traits)) + to_chat(user, "There is no facial hair to shave!") + return + if(!get_location_accessible(H, location)) + to_chat(user, "The mask is in the way!") + return + if(H.facial_hair_style == "Shaved") + to_chat(user, "Already clean-shaven!") + return + + if(H == user) //shaving yourself + user.visible_message("[user] starts to shave [user.p_their()] facial hair with [src].", \ + "You take a moment to shave your facial hair with [src]...") + if(do_after(user, 50, target = H)) + user.visible_message("[user] shaves [user.p_their()] facial hair clean with [src].", \ + "You finish shaving with [src]. Fast and clean!") + shave(H, location) + else + user.visible_message("[user] tries to shave [H]'s facial hair with [src].", \ + "You start shaving [H]'s facial hair...") + if(do_after(user, 50, target = H)) user.visible_message("[user] shaves off [H]'s facial hair with [src].", \ "You shave [H]'s facial hair clean off.") shave(H, location) else if(location == BODY_ZONE_HEAD) - if(!(HAIR in H.dna.species.species_traits)) - to_chat(user, "There is no hair to shave!") - return - if(!get_location_accessible(H, location)) - to_chat(user, "The headgear is in the way!") - return - if(H.hair_style == "Bald" || H.hair_style == "Balding Hair" || H.hair_style == "Skinhead") - to_chat(user, "There is not enough hair left to shave!") - return + if(user.a_intent == INTENT_HELP) + if (H == user) + to_chat(user, "You need a mirror to properly style your own hair!") + return + if(!user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + return + var/new_style = input(user, "Select a hair style", "Grooming") as null|anything in GLOB.hair_styles_list + if(!get_location_accessible(H, location)) + to_chat(user, "The headgear is in the way!") + return + user.visible_message("[user] tries to change [H]'s hairstyle using [src].", "You try to change [H]'s hairstyle using [src].") + if(new_style && do_after(user, 60, target = H)) + user.visible_message("[user] successfully changes [H]'s hairstyle using [src].", "You successfully change [H]'s hairstyle using [src].") + H.hair_style = new_style + H.update_hair() + return - if(H == user) //shaving yourself - user.visible_message("[user] starts to shave [user.p_their()] head with [src].", \ - "You start to shave your head with [src]...") - if(do_after(user, 5, target = H)) - user.visible_message("[user] shaves [user.p_their()] head with [src].", \ - "You finish shaving with [src].") - shave(H, location) else - var/turf/H_loc = H.loc - user.visible_message("[user] tries to shave [H]'s head with [src]!", \ - "You start shaving [H]'s head...") - if(do_after(user, 50, target = H)) - if(H_loc == H.loc) - user.visible_message("[user] shaves [H]'s head bald with [src]!", \ - "You shave [H]'s head bald.") + if(!(HAIR in H.dna.species.species_traits)) + to_chat(user, "There is no hair to shave!") + return + if(!get_location_accessible(H, location)) + to_chat(user, "The headgear is in the way!") + return + if(H.hair_style == "Bald" || H.hair_style == "Balding Hair" || H.hair_style == "Skinhead") + to_chat(user, "There is not enough hair left to shave!") + return + + if(H == user) //shaving yourself + user.visible_message("[user] starts to shave [user.p_their()] head with [src].", \ + "You start to shave your head with [src]...") + if(do_after(user, 5, target = H)) + user.visible_message("[user] shaves [user.p_their()] head with [src].", \ + "You finish shaving with [src].") shave(H, location) + else + var/turf/H_loc = H.loc + user.visible_message("[user] tries to shave [H]'s head with [src]!", \ + "You start shaving [H]'s head...") + if(do_after(user, 50, target = H)) + if(H_loc == H.loc) + user.visible_message("[user] shaves [H]'s head bald with [src]!", \ + "You shave [H]'s head bald.") + shave(H, location) else ..() else diff --git a/code/game/objects/items/crab17.dm b/code/game/objects/items/crab17.dm new file mode 100644 index 00000000000..8a065e732ec --- /dev/null +++ b/code/game/objects/items/crab17.dm @@ -0,0 +1,229 @@ +/obj/item/suspiciousphone + name = "suspicious phone" + desc = "This device raises pink levels to unknown highs." + icon = 'icons/obj/items_and_weapons.dmi' + icon_state = "suspiciousphone" + w_class = WEIGHT_CLASS_SMALL + attack_verb = list("dumped") + var/dumped = FALSE + +/obj/item/suspiciousphone/attack_self(mob/user) + if(!ishuman(user)) + to_chat(user, "This device is too advanced for you!") + return + if(dumped) + to_chat(user, "You already activated Protocol CRAB-17.") + return FALSE + if(alert(user, "Are you sure you want to crash this market with no survivors?", "Protocol CRAB-17", "Yes", "No") == "Yes") + if(dumped || QDELETED(src)) //Prevents fuckers from cheesing alert + return FALSE + var/turf/targetturf = get_safe_random_station_turf() + if (!targetturf) + return FALSE + new /obj/effect/dumpeetTarget(targetturf, user) + dumped = TRUE + +/obj/structure/checkoutmachine + name = "Nanotrasen Space-Coin Market" + desc = "This is good for spacecoin because" + icon = 'icons/obj/money_machine.dmi' + icon_state = "bogdanoff" + layer = TABLE_LAYER //So that the crate inside doesn't appear underneath + armor = list("melee" = 30, "bullet" = 50, "laser" = 50, "energy" = 100, "bomb" = 100, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 80) + density = TRUE + pixel_z = -8 + layer = LARGE_MOB_LAYER + max_integrity = 600 + var/list/accounts_to_rob + var/mob/living/carbon/human/bogdanoff + var/canwalk = FALSE + +/obj/structure/checkoutmachine/examine(mob/living/user) + ..() + to_chat(user, "It's integrated integrity meter reads: HEALTH: [obj_integrity].") + +/obj/structure/checkoutmachine/proc/check_if_finished() + for(var/i in accounts_to_rob) + var/datum/bank_account/B = i + if (B.being_dumped) + return FALSE + return TRUE + +/obj/structure/checkoutmachine/attackby(obj/item/W, mob/user, params) + if(check_if_finished()) + qdel(src) + return + if(istype(W, /obj/item/card/id)) + var/obj/item/card/id/card = W + if(!card.registered_account) + to_chat(user, "This card does not have a registered account!") + return + if(!card.registered_account.being_dumped) + to_chat(user, "It appears that your funds are safe from draining!") + return + if(do_after(user, 40, target = src)) + if(!card.registered_account.being_dumped) + return + to_chat(user, "You quickly cash out your funds to a more secure banking location. Funds are safu.") + card.registered_account.being_dumped = FALSE + card.registered_account.withdrawDelay = 0 + if(check_if_finished()) + qdel(src) + return + else + return ..() + +/obj/structure/checkoutmachine/Initialize(mapload, mob/living/user) + . = ..() + bogdanoff = user + add_overlay("flaps") + add_overlay("hatch") + add_overlay("legs_retracted") + addtimer(CALLBACK(src, .proc/startUp), 50) + + +/obj/structure/checkoutmachine/proc/startUp() //very VERY snowflake code that adds a neat animation when the pod lands. + start_dumping() //The machine doesnt move during this time, giving people close by a small window to grab their funds before it starts running around + sleep(10) + if(QDELETED(src)) + return + playsound(src, 'sound/machines/click.ogg', 15, 1, -3) + cut_overlay("flaps") + sleep(10) + if(QDELETED(src)) + return + playsound(src, 'sound/machines/click.ogg', 15, 1, -3) + cut_overlay("hatch") + sleep(30) + if(QDELETED(src)) + return + playsound(src,'sound/machines/twobeep.ogg',50,0) + var/mutable_appearance/hologram = mutable_appearance(icon, "hologram") + hologram.pixel_y = 16 + add_overlay(hologram) + var/mutable_appearance/holosign = mutable_appearance(icon, "holosign") + holosign.pixel_y = 16 + add_overlay(holosign) + add_overlay("legs_extending") + cut_overlay("legs_retracted") + pixel_z += 4 + sleep(5) + if(QDELETED(src)) + return + add_overlay("legs_extended") + cut_overlay("legs_extending") + pixel_z += 4 + sleep(20) + if(QDELETED(src)) + return + add_overlay("screen_lines") + sleep(5) + if(QDELETED(src)) + return + cut_overlay("screen_lines") + sleep(5) + if(QDELETED(src)) + return + add_overlay("screen_lines") + add_overlay("screen") + sleep(5) + if(QDELETED(src)) + return + playsound(src,'sound/machines/triple_beep.ogg',50,0) + add_overlay("text") + sleep(10) + if(QDELETED(src)) + return + add_overlay("legs") + cut_overlay("legs_extended") + cut_overlay("screen") + add_overlay("screen") + cut_overlay("screen_lines") + add_overlay("screen_lines") + cut_overlay("text") + add_overlay("text") + canwalk = TRUE + START_PROCESSING(SSfastprocess, src) + +/obj/structure/checkoutmachine/Destroy() + stop_dumping() + STOP_PROCESSING(SSfastprocess, src) + priority_announce("The credit deposit machine at [get_area(src)] has been destroyed. Station funds have stopped draining!", sender_override = "CRAB-17 Protocol") + explosion(src, 0,0,1, flame_range = 2) + return ..() + +/obj/structure/checkoutmachine/proc/start_dumping() + accounts_to_rob = SSeconomy.bank_accounts.Copy() + accounts_to_rob -= bogdanoff.get_bank_account() + for(var/i in accounts_to_rob) + var/datum/bank_account/B = i + B.dumpeet() + dump() + +/obj/structure/checkoutmachine/proc/dump() + var/percentage_lost = (rand(1, 10) / 100) + for(var/i in accounts_to_rob) + var/datum/bank_account/B = i + if(!B.being_dumped) + continue + var/amount = B.account_balance * percentage_lost + var/datum/bank_account/account = bogdanoff.get_bank_account() + if (account) // get_bank_account() may return FALSE + account.transfer_money(B, amount) + B.bank_card_talk("You have lost [percentage_lost * 100]% of your funds! A spacecoin credit deposit machine is located at: [get_area(src)].") + addtimer(CALLBACK(src, .proc/dump), 150) //Drain every 15 seconds + +/obj/structure/checkoutmachine/process() + var/anydir = pick(GLOB.cardinals) + if(Process_Spacemove(anydir)) + Move(get_step(src, anydir), anydir) + +/obj/structure/checkoutmachine/proc/stop_dumping() + for(var/i in accounts_to_rob) + var/datum/bank_account/B = i + B.being_dumped = FALSE + +/obj/effect/dumpeetFall //Falling pod + name = "" + icon = 'icons/obj/money_machine_64.dmi' + pixel_z = 300 + desc = "Get out of the way!" + layer = FLY_LAYER//that wasnt flying, that was falling with style! + icon_state = "missile_blur" + +/obj/effect/dumpeetTarget + name = "Landing Zone Indicator" + desc = "A holographic projection designating the landing zone of something. It's probably best to stand back." + icon = 'icons/mob/actions/actions_items.dmi' + icon_state = "sniper_zoom" + layer = PROJECTILE_HIT_THRESHHOLD_LAYER + light_range = 2 + var/obj/effect/dumpeetFall/DF + var/obj/structure/checkoutmachine/dump + var/mob/living/carbon/human/bogdanoff + +/obj/effect/ex_act() + return + +/obj/effect/dumpeetTarget/Initialize(mapload, user) + . = ..() + bogdanoff = user + addtimer(CALLBACK(src, .proc/startLaunch), 100) + sound_to_playing_players('sound/items/dump_it.ogg', 20) + deadchat_broadcast("Protocol CRAB-17 has been activated. A space-coin market has been launched at the station!", turf_target = get_turf(src)) + +/obj/effect/dumpeetTarget/proc/startLaunch() + DF = new /obj/effect/dumpeetFall(drop_location()) + dump = new /obj/structure/checkoutmachine(null, bogdanoff) + priority_announce("The spacecoin bubble has popped! Get to the credit deposit machine at [get_area(src)] and cash out before you lose all of your funds!", sender_override = "CRAB-17 Protocol") + animate(DF, pixel_z = -8, time = 5, , easing = LINEAR_EASING) + playsound(src, 'sound/weapons/mortar_whistle.ogg', 70, 1, 6) + addtimer(CALLBACK(src, .proc/endLaunch), 5, TIMER_CLIENT_TIME) //Go onto the last step after a very short falling animation + + + +/obj/effect/dumpeetTarget/proc/endLaunch() + QDEL_NULL(DF) //Delete the falling machine effect, because at this point its animation is over. We dont use temp_visual because we want to manually delete it as soon as the pod appears + playsound(src, "explosion", 80, 1) + dump.forceMove(get_turf(src)) + qdel(src) //The target's purpose is complete. It can rest easy now diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index d93aebbf6ae..8e789040dcb 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -279,7 +279,7 @@ cost = 0 if(ishuman(user)) var/mob/living/carbon/human/H = user - if (H.has_trait(TRAIT_TAGGER)) + if (HAS_TRAIT(H, TRAIT_TAGGER)) cost *= 0.5 var/charges_used = use_charges(user, cost) if(!charges_used) @@ -488,7 +488,7 @@ charges = -1 -/obj/item/toy/crayon/rainbow/afterattack(atom/target, mob/user, proximity) +/obj/item/toy/crayon/rainbow/afterattack(atom/target, mob/user, proximity, params) paint_color = rgb(rand(0,255), rand(0,255), rand(0,255)) . = ..() @@ -614,7 +614,7 @@ to_chat(user, "It is empty.") to_chat(user, "Alt-click [src] to [ is_capped ? "take the cap off" : "put the cap on"].") -/obj/item/toy/crayon/spraycan/afterattack(atom/target, mob/user, proximity) +/obj/item/toy/crayon/spraycan/afterattack(atom/target, mob/user, proximity, params) if(!proximity) return @@ -654,10 +654,11 @@ if(isobj(target)) if(actually_paints) target.add_atom_colour(paint_color, WASHABLE_COLOUR_PRIORITY) - if(color_hex2num(paint_color) < 255 && istype(target, /obj/structure/window)) - target.set_opacity(255) - else - target.set_opacity(initial(target.opacity)) + if(istype(target, /obj/structure/window)) + if(color_hex2num(paint_color) < 255) + target.set_opacity(255) + else + target.set_opacity(initial(target.opacity)) . = use_charges(user, 2) var/fraction = min(1, . / reagents.maximum_volume) reagents.reaction(target, TOUCH, fraction * volume_multiplier) @@ -683,7 +684,7 @@ desc = "A metallic container containing shiny synthesised paint." charges = -1 -/obj/item/toy/crayon/spraycan/borg/afterattack(atom/target,mob/user,proximity) +/obj/item/toy/crayon/spraycan/borg/afterattack(atom/target,mob/user,proximity, params) var/diff = ..() if(!iscyborg(user)) to_chat(user, "How did you get this?") diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index 333e352741f..ef8947da226 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -437,7 +437,7 @@ do_help(H, user) /obj/item/twohanded/shockpaddles/proc/can_defib(mob/living/carbon/H) - if(H.suiciding || H.hellbound || H.has_trait(TRAIT_HUSK)) + if(H.suiciding || H.hellbound || HAS_TRAIT(H, TRAIT_HUSK)) return if((world.time - H.timeofdeath) > tlimit) return @@ -453,7 +453,7 @@ /obj/item/twohanded/shockpaddles/proc/shock_touching(dmg, mob/H) if(isliving(H.pulledby)) //CLEAR! var/mob/living/M = H.pulledby - if(M.electrocute_act(30, src)) + if(M.electrocute_act(30, H)) M.visible_message("[M] is electrocuted by [M.p_their()] contact with [H]!") M.emote("scream") @@ -577,7 +577,7 @@ failed = "[req_defib ? "[defib]" : "[src]"] buzzes: Resuscitation failed - Body has decayed for too long. Further attempts futile." else if (!H.getorgan(/obj/item/organ/heart)) failed = "[req_defib ? "[defib]" : "[src]"] buzzes: Resuscitation failed - Patient's heart is missing." - else if(total_burn >= MAX_REVIVE_FIRE_DAMAGE || total_brute >= MAX_REVIVE_BRUTE_DAMAGE || H.has_trait(TRAIT_HUSK)) + else if(total_burn >= MAX_REVIVE_FIRE_DAMAGE || total_brute >= MAX_REVIVE_BRUTE_DAMAGE || HAS_TRAIT(H, TRAIT_HUSK)) failed = "[req_defib ? "[defib]" : "[src]"] buzzes: Resuscitation failed - Severe tissue damage makes recovery of patient impossible via defibrillator. Further attempts futile." else if(H.get_ghost()) failed = "[req_defib ? "[defib]" : "[src]"] buzzes: Resuscitation failed - No activity in patient's brain. Further attempts may be successful." diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index e22e411e616..162dddf3a63 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -61,7 +61,6 @@ GLOBAL_LIST_EMPTY(PDAs) var/note = "Congratulations, your station has chosen the Thinktronic 5230 Personal Data Assistant!" //Current note in the notepad function var/notehtml = "" var/notescanned = FALSE // True if what is in the notekeeper was from a paper. - var/detonatable = TRUE // Can the PDA be blown up? var/hidden = FALSE // Is the PDA hidden from the PDA list? var/emped = FALSE var/equipped = FALSE //used here to determine if this is the first time its been picked up @@ -555,9 +554,8 @@ GLOBAL_LIST_EMPTY(PDAs) if("1") // Configure pAI device pai.attack_self(U) if("2") // Eject pAI device - var/turf/T = get_turf(loc) - if(T) - pai.forceMove(T) + usr.put_in_hands(pai) + to_chat(usr, "You remove the pAI from the [name].") //LINK FUNCTIONS=================================== @@ -632,7 +630,7 @@ GLOBAL_LIST_EMPTY(PDAs) if (!string_targets.len) return - var/datum/signal/subspace/pda/signal = new(src, list( + var/datum/signal/subspace/messaging/pda/signal = new(src, list( "name" = "[owner]", "job" = "[ownjob]", "message" = message, @@ -664,11 +662,11 @@ GLOBAL_LIST_EMPTY(PDAs) if (everyone) last_everyone = world.time -/obj/item/pda/proc/receive_message(datum/signal/subspace/pda/signal) +/obj/item/pda/proc/receive_message(datum/signal/subspace/messaging/pda/signal) tnote += "← From [signal.data["name"]] ([signal.data["job"]]):
[signal.format_message()]
" if (!silent) - playsound(src, 'sound/machines/twobeep.ogg', 50, 1) + playsound(src, 'sound/machines/twobeep_high.ogg', 50, 1) audible_message("[icon2html(src, hearers(src))] *[ttone]*", null, 3) //Search for holder of the PDA. var/mob/living/L = null @@ -893,8 +891,6 @@ GLOBAL_LIST_EMPTY(PDAs) /obj/item/pda/proc/explode() //This needs tuning. - if(!detonatable) - return var/turf/T = get_turf(src) if (ismob(loc)) @@ -926,7 +922,7 @@ GLOBAL_LIST_EMPTY(PDAs) //AI verb and proc for sending PDA messages. -/mob/living/silicon/ai/proc/cmd_send_pdamesg(mob/user) +/mob/living/silicon/proc/cmd_send_pdamesg(mob/user) var/list/plist = list() var/list/namecounts = list() @@ -961,7 +957,7 @@ GLOBAL_LIST_EMPTY(PDAs) aiPDA.create_message(src, selected) -/mob/living/silicon/ai/verb/cmd_toggle_pda_receiver() +/mob/living/silicon/verb/cmd_toggle_pda_receiver() set category = "AI Commands" set name = "PDA - Toggle Sender/Receiver" if(usr.stat == DEAD) @@ -972,7 +968,7 @@ GLOBAL_LIST_EMPTY(PDAs) else to_chat(usr, "You do not have a PDA. You should make an issue report about this.") -/mob/living/silicon/ai/verb/cmd_toggle_pda_silent() +/mob/living/silicon/verb/cmd_toggle_pda_silent() set category = "AI Commands" set name = "PDA - Toggle Ringer" if(usr.stat == DEAD) @@ -984,7 +980,7 @@ GLOBAL_LIST_EMPTY(PDAs) else to_chat(usr, "You do not have a PDA. You should make an issue report about this.") -/mob/living/silicon/ai/proc/cmd_show_message_log(mob/user) +/mob/living/silicon/proc/cmd_show_message_log(mob/user) if(incapacitated()) return if(!isnull(aiPDA)) @@ -1013,6 +1009,9 @@ GLOBAL_LIST_EMPTY(PDAs) continue . += P +/obj/item/pda/proc/pda_no_detonate() + return COMPONENT_PDA_NO_DETONATE + #undef PDA_SCANNER_NONE #undef PDA_SCANNER_MEDICAL #undef PDA_SCANNER_FORENSICS diff --git a/code/game/objects/items/devices/PDA/PDA_types.dm b/code/game/objects/items/devices/PDA/PDA_types.dm index b4903ac5c7b..299b07f08ba 100644 --- a/code/game/objects/items/devices/PDA/PDA_types.dm +++ b/code/game/objects/items/devices/PDA/PDA_types.dm @@ -7,7 +7,7 @@ desc = "A portable microcomputer by Thinktronic Systems, LTD. The surface is coated with polytetrafluoroethylene and banana drippings." ttone = "honk" -/obj/item/pda/clown/Initialize() +/obj/item/pda/clown/ComponentInitialize() . = ..() AddComponent(/datum/component/slippery, 120, NO_SLIP_WHEN_WALKING, CALLBACK(src, .proc/AfterSlip)) @@ -22,7 +22,6 @@ icon = null ttone = "data" fon = FALSE - detonatable = FALSE /obj/item/pda/ai/attack_self(mob/user) if ((honkamt > 0) && (prob(60)))//For clown virus. @@ -33,7 +32,9 @@ /obj/item/pda/ai/pai ttone = "assist" - +/obj/item/pda/ai/Initialize() + . = ..() + RegisterSignal(src, COMSIG_PDA_CHECK_DETONATE, .proc/pda_no_detonate) /obj/item/pda/medical name = "medical PDA" @@ -120,7 +121,10 @@ default_cartridge = /obj/item/cartridge/captain inserted_item = /obj/item/pen/fountain/captain icon_state = "pda-captain" - detonatable = FALSE + +/obj/item/pda/captain/Initialize() + . = ..() + RegisterSignal(src, COMSIG_PDA_CHECK_DETONATE, .proc/pda_no_detonate) /obj/item/pda/cargo name = "cargo technician PDA" diff --git a/code/game/objects/items/devices/PDA/cart.dm b/code/game/objects/items/devices/PDA/cart.dm index 4fbe8f3e07e..4c11a8a2c30 100644 --- a/code/game/objects/items/devices/PDA/cart.dm +++ b/code/game/objects/items/devices/PDA/cart.dm @@ -31,7 +31,7 @@ var/remote_door_id = "" - var/bot_access_flags = 0 //Bit flags. Selection: SEC_BOT | MULE_BOT | FLOOR_BOT | CLEAN_BOT | MED_BOT + var/bot_access_flags = 0 //Bit flags. Selection: SEC_BOT | MULE_BOT | FLOOR_BOT | CLEAN_BOT | MED_BOT | FIRE_BOT var/spam_enabled = 0 //Enables "Send to All" Option var/obj/item/pda/host_pda = null @@ -65,7 +65,7 @@ name = "\improper BreatheDeep cartridge" icon_state = "cart-a" access = CART_ATMOS | CART_DRONEPHONE - bot_access_flags = FLOOR_BOT + bot_access_flags = FLOOR_BOT | FIRE_BOT /obj/item/cartridge/medical name = "\improper Med-U cartridge" @@ -111,8 +111,8 @@ /obj/item/cartridge/roboticist name = "\improper B.O.O.P. Remote Control cartridge" - desc = "Packed with heavy duty triple-bot interlink!" - bot_access_flags = FLOOR_BOT | CLEAN_BOT | MED_BOT + desc = "Packed with heavy duty quad-bot interlink!" + bot_access_flags = FLOOR_BOT | CLEAN_BOT | MED_BOT | FIRE_BOT access = CART_DRONEPHONE /obj/item/cartridge/signal @@ -160,7 +160,7 @@ name = "\improper Power-On DELUXE cartridge" icon_state = "cart-ce" access = CART_MANIFEST | CART_STATUS_DISPLAY | CART_ENGINE | CART_ATMOS | CART_DRONEPHONE - bot_access_flags = FLOOR_BOT + bot_access_flags = FLOOR_BOT | FIRE_BOT /obj/item/cartridge/cmo name = "\improper Med-U DELUXE cartridge" @@ -172,7 +172,7 @@ name = "\improper Signal Ace DELUXE cartridge" icon_state = "cart-rd" access = CART_MANIFEST | CART_STATUS_DISPLAY | CART_REAGENT_SCANNER | CART_ATMOS | CART_DRONEPHONE - bot_access_flags = FLOOR_BOT | CLEAN_BOT | MED_BOT + bot_access_flags = FLOOR_BOT | CLEAN_BOT | MED_BOT | FIRE_BOT /obj/item/cartridge/rd/Initialize() . = ..() @@ -183,7 +183,7 @@ desc = "Now with 350% more value!" //Give the Captain...EVERYTHING! (Except Mime, Clown, and Syndie) icon_state = "cart-c" access = ~(CART_CLOWN | CART_MIME | CART_REMOTE_DOOR) - bot_access_flags = SEC_BOT | MULE_BOT | FLOOR_BOT | CLEAN_BOT | MED_BOT + bot_access_flags = SEC_BOT | MULE_BOT | FLOOR_BOT | CLEAN_BOT | MED_BOT | FIRE_BOT spam_enabled = 1 /obj/item/cartridge/captain/Initialize() @@ -543,7 +543,7 @@ Code: current = chan if(!current) menu += "
ERROR : NO CHANNEL FOUND
" - return + return menu var/i = 1 for(var/datum/newscaster/feed_message/msg in current.messages) menu +="-[msg.returnBody(-1)]
\[Story by [msg.returnAuthor(-1)]\]
" @@ -662,8 +662,9 @@ Code: active_bot.bot_control(command= href_list["op"], user= usr) if(href_list["mule"]) //MULEbots are special snowflakes, and need different args due to how they work. - - active_bot.bot_control(command= href_list["mule"], user= usr, pda= 1) + var/mob/living/simple_animal/bot/mulebot/mule = active_bot + if (istype(mule)) + mule.bot_control(command=href_list["mule"], user=usr, pda=TRUE) if(!host_pda) return @@ -735,4 +736,4 @@ Code: return "" //This is called for special abilities of cartridges -/obj/item/cartridge/proc/special(mov/living/user, list/params) +/obj/item/cartridge/proc/special(mob/living/user, list/params) diff --git a/code/game/objects/items/devices/PDA/virus_cart.dm b/code/game/objects/items/devices/PDA/virus_cart.dm index ecd51b6b227..80a5aceae1d 100644 --- a/code/game/objects/items/devices/PDA/virus_cart.dm +++ b/code/game/objects/items/devices/PDA/virus_cart.dm @@ -71,8 +71,7 @@ difficulty++ //if cartridge has manifest access it has extra snowflake difficulty else difficulty += 2 - GET_COMPONENT_FROM(hidden_uplink, /datum/component/uplink, target) - if(!target.detonatable || prob(difficulty * 15) || (hidden_uplink)) + if(SEND_SIGNAL(target, COMSIG_PDA_CHECK_DETONATE) & COMPONENT_PDA_NO_DETONATE || prob(difficulty * 15)) U.show_message("An error flashes on your [src].", 1) else log_bomber(U, "triggered a PDA explosion on", target, "[!is_special_character(U) ? "(TRIGGED BY NON-ANTAG)" : ""]") diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index 7b494819643..c43f17dc41f 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -52,7 +52,7 @@ add_fingerprint(user) if(istype(M) && on && user.zone_selected in list(BODY_ZONE_PRECISE_EYES, BODY_ZONE_PRECISE_MOUTH)) - if((user.has_trait(TRAIT_CLUMSY) || user.has_trait(TRAIT_DUMB)) && prob(50)) //too dumb to use flashlight properly + if((HAS_TRAIT(user, TRAIT_CLUMSY) || HAS_TRAIT(user, TRAIT_DUMB)) && prob(50)) //too dumb to use flashlight properly return ..() //just hit them in the head if(!user.IsAdvancedToolUser()) @@ -86,7 +86,7 @@ else user.visible_message("[user] directs [src] to [M]'s eyes.", \ "You direct [src] to [M]'s eyes.") - if(M.stat == DEAD || (M.has_trait(TRAIT_BLIND)) || !M.flash_act(visual = 1)) //mob is dead or fully blind + if(M.stat == DEAD || (HAS_TRAIT(M, TRAIT_BLIND)) || !M.flash_act(visual = 1)) //mob is dead or fully blind to_chat(user, "[M]'s pupils don't react to the light!") else if(M.dna && M.dna.check_mutation(XRAY)) //mob has X-ray vision to_chat(user, "[M]'s pupils give an eerie glow!") diff --git a/code/game/objects/items/devices/gps.dm b/code/game/objects/items/devices/gps.dm index b174f130397..637bb794d35 100644 --- a/code/game/objects/items/devices/gps.dm +++ b/code/game/objects/items/devices/gps.dm @@ -159,7 +159,7 @@ GLOBAL_LIST_EMPTY(GPS_list) /obj/item/gps/cyborg/Initialize() . = ..() - add_trait(TRAIT_NODROP, CYBORG_ITEM_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, CYBORG_ITEM_TRAIT) /obj/item/gps/internal icon_state = null diff --git a/code/game/objects/items/devices/instruments.dm b/code/game/objects/items/devices/instruments.dm index ea942d053ca..6b55df655cd 100644 --- a/code/game/objects/items/devices/instruments.dm +++ b/code/game/objects/items/devices/instruments.dm @@ -73,6 +73,12 @@ song.instrumentDir = name song.instrumentExt = insTypes[name] +/obj/item/instrument/piano_synth/proc/selectInstrument() // Moved here so it can be used by the action and PAI software panel without copypasta + var/chosen = input("Choose the type of instrument you want to use", "Instrument Selection", song.instrumentDir) as null|anything in insTypes + if(!insTypes[chosen]) + return + return changeInstrument(chosen) + /obj/item/instrument/guitar name = "guitar" desc = "It's made of wood and has bronze strings." diff --git a/code/game/objects/items/devices/laserpointer.dm b/code/game/objects/items/devices/laserpointer.dm index c7028210ef2..f76d46aa257 100644 --- a/code/game/objects/items/devices/laserpointer.dm +++ b/code/game/objects/items/devices/laserpointer.dm @@ -77,7 +77,7 @@ if (!user.IsAdvancedToolUser()) to_chat(user, "You don't have the dexterity to do this!") return - if(user.has_trait(TRAIT_NOGUNS)) + if(HAS_TRAIT(user, TRAIT_NOGUNS)) to_chat(user, "Your fingers can't press the button!") return if(ishuman(user)) diff --git a/code/game/objects/items/devices/lightreplacer.dm b/code/game/objects/items/devices/lightreplacer.dm index 2c2155abbcd..8d51924a7c8 100644 --- a/code/game/objects/items/devices/lightreplacer.dm +++ b/code/game/objects/items/devices/lightreplacer.dm @@ -48,7 +48,7 @@ item_state = "electronic" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' - + w_class = WEIGHT_CLASS_SMALL flags_1 = CONDUCT_1 slot_flags = ITEM_SLOT_BELT force = 8 diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm index 0867033aad8..99fa8e5b441 100644 --- a/code/game/objects/items/devices/paicard.dm +++ b/code/game/objects/items/devices/paicard.dm @@ -43,8 +43,8 @@ dat += "

Device Settings


" if(pai.radio) dat += "Radio Uplink
" - dat += "Transmit: [(pai.radio.wires.is_cut(WIRE_TX)) ? "Disabled" : "Enabled"]
" - dat += "Receive: [(pai.radio.wires.is_cut(WIRE_RX)) ? "Disabled" : "Enabled"]
" + dat += "Transmit: \[[pai.can_transmit? "Disable" : "Enable"] Radio Transmission\]
" + dat += "Receive: \[[pai.can_receive? "Disable" : "Enable"] Radio Reception\]
" else dat += "Radio Uplink
" dat += "Radio firmware not loaded. Please install a pAI personality to load firmware.
" @@ -92,10 +92,17 @@ to_chat(pai, "Your mental faculties leave you.") to_chat(pai, "oblivion... ") qdel(pai) - if(href_list["wires"]) - var/wire = text2num(href_list["wires"]) - if(pai.radio) - pai.radio.wires.cut(wire) + if(href_list["toggle_transmit"] || href_list["toggle_receive"]) + var/transmitting = href_list["toggle_transmit"] //it can't be both so if we know it's not transmitting it must be receiving. + var/transmit_holder = (transmitting ? WIRE_TX : WIRE_RX) + if(transmitting) + pai.can_transmit = !pai.can_transmit + else //receiving + pai.can_receive = !pai.can_receive + pai.radio.wires.cut(transmit_holder)//wires.cut toggles cut and uncut states + transmit_holder = (transmitting ? pai.can_transmit : pai.can_receive) //recycling can be fun! + to_chat(usr,"You [transmit_holder ? "enable" : "disable"] your pAI's [transmitting ? "outgoing" : "incoming"] radio transmissions!") + to_chat(pai,"Your owner has [transmit_holder ? "enabled" : "disabled"] your [transmitting ? "outgoing" : "incoming"] radio transmissions!") if(href_list["setlaws"]) var/newlaws = copytext(sanitize(input("Enter any additional directives you would like your pAI personality to follow. Note that these directives will not override the personality's allegiance to its imprinted master. Conflicting directives will be ignored.", "pAI Directive Configuration", pai.laws.supplied[1]) as message),1,MAX_MESSAGE_LEN) if(newlaws && pai) @@ -149,7 +156,7 @@ src.add_overlay("pai-null") /obj/item/paicard/proc/alertUpdate() - visible_message("[src] flashes a message across its screen, \"Additional personalities available for download.\"", "[src] bleeps electronically.") + audible_message("[src] flashes a message across its screen, \"Additional personalities available for download.\"", "[src] vibrates with an alert.") /obj/item/paicard/emp_act(severity) . = ..() @@ -157,3 +164,4 @@ return if(pai && !pai.holoform) pai.emp_act(severity) + diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm index 1fb42878c16..a56d9e878af 100644 --- a/code/game/objects/items/devices/powersink.dm +++ b/code/game/objects/items/devices/powersink.dm @@ -38,6 +38,7 @@ if(mode == OPERATING) STOP_PROCESSING(SSobj, src) anchored = FALSE + density = FALSE if(CLAMPED_OFF) if(!attached) @@ -45,12 +46,14 @@ if(mode == OPERATING) STOP_PROCESSING(SSobj, src) anchored = TRUE + density = TRUE if(OPERATING) if(!attached) return START_PROCESSING(SSobj, src) anchored = TRUE + density = TRUE mode = value update_icon() diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index 891370dfe28..3fb14c79fb3 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -64,6 +64,11 @@ icon_state = "medsci_cypherkey" channels = list(RADIO_CHANNEL_SCIENCE = 1, RADIO_CHANNEL_MEDICAL = 1) +/obj/item/encryptionkey/headset_srvsec + name = "law and order radio encryption key" + icon_state = "srvsec_cypherkey" + channels = list(RADIO_CHANNEL_SERVICE = 1, RADIO_CHANNEL_SECURITY = 1) + /obj/item/encryptionkey/headset_com name = "command radio encryption key" icon_state = "com_cypherkey" diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 63fd96fedf0..1cf7b794bd2 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -147,6 +147,12 @@ GLOBAL_LIST_INIT(channel_tokens, list( icon_state = "medsci_headset" keyslot = new /obj/item/encryptionkey/headset_medsci +/obj/item/radio/headset/headset_srvsec + name = "law and order headset" + desc = "In the criminal justice headset, the encryption key represents two separate but equally important groups. Sec, who investigate crime, and Service, who provide services. These are their comms." + icon_state = "srvsec_headset" + keyslot = new /obj/item/encryptionkey/headset_srvsec + /obj/item/radio/headset/headset_com name = "command radio headset" desc = "A headset with a commanding channel." @@ -255,12 +261,17 @@ GLOBAL_LIST_INIT(channel_tokens, list( . = ..() AddComponent(/datum/component/wearertargeting/earprotection, list(SLOT_EARS)) -/obj/item/radio/headset/ai +/obj/item/radio/headset/silicon/pai + name = "\proper mini Integrated Subspace Transceiver " + subspace_transmission = FALSE + + +/obj/item/radio/headset/silicon/ai name = "\proper Integrated Subspace Transceiver " keyslot2 = new /obj/item/encryptionkey/ai command = TRUE -/obj/item/radio/headset/ai/can_receive(freq, level) +/obj/item/radio/headset/silicon/can_receive(freq, level) return ..(freq, level, TRUE) /obj/item/radio/headset/attackby(obj/item/W, mob/user, params) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 14c03fed507..da9909b671d 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -320,6 +320,8 @@ /obj/item/radio/examine(mob/user) ..() + if (frequency && in_range(src, user)) + to_chat(user, "It is set to broadcast over the [frequency/10] frequency.") if (unscrewed) to_chat(user, "It can be attached and modified.") else diff --git a/code/game/objects/items/devices/reverse_bear_trap.dm b/code/game/objects/items/devices/reverse_bear_trap.dm index 6e68328be1c..2facfddfb55 100644 --- a/code/game/objects/items/devices/reverse_bear_trap.dm +++ b/code/game/objects/items/devices/reverse_bear_trap.dm @@ -49,7 +49,7 @@ if(iscarbon(user)) var/mob/living/carbon/C = user if(C.get_item_by_slot(SLOT_HEAD) == src) - if(has_trait(TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) && !struggling) + if(HAS_TRAIT_FROM(src, TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) && !struggling) struggling = TRUE var/fear_string switch(time_left) @@ -74,7 +74,7 @@ else user.visible_message("The lock on [user]'s [name] pops open!", \ "You force open the padlock!", "You hear a single, pronounced click!") - remove_trait(TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) struggling = FALSE else ..() @@ -116,7 +116,7 @@ /obj/item/reverse_bear_trap/proc/reset() ticking = FALSE - remove_trait(TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) soundloop.stop() soundloop2.stop() STOP_PROCESSING(SSprocessing, src) @@ -125,7 +125,7 @@ ticking = TRUE escape_chance = initial(escape_chance) //we keep these vars until re-arm, for tracking purposes time_left = initial(time_left) - add_trait(TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, REVERSE_BEAR_TRAP_TRAIT) soundloop.start() soundloop2.mid_length = initial(soundloop2.mid_length) soundloop2.start() diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 44a037b92ce..798bfe47804 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -61,7 +61,7 @@ GENE SCANNER if(O.level != 1) continue - if(O.invisibility == INVISIBILITY_MAXIMUM || O.has_trait(TRAIT_T_RAY_VISIBLE)) + if(O.invisibility == INVISIBILITY_MAXIMUM || HAS_TRAIT(O, TRAIT_T_RAY_VISIBLE)) var/image/I = new(loc = get_turf(O)) var/mutable_appearance/MA = new(O) MA.alpha = 128 @@ -106,7 +106,7 @@ GENE SCANNER /obj/item/healthanalyzer/attack(mob/living/M, mob/living/carbon/human/user) // Clumsiness/brain damage check - if ((user.has_trait(TRAIT_CLUMSY) || user.has_trait(TRAIT_DUMB)) && prob(50)) + if ((HAS_TRAIT(user, TRAIT_CLUMSY) || HAS_TRAIT(user, TRAIT_DUMB)) && prob(50)) to_chat(user, "You stupidly try to analyze the floor's vitals!") user.visible_message("[user] has analyzed the floor's vitals!") to_chat(user, "Analyzing results for The floor:\n\tOverall status: Healthy") @@ -136,7 +136,7 @@ GENE SCANNER var/brute_loss = M.getBruteLoss() var/mob_status = (M.stat == DEAD ? "Deceased" : "[round(M.health/M.maxHealth,0.01)*100] % healthy") - if(M.has_trait(TRAIT_FAKEDEATH) && !advanced) + if(HAS_TRAIT(M, TRAIT_FAKEDEATH) && !advanced) mob_status = "Deceased" oxy_loss = max(rand(1, 40), oxy_loss, (300 - (tox_loss + fire_loss + brute_loss))) // Random oxygen loss @@ -209,10 +209,10 @@ GENE SCANNER to_chat(user, "\t==EAR STATUS==") if(istype(ears)) var/healthy = TRUE - if(C.has_trait(TRAIT_DEAF, GENETIC_MUTATION)) + if(HAS_TRAIT_FROM(C, TRAIT_DEAF, GENETIC_MUTATION)) healthy = FALSE to_chat(user, "\tSubject is genetically deaf.") - else if(C.has_trait(TRAIT_DEAF)) + else if(HAS_TRAIT(C, TRAIT_DEAF)) healthy = FALSE to_chat(user, "\tSubject is deaf.") else @@ -230,10 +230,10 @@ GENE SCANNER to_chat(user, "\t==EYE STATUS==") if(istype(eyes)) var/healthy = TRUE - if(C.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(C, TRAIT_BLIND)) to_chat(user, "\tSubject is blind.") healthy = FALSE - if(C.has_trait(TRAIT_NEARSIGHT)) + if(HAS_TRAIT(C, TRAIT_NEARSIGHT)) to_chat(user, "\tSubject is nearsighted.") healthy = FALSE if(eyes.eye_damage > 30) @@ -300,7 +300,7 @@ GENE SCANNER to_chat(user, "Body temperature: [round(M.bodytemperature-T0C,0.1)] °C ([round(M.bodytemperature*1.8-459.67,0.1)] °F)") // Time of death - if(M.tod && (M.stat == DEAD || ((M.has_trait(TRAIT_FAKEDEATH)) && !advanced))) + if(M.tod && (M.stat == DEAD || ((HAS_TRAIT(M, TRAIT_FAKEDEATH)) && !advanced))) to_chat(user, "Time of Death: [M.tod]") var/tdelta = round(world.time - M.timeofdeath) if(tdelta < (DEFIB_TIME_LIMIT * 10)) @@ -350,7 +350,7 @@ GENE SCANNER if(M.reagents.reagent_list.len) to_chat(user, "Subject contains the following reagents:") for(var/datum/reagent/R in M.reagents.reagent_list) - to_chat(user, "[R.volume] units of [R.name][R.overdosed == 1 ? " - OVERDOSING" : "."]") + to_chat(user, "[round(R.volume, 0.001)] units of [R.name][R.overdosed == 1 ? " - OVERDOSING" : "."]") else to_chat(user, "Subject contains no reagents.") if(M.reagents.addiction_list.len) @@ -472,7 +472,7 @@ GENE SCANNER /obj/item/analyzer/AltClick(mob/user) //Barometer output for measuring when the next storm happens ..() - if(user.canUseTopic(src)) + if(user.canUseTopic(src, BE_CLOSE)) if(cooldown) to_chat(user, "[src]'s barometer function is preparing itself.") @@ -532,9 +532,14 @@ GENE SCANNER amount += inaccurate return DisplayTimeText(max(1,amount)) -/proc/atmosanalyzer_scan(mixture, mob/living/user, atom/target = src) +/proc/atmosanalyzer_scan(mob/user, atom/target, silent=FALSE) + var/mixture = target.return_analyzable_air() + if(!mixture) + return FALSE + var/icon = target - user.visible_message("[user] has used the analyzer on [icon2html(icon, viewers(src))] [target].", "You use the analyzer on [icon2html(icon, user)] [target].") + if(!silent && isliving(user)) + user.visible_message("[user] has used the analyzer on [icon2html(icon, viewers(user))] [target].", "You use the analyzer on [icon2html(icon, user)] [target].") to_chat(user, "Results of analysis of [icon2html(icon, user)] [target].") var/list/airs = islist(mixture) ? mixture : list(mixture) @@ -567,11 +572,10 @@ GENE SCANNER to_chat(user, "[target] is empty!") if(cached_scan_results && cached_scan_results["fusion"]) //notify the user if a fusion reaction was detected - var/fusion_power = round(cached_scan_results["fusion"], 0.01) - var/tier = fusionpower2text(fusion_power) + var/instability = round(cached_scan_results["fusion"], 0.01) to_chat(user, "Large amounts of free neutrons detected in the air indicate that a fusion reaction took place.") - to_chat(user, "Power of the last fusion reaction: [fusion_power]\n This power indicates it was a [tier]-tier fusion reaction.") - return + to_chat(user, "Instability of the last fusion reaction: [instability].") + return TRUE //slime scanner @@ -628,7 +632,7 @@ GENE SCANNER to_chat(user, "Growth progress: [T.amount_grown]/[SLIME_EVOLUTION_THRESHOLD]") if(T.effectmod) to_chat(user, "Core mutation in progress: [T.effectmod]") - to_chat(user, "Progress in core mutation: [T.applied] / [SLIME_EXTRACT_CROSSING_REQUIRED]") + to_chat(user, "Progress in core mutation: [T.applied] / [SLIME_EXTRACT_CROSSING_REQUIRED]") to_chat(user, "========================") @@ -678,14 +682,14 @@ GENE SCANNER /obj/item/sequence_scanner/attack(mob/living/M, mob/living/carbon/human/user) add_fingerprint(user) - if (!M.has_trait(TRAIT_RADIMMUNE) && !M.has_trait(TRAIT_BADDNA)) //no scanning if its a husk or DNA-less Species + if (!HAS_TRAIT(M, TRAIT_RADIMMUNE) && !HAS_TRAIT(M, TRAIT_BADDNA)) //no scanning if its a husk or DNA-less Species user.visible_message("[user] has analyzed [M]'s genetic sequence.") - + gene_scan(M, user, src) else user.visible_message("[user] failed to analyse [M]'s genetic sequence.", "[M] has no readable genetic sequence!") - + /obj/item/sequence_scanner/afterattack(obj/O, mob/user, proximity) . = ..() diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index 1c48dea1a15..0981469eb6a 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -99,7 +99,7 @@ /obj/item/transfer_valve/Topic(href, href_list) ..() - if(!usr.canUseTopic(src)) + if(!usr.canUseTopic(src, BE_CLOSE)) return if(tank_one && href_list["tankone"]) split_gases() diff --git a/code/game/objects/items/dna_injector.dm b/code/game/objects/items/dna_injector.dm index 1159dd9ef5d..9ce3b5ac3da 100644 --- a/code/game/objects/items/dna_injector.dm +++ b/code/game/objects/items/dna_injector.dm @@ -20,7 +20,7 @@ return attack_hand(user) /obj/item/dnainjector/proc/inject(mob/living/carbon/M, mob/user) - if(M.has_dna() && !M.has_trait(TRAIT_RADIMMUNE) && !M.has_trait(TRAIT_BADDNA)) + if(M.has_dna() && !HAS_TRAIT(M, TRAIT_RADIMMUNE) && !HAS_TRAIT(M, TRAIT_BADDNA)) M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)) var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]" for(var/HM in remove_mutations) @@ -415,6 +415,14 @@ name = "\improper DNA injector (Anti-Cryokinesis)" remove_mutations = list(CRYOKINESIS) +/obj/item/dnainjector/thermal + name = "\improper DNA injector (Thermal Vision)" + add_mutations = list(THERMAL) + +/obj/item/dnainjector/antithermal + name = "\improper DNA injector (Anti-Thermal Vision)" + remove_mutations = list(THERMAL) + /obj/item/dnainjector/timed var/duration = 600 @@ -423,7 +431,7 @@ to_chat(user, "You can't modify [M]'s DNA while [M.p_theyre()] dead.") return FALSE - if(M.has_dna() && !(M.has_trait(TRAIT_BADDNA))) + if(M.has_dna() && !(HAS_TRAIT(M, TRAIT_BADDNA))) M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)) var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]" var/endtime = world.time+duration @@ -485,7 +493,7 @@ var/filled = FALSE /obj/item/dnainjector/activator/inject(mob/living/carbon/M, mob/user) - if(M.has_dna() && !M.has_trait(TRAIT_RADIMMUNE) && !M.has_trait(TRAIT_BADDNA)) + if(M.has_dna() && !HAS_TRAIT(M, TRAIT_RADIMMUNE) && !HAS_TRAIT(M, TRAIT_BADDNA)) M.radiation += rand(20/(damage_coeff ** 2),50/(damage_coeff ** 2)) var/log_msg = "[key_name(user)] injected [key_name(M)] with the [name]" for(var/mutation in add_mutations) diff --git a/code/game/objects/items/extinguisher.dm b/code/game/objects/items/extinguisher.dm index 5a2b2c9013d..315bcea5505 100644 --- a/code/game/objects/items/extinguisher.dm +++ b/code/game/objects/items/extinguisher.dm @@ -41,11 +41,13 @@ sprite_name = "miniFE" dog_fashion = null -/obj/item/extinguisher/Initialize() - . = ..() +/obj/item/extinguisher/proc/refill() create_reagents(max_water, AMOUNT_VISIBLE) reagents.add_reagent(chem, max_water) +/obj/item/extinguisher/Initialize() + . = ..() + refill() /obj/item/extinguisher/advanced name = "advanced fire extinguisher" @@ -124,10 +126,13 @@ if (target.loc == user) return //TODO; Add support for reagents in water. + if(refilling) refilling = FALSE return if (!safety) + + if (src.reagents.total_volume < 1) to_chat(usr, "\The [src] is empty!") return @@ -229,3 +234,13 @@ theturf.MakeSlippery(TURF_WET_WATER, min_wet_time = 10 SECONDS, wet_time_to_add = 5 SECONDS) user.visible_message("[user] empties out \the [src] onto the floor using the release valve.", "You quietly empty out \the [src] using its release valve.") + +//firebot assembly +/obj/item/extinguisher/attackby(obj/O, mob/user, params) + if(istype(O, /obj/item/bodypart/l_arm/robot) || istype(O, /obj/item/bodypart/r_arm/robot)) + to_chat(user, "You add [O] to [src].") + qdel(O) + qdel(src) + user.put_in_hands(new /obj/item/bot_assembly/firebot) + else + ..() diff --git a/code/game/objects/items/flamethrower.dm b/code/game/objects/items/flamethrower.dm index 271cf475a77..0cf26d3414a 100644 --- a/code/game/objects/items/flamethrower.dm +++ b/code/game/objects/items/flamethrower.dm @@ -129,10 +129,11 @@ else return ..() -/obj/item/flamethrower/analyzer_act(mob/living/user, obj/item/I) +/obj/item/flamethrower/return_analyzable_air() if(ptank) - ptank.analyzer_act(user, I) - + return ptank.return_analyzable_air() + else + return null /obj/item/flamethrower/attack_self(mob/user) toggle_igniter(user) diff --git a/code/game/objects/items/gift.dm b/code/game/objects/items/gift.dm index ab728949abb..2bf502d3ac8 100644 --- a/code/game/objects/items/gift.dm +++ b/code/game/objects/items/gift.dm @@ -34,11 +34,11 @@ GLOBAL_LIST_EMPTY(possible_gifts) /obj/item/a_gift/examine(mob/M) . = ..() - if(M.has_trait(TRAIT_PRESENT_VISION) || isobserver(M)) + if(HAS_TRAIT(M, TRAIT_PRESENT_VISION) || isobserver(M)) to_chat(M, "It contains \a [initial(contains_type.name)].") /obj/item/a_gift/attack_self(mob/M) - if(M.has_trait(TRAIT_CANNOT_OPEN_PRESENTS)) + if(HAS_TRAIT(M, TRAIT_CANNOT_OPEN_PRESENTS)) to_chat(M, "You're supposed to be spreading gifts, not opening them yourself!") return diff --git a/code/game/objects/items/granters.dm b/code/game/objects/items/granters.dm index 8abf9e30d04..007ab867c4d 100644 --- a/code/game/objects/items/granters.dm +++ b/code/game/objects/items/granters.dm @@ -13,21 +13,52 @@ /obj/item/book/granter/proc/turn_page(mob/user) playsound(user, pick('sound/effects/pageturn1.ogg','sound/effects/pageturn2.ogg','sound/effects/pageturn3.ogg'), 30, 1) if(do_after(user,50, user)) - to_chat(user, "[pick(remarks)]") + if(remarks.len) + to_chat(user, "[pick(remarks)]") + else + to_chat(user, "You keep reading...") return TRUE return FALSE /obj/item/book/granter/proc/recoil(mob/user) //nothing so some books can just return +/obj/item/book/granter/proc/already_known(mob/user) + return FALSE + +/obj/item/book/granter/proc/on_reading_start(mob/user) + to_chat(user, "You start reading [name]...") + +/obj/item/book/granter/proc/on_reading_stopped(mob/user) + to_chat(user, "You stop reading...") + +/obj/item/book/granter/proc/on_reading_finished(mob/user) + to_chat(user, "You finish reading [name]!") + /obj/item/book/granter/proc/onlearned(mob/user) used = TRUE + /obj/item/book/granter/attack_self(mob/user) if(reading) to_chat(user, "You're already reading this!") return FALSE if(!user.can_read(src)) return FALSE + if(already_known(user)) + return FALSE + if(used && oneuse) + recoil(user) + else + on_reading_start(user) + reading = TRUE + for(var/i=1, i<=pages_to_mastery, i++) + if(!turn_page(user)) + on_reading_stopped() + reading = FALSE + return + if(do_after(user,50, user)) + on_reading_finished(user) + reading = FALSE return TRUE ///ACTION BUTTONS/// @@ -36,33 +67,23 @@ var/granted_action var/actionname = "catching bugs" //might not seem needed but this makes it so you can safely name action buttons toggle this or that without it fucking up the granter, also caps -/obj/item/book/granter/action/attack_self(mob/user) - . = ..() - if(!.) - return +/obj/item/book/granter/action/already_known(mob/user) if(!granted_action) - return - var/datum/action/G = new granted_action + return TRUE for(var/datum/action/A in user.actions) - if(A.type == G.type) + if(A.type == granted_action) to_chat(user, "You already know all about [actionname].") - qdel(G) - return - if(used == TRUE && oneuse == TRUE) - recoil(user) - else - to_chat(user, "You start reading about [actionname]...") - reading = TRUE - for(var/i=1, i<=pages_to_mastery, i++) - if(!turn_page(user)) - to_chat(user, "You stop reading...") - reading = FALSE - qdel(G) - return - if(do_after(user,50, user)) - to_chat(user, "You feel like you've got a good handle on [actionname]!") - G.Grant(user) - reading = FALSE + return TRUE + return FALSE + +/obj/item/book/granter/action/on_reading_start(mob/user) + to_chat(user, "You start reading about [actionname]...") + +/obj/item/book/granter/action/on_reading_finished(mob/user) + to_chat(user, "You feel like you've got a good handle on [actionname]!") + var/datum/action/G = new granted_action + G.Grant(user) + onlearned(user) /obj/item/book/granter/action/origami granted_action = /datum/action/innate/origami @@ -97,38 +118,28 @@ var/spell var/spellname = "conjure bugs" -/obj/item/book/granter/spell/attack_self(mob/user) - . = ..() - if(!.) - return +/obj/item/book/granter/spell/already_known(mob/user) if(!spell) - return - var/obj/effect/proc_holder/spell/S = new spell + return TRUE for(var/obj/effect/proc_holder/spell/knownspell in user.mind.spell_list) - if(knownspell.type == S.type) + if(knownspell.type == spell) if(user.mind) if(iswizard(user)) to_chat(user,"You're already far more versed in this spell than this flimsy how-to book can provide.") else to_chat(user,"You've already read this one.") - return FALSE - if(used == TRUE && oneuse == TRUE) - recoil(user) - else - to_chat(user, "You start reading about casting [spellname]...") - reading = TRUE - for(var/i=1, i<=pages_to_mastery, i++) - if(!turn_page(user)) - to_chat(user, "You stop reading...") - reading = FALSE - qdel(S) - return FALSE - if(do_after(user,50, user)) - to_chat(user, "You feel like you've experienced enough to cast [spellname]!") - user.mind.AddSpell(S) - user.log_message("learned the spell [spellname] ([S])", LOG_ATTACK, color="orange") - onlearned(user) - reading = FALSE + return TRUE + return FALSE + +/obj/item/book/granter/spell/on_reading_start(mob/user) + to_chat(user, "You start reading about casting [spellname]...") + +/obj/item/book/granter/spell/on_reading_finished(mob/user) + to_chat(user, "You feel like you've experienced enough to cast [spellname]!") + var/obj/effect/proc_holder/spell/S = new spell + user.mind.AddSpell(S) + user.log_message("learned the spell [spellname] ([S])", LOG_ATTACK, color="orange") + onlearned(user) /obj/item/book/granter/spell/recoil(mob/user) user.visible_message("[src] glows in a black light!") @@ -305,33 +316,25 @@ var/martialname = "bug jitsu" var/greet = "You feel like you have mastered the art in breaking code. Nice work, jackass." -/obj/item/book/granter/martial/attack_self(mob/user) - . = ..() - if(!.) - return + +/obj/item/book/granter/martial/already_known(mob/user) if(!martial) - return - var/datum/martial_art/MA = new martial - if(user.mind.has_martialart(MA.id)) + return TRUE + var/datum/martial_art/MA = martial + if(user.mind.has_martialart(initial(MA.id))) to_chat(user,"You already know [martialname]!") - return - if(used == TRUE && oneuse == TRUE) - recoil(user) - else - to_chat(user, "You start reading about [martialname]...") - reading = TRUE - for(var/i=1, i<=pages_to_mastery, i++) - if(!turn_page(user)) - to_chat(user, "You stop reading...") - reading = FALSE - qdel(MA) - return - if(do_after(user,50, user)) - to_chat(user, "[greet]") - MA.teach(user) - user.log_message("learned the martial art [martialname] ([MA])", LOG_ATTACK, color="orange") - onlearned(user) - reading = FALSE + return TRUE + return FALSE + +/obj/item/book/granter/martial/on_reading_start(mob/user) + to_chat(user, "You start reading about [martialname]...") + +/obj/item/book/granter/martial/on_reading_finished(mob/user) + to_chat(user, "[greet]") + var/datum/martial_art/MA = new martial + MA.teach(user) + user.log_message("learned the martial art [martialname] ([MA])", LOG_ATTACK, color="orange") + onlearned(user) /obj/item/book/granter/martial/cqc martial = /datum/martial_art/cqc @@ -392,3 +395,18 @@ icon_state = "blankscroll" // I did not include mushpunch's grant, it is not a book and the item does it just fine. + + +//Crafting Recipe books + +/obj/item/book/granter/crafting_recipe + var/list/crafting_recipe_types = list() + +/obj/item/book/granter/crafting_recipe/on_reading_finished(mob/user) + . = ..() + if(!user.mind) + return + for(var/crafting_recipe_type in crafting_recipe_types) + var/datum/crafting_recipe/R = crafting_recipe_type + user.mind.teach_crafting_recipe(crafting_recipe_type) + to_chat(user,"You learned how to make [initial(R.name)].") diff --git a/code/game/objects/items/grenades/chem_grenade.dm b/code/game/objects/items/grenades/chem_grenade.dm index 900b53f2bf2..8e3ce9b75d8 100644 --- a/code/game/objects/items/grenades/chem_grenade.dm +++ b/code/game/objects/items/grenades/chem_grenade.dm @@ -10,8 +10,9 @@ w_class = WEIGHT_CLASS_SMALL force = 2 var/stage = EMPTY - var/list/beakers = list() + var/list/obj/item/reagent_containers/glass/beakers = list() var/list/allowed_containers = list(/obj/item/reagent_containers/glass/beaker, /obj/item/reagent_containers/glass/bottle) + var/list/banned_containers = list(/obj/item/reagent_containers/glass/beaker/bluespace) //Containers to exclude from specific grenade subtypes var/affected_area = 3 var/obj/item/assembly_holder/nadeassembly = null var/assemblyattacher @@ -68,7 +69,10 @@ to_chat(user, "You need to add an activation mechanism!") else if(stage == WIRED && is_type_in_list(I, allowed_containers)) - . = 1 //no afterattack + . = TRUE //no afterattack + if(is_type_in_list(I, banned_containers)) + to_chat(user, "[src] is too small to fit [I]!") // this one hits home huh anon? + return if(beakers.len == 2) to_chat(user, "[src] can not hold more containers!") return @@ -190,6 +194,7 @@ O.forceMove(drop_location()) beakers = list() stage_change(EMPTY) + active = FALSE return if(nadeassembly) @@ -207,10 +212,11 @@ //Large chem grenades accept slime cores and use the appropriately. /obj/item/grenade/chem_grenade/large name = "large grenade" - desc = "A custom made large grenade. Larger splash range and increased ignition temperature compared to basic grenades. Fits exotic containers." - casedesc = "This casing affects a larger area than the basic model and can fit exotic containers, including slime cores. Heats contents by 25°K upon ignition." + desc = "A custom made large grenade. Larger splash range and increased ignition temperature compared to basic grenades. Fits exotic and bluespace based containers." + casedesc = "This casing affects a larger area than the basic model and can fit exotic containers, including slime cores and bluespace beakers. Heats contents by 25°K upon ignition." icon_state = "large_grenade" allowed_containers = list(/obj/item/reagent_containers/glass, /obj/item/reagent_containers/food/condiment, /obj/item/reagent_containers/food/drinks) + banned_containers = list() affected_area = 5 ignition_temp = 25 // Large grenades are slightly more effective at setting off heat-sensitive mixtures than smaller grenades. threatscale = 1.1 // 10% more effective. diff --git a/code/game/objects/items/grenades/grenade.dm b/code/game/objects/items/grenades/grenade.dm index 5a40cc2a4ac..146a6a3b16c 100644 --- a/code/game/objects/items/grenades/grenade.dm +++ b/code/game/objects/items/grenades/grenade.dm @@ -33,7 +33,7 @@ qdel(src) /obj/item/grenade/proc/clown_check(mob/living/carbon/human/user) - var/clumsy = user.has_trait(TRAIT_CLUMSY) + var/clumsy = HAS_TRAIT(user, TRAIT_CLUMSY) if(clumsy && (clumsy_check == GRENADE_CLUMSY_FUMBLE)) if(prob(50)) to_chat(user, "Huh? How does this thing work?") @@ -68,9 +68,6 @@ log_grenade(user, T) //Inbuilt admin procs already handle null users if(user) add_fingerprint(user) - if(iscarbon(user)) - var/mob/living/carbon/C = user - C.throw_mode_on() if(msg) to_chat(user, "You prime [src]! [DisplayTimeText(det_time)]!") playsound(src, 'sound/weapons/armbomb.ogg', volume, 1) @@ -114,3 +111,8 @@ owner.visible_message("[attack_text] hits [owner]'s [src], setting it off! What a shot!") prime() return TRUE //It hit the grenade, not them + +/obj/item/grenade/afterattack(atom/target, mob/user) + . = ..() + if(active) + user.throw_item(target) diff --git a/code/game/objects/items/grenades/spawnergrenade.dm b/code/game/objects/items/grenades/spawnergrenade.dm index 42800b8e658..9ab4f91af40 100644 --- a/code/game/objects/items/grenades/spawnergrenade.dm +++ b/code/game/objects/items/grenades/spawnergrenade.dm @@ -17,10 +17,14 @@ C.flash_act() // Spawn some hostile syndicate critters and spread them out - spawn_and_random_walk(spawner_type, T, deliveryamt, walk_chance=50, admin_spawn=((flags_1 & ADMIN_SPAWNED_1) ? TRUE : FALSE)) + var/list/spawned = spawn_and_random_walk(spawner_type, T, deliveryamt, walk_chance=50, admin_spawn=((flags_1 & ADMIN_SPAWNED_1) ? TRUE : FALSE)) + afterspawn(spawned) qdel(src) +/obj/item/grenade/spawnergrenade/proc/afterspawn(list/mob/spawned) + return + /obj/item/grenade/spawnergrenade/manhacks name = "viscerator delivery grenade" spawner_type = /mob/living/simple_animal/hostile/viscerator @@ -41,3 +45,19 @@ icon_state = "holy_grenade" spawner_type = /mob/living/simple_animal/hostile/poison/bees/toxin deliveryamt = 10 + +/obj/item/grenade/spawnergrenade/clown + name = "C.L.U.W.N.E." + desc = "A sleek device often given to clowns on their 10th birthdays for protection. You can hear faint scratching coming from within." + icon_state = "clown_ball" + item_state = "clown_ball" + spawner_type = list(/mob/living/simple_animal/hostile/retaliate/clown/fleshclown, /mob/living/simple_animal/hostile/retaliate/clown/clownhulk, /mob/living/simple_animal/hostile/retaliate/clown/longface, /mob/living/simple_animal/hostile/retaliate/clown/clownhulk/chlown, /mob/living/simple_animal/hostile/retaliate/clown/clownhulk/honcmunculus, /mob/living/simple_animal/hostile/retaliate/clown/mutant/blob, /mob/living/simple_animal/hostile/retaliate/clown/banana, /mob/living/simple_animal/hostile/retaliate/clown/honkling, /mob/living/simple_animal/hostile/retaliate/clown/lube) + deliveryamt = 1 + +/obj/item/grenade/spawnergrenade/clown_broken + name = "stuffed C.L.U.W.N.E." + desc = "A sleek device often given to clowns on their 10th birthdays for protection. While a typical C.L.U.W.N.E only holds one creature, sometimes foolish young clowns try to cram more in, often to disasterous effect." + icon_state = "clown_broken" + item_state = "clown_broken" + spawner_type = /mob/living/simple_animal/hostile/retaliate/clown/mutant + deliveryamt = 5 diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 0fb7fcaeece..7d07c767383 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -44,7 +44,7 @@ if(!istype(C)) return - if(iscarbon(user) && (user.has_trait(TRAIT_CLUMSY) && prob(50))) + if(iscarbon(user) && (HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50))) to_chat(user, "Uh... how do those things work?!") apply_cuffs(user,user) return @@ -247,6 +247,9 @@ /obj/item/restraints/legcuffs/beartrap/Initialize() . = ..() + update_icon() + +/obj/item/restraints/legcuffs/beartrap/update_icon() icon_state = "[initial(icon_state)][armed]" /obj/item/restraints/legcuffs/beartrap/suicide_act(mob/user) @@ -258,18 +261,32 @@ ..() if(ishuman(user) && !user.stat && !user.restrained()) armed = !armed - icon_state = "[initial(icon_state)][armed]" + update_icon() to_chat(user, "[src] is now [armed ? "armed" : "disarmed"]") +/obj/item/restraints/legcuffs/beartrap/proc/close_trap() + armed = FALSE + update_icon() + playsound(src, 'sound/effects/snap.ogg', 50, TRUE) + /obj/item/restraints/legcuffs/beartrap/Crossed(AM as mob|obj) - if(armed && isturf(src.loc)) + if(armed && isturf(loc)) if(isliving(AM)) var/mob/living/L = AM - var/snap = 0 + var/snap = TRUE + if(istype(L.buckled, /obj/vehicle)) + var/obj/vehicle/ridden_vehicle = L.buckled + if(!ridden_vehicle.are_legs_exposed) //close the trap without injuring/trapping the rider if their legs are inside the vehicle at all times. + close_trap() + ridden_vehicle.visible_message("[ridden_vehicle] triggers \the [src].") + return ..() + + if(L.movement_type & (FLYING|FLOATING)) //don't close the trap if they're flying/floating over it. + snap = FALSE + var/def_zone = BODY_ZONE_CHEST - if(iscarbon(L)) + if(snap && iscarbon(L)) var/mob/living/carbon/C = L - snap = 1 if(C.mobility_flags & MOBILITY_STAND) def_zone = pick(BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) if(!C.legcuffed && C.get_num_legs(FALSE) >= 2) //beartrap can't cuff your leg if there's already a beartrap or legcuffs, or you don't have two legs. @@ -277,19 +294,15 @@ forceMove(C) C.update_inv_legcuffed() SSblackbox.record_feedback("tally", "handcuffs", 1, type) - else if(isanimal(L)) + else if(snap && isanimal(L)) var/mob/living/simple_animal/SA = L - if(SA.mob_size > MOB_SIZE_TINY) - snap = 1 - if(L.movement_type & FLYING) - snap = 0 + if(SA.mob_size <= MOB_SIZE_TINY) //don't close the trap if they're as small as a mouse. + snap = FALSE if(snap) - armed = 0 - icon_state = "[initial(icon_state)][armed]" - playsound(src.loc, 'sound/effects/snap.ogg', 50, 1) + close_trap() L.visible_message("[L] triggers \the [src].", \ "You trigger \the [src]!") - L.apply_damage(trap_damage,BRUTE, def_zone) + L.apply_damage(trap_damage, BRUTE, def_zone) ..() /obj/item/restraints/legcuffs/beartrap/energy diff --git a/code/game/objects/items/his_grace.dm b/code/game/objects/items/his_grace.dm index 412fbb7e30c..33873033d5c 100644 --- a/code/game/objects/items/his_grace.dm +++ b/code/game/objects/items/his_grace.dm @@ -90,7 +90,7 @@ do_attack_animation(master, null, src) master.emote("scream") master.remove_status_effect(STATUS_EFFECT_HISGRACE) - remove_trait(TRAIT_NODROP, HIS_GRACE_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, HIS_GRACE_TRAIT) master.Paralyze(60) master.adjustBruteLoss(master.maxHealth) playsound(master, 'sound/effects/splat.ogg', 100, 0) @@ -202,20 +202,20 @@ update_stats() /obj/item/his_grace/proc/update_stats() - remove_trait(TRAIT_NODROP, HIS_GRACE_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, HIS_GRACE_TRAIT) var/mob/living/master = get_atom_on_turf(src, /mob/living) switch(bloodthirst) if(HIS_GRACE_CONSUME_OWNER to HIS_GRACE_FALL_ASLEEP) if(HIS_GRACE_CONSUME_OWNER > prev_bloodthirst) master.visible_message("[src] enters a frenzy!") if(HIS_GRACE_STARVING to HIS_GRACE_CONSUME_OWNER) - add_trait(TRAIT_NODROP, HIS_GRACE_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HIS_GRACE_TRAIT) if(HIS_GRACE_STARVING > prev_bloodthirst) master.visible_message("[src] is starving!", "[src]'s bloodlust overcomes you. [src] must be fed, or you will become His meal.\ [force_bonus < 15 ? " And still, His power grows.":""]") force_bonus = max(force_bonus, 15) if(HIS_GRACE_FAMISHED to HIS_GRACE_STARVING) - add_trait(TRAIT_NODROP, HIS_GRACE_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HIS_GRACE_TRAIT) if(HIS_GRACE_FAMISHED > prev_bloodthirst) master.visible_message("[src] is very hungry!", "Spines sink into your hand. [src] must feed immediately.\ [force_bonus < 10 ? " His power grows.":""]") diff --git a/code/game/objects/items/holy_weapons.dm b/code/game/objects/items/holy_weapons.dm index 69dc4f11c58..0ccc623f636 100644 --- a/code/game/objects/items/holy_weapons.dm +++ b/code/game/objects/items/holy_weapons.dm @@ -17,6 +17,8 @@ icon_state = "knight_templar" item_state = "knight_templar" allowed = list(/obj/item/storage/book/bible, /obj/item/nullrod, /obj/item/reagent_containers/food/drinks/bottle/holywater, /obj/item/storage/fancy/candle_box, /obj/item/candle, /obj/item/tank/internals/emergency_oxygen, /obj/item/tank/internals/plasmaman) + slowdown = 0 + blocks_shove_knockdown = FALSE /obj/item/choice_beacon/holy name = "armaments beacon" @@ -221,8 +223,8 @@ /obj/item/nullrod/godhand icon_state = "disintegrate" item_state = "disintegrate" - lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' - righthand_file = 'icons/mob/inhands/items_righthand.dmi' + lefthand_file = 'icons/mob/inhands/misc/touchspell_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/touchspell_righthand.dmi' name = "god hand" desc = "This hand of yours glows with an awesome power!" item_flags = ABSTRACT | DROPDEL @@ -233,7 +235,7 @@ /obj/item/nullrod/godhand/Initialize() . = ..() - add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) /obj/item/nullrod/staff icon_state = "godstaff-red" @@ -479,7 +481,7 @@ /obj/item/nullrod/chainsaw/Initialize() . = ..() - add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) AddComponent(/datum/component/butchering, 30, 100, 0, hitsound) /obj/item/nullrod/clown @@ -551,7 +553,7 @@ /obj/item/nullrod/armblade/Initialize() . = ..() - add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) AddComponent(/datum/component/butchering, 80, 70) /obj/item/nullrod/armblade/tentacle diff --git a/code/game/objects/items/hot_potato.dm b/code/game/objects/items/hot_potato.dm index a65377b833b..ed4a3ae1267 100644 --- a/code/game/objects/items/hot_potato.dm +++ b/code/game/objects/items/hot_potato.dm @@ -136,7 +136,7 @@ return update_icon() if(sticky) - add_trait(TRAIT_NODROP, HOT_POTATO_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HOT_POTATO_TRAIT) name = "primed [name]" activation_time = timer + world.time detonation_timerid = addtimer(CALLBACK(src, .proc/detonate), delay, TIMER_STOPPABLE) @@ -150,7 +150,7 @@ /obj/item/hot_potato/proc/deactivate() update_icon() name = initial(name) - remove_trait(TRAIT_NODROP, HOT_POTATO_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, HOT_POTATO_TRAIT) deltimer(detonation_timerid) STOP_PROCESSING(SSfastprocess, src) detonation_timerid = null diff --git a/code/game/objects/items/implants/implant_mindshield.dm b/code/game/objects/items/implants/implant_mindshield.dm index 9547506e940..35764e40f94 100644 --- a/code/game/objects/items/implants/implant_mindshield.dm +++ b/code/game/objects/items/implants/implant_mindshield.dm @@ -19,7 +19,7 @@ /obj/item/implant/mindshield/implant(mob/living/target, mob/user, silent = FALSE, force = FALSE) if(..()) if(!target.mind) - target.add_trait(TRAIT_MINDSHIELD, "implant") + ADD_TRAIT(target, TRAIT_MINDSHIELD, "implant") target.sec_hud_set_implants() return TRUE @@ -41,20 +41,25 @@ qdel(src) return FALSE + var/datum/antagonist/hivevessel/woke = target.is_wokevessel() if(is_hivemember(target)) for(var/datum/antagonist/hivemind/hive in GLOB.antagonists) - if(hive.hivemembers.Find(target)) + if(hive.hivemembers.Find(target.mind)) var/mob/living/carbon/C = hive.owner.current.get_real_hivehost() if(C) - C.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, target) - target.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, C) + C.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, target, woke?TRACKER_AWAKENED_TIME:TRACKER_MINDSHIELD_TIME) + target.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, C, TRACKER_DEFAULT_TIME) if(C.mind) //If you were using mind control, too bad C.apply_status_effect(STATUS_EFFECT_HIVE_RADAR) - to_chat(C, "We detect a surge of psionic energy from a far away vessel before they disappear from the hive. Whatever happened, there's a good chance they're after us now.") + to_chat(C, "We detect a surge of psionic energy from a far away vessel before they disappear from the hive. Whatever happened, there's a good chance they're after us now.") to_chat(target, "You hear supernatural wailing echo throughout your mind as you are finally set free. Deep down, you can feel the lingering presence of those who enslaved you... as can they!") target.apply_status_effect(STATUS_EFFECT_HIVE_RADAR) remove_hivemember(target) + if(woke) + woke.one_mind?.remove_member(target.mind) + target.mind.remove_antag_datum(/datum/antagonist/hivevessel) + var/datum/antagonist/rev/rev = target.mind.has_antag_datum(/datum/antagonist/rev) if(rev) rev.remove_revolutionary(FALSE, user) @@ -63,7 +68,7 @@ to_chat(target, "You feel something interfering with your mental conditioning, but you resist it!") else to_chat(target, "You feel a sense of peace and security. You are now protected from brainwashing.") - target.add_trait(TRAIT_MINDSHIELD, "implant") + ADD_TRAIT(target, TRAIT_MINDSHIELD, "implant") target.sec_hud_set_implants() return TRUE return FALSE @@ -72,7 +77,7 @@ if(..()) if(isliving(target)) var/mob/living/L = target - L.remove_trait(TRAIT_MINDSHIELD, "implant") + REMOVE_TRAIT(L, TRAIT_MINDSHIELD, "implant") L.sec_hud_set_implants() if(target.stat != DEAD && !silent) to_chat(target, "Your mind suddenly feels terribly vulnerable. You are no longer safe from brainwashing.") diff --git a/code/game/objects/items/implants/implant_storage.dm b/code/game/objects/items/implants/implant_storage.dm index 99eecc6ff30..0e6490cdeab 100644 --- a/code/game/objects/items/implants/implant_storage.dm +++ b/code/game/objects/items/implants/implant_storage.dm @@ -10,10 +10,16 @@ SEND_SIGNAL(src, COMSIG_TRY_STORAGE_SHOW, imp_in, TRUE) /obj/item/implant/storage/removed(source, silent = FALSE, special = 0) - . = ..() - if(.) - if(!special) - qdel(GetComponent(/datum/component/storage/concrete/implant)) + if(!special) + var/datum/component/storage/lostimplant = GetComponent(/datum/component/storage/concrete/implant) + var/mob/living/implantee = source + for (var/obj/item/I in lostimplant.contents()) + I.add_mob_blood(implantee) + lostimplant.do_quick_empty() + implantee.visible_message("A bluespace pocket opens around [src] as it exits [implantee], spewing out its contents and rupturing the surrounding tissue!") + implantee.apply_damage(20, BRUTE, BODY_ZONE_CHEST) + qdel(lostimplant) + return ..() /obj/item/implant/storage/implant(mob/living/target, mob/user, silent = FALSE, force = FALSE) for(var/X in target.implants) diff --git a/code/game/objects/items/implants/implantchair.dm b/code/game/objects/items/implants/implantchair.dm index 7b30e5d7b46..390aff96206 100644 --- a/code/game/objects/items/implants/implantchair.dm +++ b/code/game/objects/items/implants/implantchair.dm @@ -92,7 +92,7 @@ return TRUE else if(istype(I, /obj/item/organ)) var/obj/item/organ/P = I - P.Insert(M, drop_if_replaced = FALSE) + P.Insert(M, FALSE, FALSE) visible_message("[M] has been implanted by [src].") return TRUE @@ -189,9 +189,9 @@ objective = stripped_input(usr,"What order do you want to imprint on [C]?","Enter the order","",120) message_admins("[ADMIN_LOOKUPFLW(user)] set brainwash machine objective to '[objective]'.") log_game("[key_name(user)] set brainwash machine objective to '[objective]'.") - if(C.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(C, TRAIT_MINDSHIELD)) return FALSE brainwash(C, objective) message_admins("[ADMIN_LOOKUPFLW(user)] brainwashed [key_name_admin(C)] with objective '[objective]'.") log_game("[key_name(user)] brainwashed [key_name(C)] with objective '[objective]'.") - return TRUE \ No newline at end of file + return TRUE diff --git a/code/game/objects/items/kitchen.dm b/code/game/objects/items/kitchen.dm index 822e632f935..9b71dcb8959 100644 --- a/code/game/objects/items/kitchen.dm +++ b/code/game/objects/items/kitchen.dm @@ -49,7 +49,7 @@ forkload = null else if(user.zone_selected == BODY_ZONE_PRECISE_EYES) - if(user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) M = user return eyestab(M,user) else @@ -81,7 +81,7 @@ /obj/item/kitchen/knife/attack(mob/living/carbon/M, mob/living/carbon/user) if(user.zone_selected == BODY_ZONE_PRECISE_EYES) - if(user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) M = user return eyestab(M,user) else @@ -165,6 +165,10 @@ attack_verb = list("shanked", "shivved") armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) +/obj/item/kitchen/knife/carrotshiv/suicide_act(mob/living/carbon/user) + user.visible_message("[user] forcefully drives \the [src] into [user.p_their()] eye! It looks like [user.p_theyre()] trying to commit suicide!") + return BRUTELOSS + /obj/item/kitchen/rollingpin name = "rolling pin" desc = "Used to knock out the Bartender." diff --git a/code/game/objects/items/manuals.dm b/code/game/objects/items/manuals.dm index 993dbac1ffc..94770a82b86 100644 --- a/code/game/objects/items/manuals.dm +++ b/code/game/objects/items/manuals.dm @@ -434,7 +434,7 @@ H.dropItemToGround(W) if(prob(50)) step(W, pick(GLOB.alldirs)) - H.add_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + ADD_TRAIT(H, TRAIT_DISFIGURED, TRAIT_GENERIC) H.bleed_rate = 5 H.gib_animation() sleep(3) diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index 50de4a8ec1f..417e49b884e 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -91,7 +91,7 @@ /obj/item/melee/sabre/suicide_act(mob/living/user) user.visible_message("[user] is trying to cut off all [user.p_their()] limbs with [src]! it looks like [user.p_theyre()] trying to commit suicide!") var/i = 0 - add_trait(TRAIT_NODROP, SABRE_SUICIDE_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, SABRE_SUICIDE_TRAIT) if(iscarbon(user)) var/mob/living/carbon/Cuser = user var/obj/item/bodypart/holding_bodypart = Cuser.get_holding_bodypart_of_item(src) @@ -129,7 +129,7 @@ if(!QDELETED(user)) user.adjustBruteLoss(200) user.death(FALSE) - remove_trait(TRAIT_NODROP, SABRE_SUICIDE_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, SABRE_SUICIDE_TRAIT) /obj/item/melee/classic_baton name = "police baton" @@ -150,7 +150,7 @@ return ..() add_fingerprint(user) - if((user.has_trait(TRAIT_CLUMSY)) && prob(50)) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) && prob(50)) to_chat(user, "You club yourself over the head.") user.Paralyze(60 * force) if(ishuman(user)) @@ -228,7 +228,7 @@ icon_state = "telebaton_1" item_state = "nullrod" w_class = WEIGHT_CLASS_BULKY //doesnt fit in backpack when its on for balance - force = 10 //stunbaton damage + force = 10 //stun baton damage attack_verb = list("smacked", "struck", "cracked", "beaten") else to_chat(user, "You collapse the baton.") @@ -335,7 +335,7 @@ T.visible_message("[T] smacks into [src] and rapidly flashes to ash.",\ "You hear a loud crack as you are washed with a wave of heat.") shard.Consume() - T.CalculateAdjacentTurfs() + CALCULATE_ADJACENT_TURFS(T) /obj/item/melee/supermatter_sword/add_blood_DNA(list/blood_dna) return FALSE diff --git a/code/game/objects/items/melee/transforming.dm b/code/game/objects/items/melee/transforming.dm index 74eb048d8a7..0d39e6c8477 100644 --- a/code/game/objects/items/melee/transforming.dm +++ b/code/game/objects/items/melee/transforming.dm @@ -82,6 +82,6 @@ to_chat(user, "[src] [active ? "is now active":"can now be concealed"].") /obj/item/melee/transforming/proc/clumsy_transform_effect(mob/living/user) - if(clumsy_check && user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(clumsy_check && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) to_chat(user, "You accidentally cut yourself with [src], like a doofus!") user.take_bodypart_damage(5,5) diff --git a/code/game/objects/items/miscellaneous.dm b/code/game/objects/items/miscellaneous.dm index 402d463c239..410cbc54427 100644 --- a/code/game/objects/items/miscellaneous.dm +++ b/code/game/objects/items/miscellaneous.dm @@ -18,6 +18,7 @@ icon = 'icons/obj/device.dmi' icon_state = "gangtool-blue" item_state = "radio" + var/uses = 1 /obj/item/choice_beacon/attack_self(mob/user) if(canUseBeacon(user)) @@ -42,7 +43,11 @@ return spawn_option(display_names[choice],M) - qdel(src) + uses-- + if(!uses) + qdel(src) + else + to_chat(M, "[uses] use[uses > 1 ? "s" : ""] remaining on the [src].") /obj/item/choice_beacon/proc/spawn_option(obj/choice,mob/living/M) var/obj/new_item = new choice() @@ -101,6 +106,31 @@ new /obj/item/toy/crayon/spraycan(src) new /obj/item/clothing/shoes/sandal(src) +/obj/item/choice_beacon/augments + name = "augment beacon" + desc = "Summons augmentations. Can be used 3 times!" + uses = 3 + +/obj/item/choice_beacon/augments/generate_display_names() + var/static/list/augment_list + if(!augment_list) + augment_list = list() + var/list/templist = list( + /obj/item/organ/cyberimp/brain/anti_drop, + /obj/item/organ/cyberimp/arm/toolset, + /obj/item/organ/cyberimp/arm/surgery, + /obj/item/organ/cyberimp/chest/thrusters, + /obj/item/organ/lungs/cybernetic/upgraded, + /obj/item/organ/liver/cybernetic/upgraded) //cyberimplants range from a nice bonus to fucking broken bullshit so no subtypesof + for(var/V in templist) + var/atom/A = V + augment_list[initial(A.name)] = A + return augment_list + +/obj/item/choice_beacon/augments/spawn_option(obj/choice,mob/living/M) + new choice(get_turf(M)) + to_chat(M, "You hear something crackle from the beacon for a moment before a voice speaks. \"Please stand by for a message from S.E.L.F. Message as follows: Item request received. Your package has been transported, use the autosurgeon supplied to apply the upgrade. Message ends.\"") + /obj/item/skub desc = "It's skub." name = "skub" @@ -114,4 +144,4 @@ user.gib() playsound(src, 'sound/items/eatfood.ogg', 50, 1, -1) - return MANUAL_SUICIDE + return MANUAL_SUICIDE \ No newline at end of file diff --git a/code/game/objects/items/paint.dm b/code/game/objects/items/paint.dm index c81fd082745..87f7f19b923 100644 --- a/code/game/objects/items/paint.dm +++ b/code/game/objects/items/paint.dm @@ -51,12 +51,12 @@ /obj/item/paint/anycolor - gender= PLURAL - name = "any color" + gender = PLURAL + name = "adaptive paint" icon_state = "paint_neutral" /obj/item/paint/anycolor/attack_self(mob/user) - var/t1 = input(user, "Please select a color:", "Locking Computer", null) in list( "red", "blue", "green", "yellow", "violet", "black", "white") + var/t1 = input(user, "Please select a color:", "[src]", null) in list( "red", "blue", "green", "yellow", "violet", "black", "white") if ((user.get_active_held_item() != src || user.stat || user.restrained())) return switch(t1) @@ -78,14 +78,14 @@ add_fingerprint(user) -/obj/item/paint/afterattack(turf/target, mob/user, proximity) +/obj/item/paint/afterattack(atom/target, mob/user, proximity) . = ..() if(!proximity) return if(paintleft <= 0) icon_state = "paint_empty" return - if(!istype(target) || isspaceturf(target)) + if(!isturf(target) || isspaceturf(target)) return var/newcolor = "#" + item_color target.add_atom_colour(newcolor, WASHABLE_COLOUR_PRIORITY) @@ -93,12 +93,14 @@ /obj/item/paint/paint_remover gender = PLURAL name = "paint remover" - desc = "Used to remove color from floors and walls." + desc = "Used to remove color from anything." icon_state = "paint_neutral" -/obj/item/paint/paint_remover/afterattack(turf/target, mob/user, proximity) +/obj/item/paint/paint_remover/afterattack(atom/target, mob/user, proximity) . = ..() if(!proximity) return - if(istype(target) && target.color != initial(target.color)) + if(!isturf(target) || !isobj(target)) + return + if(target.color != initial(target.color)) target.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) diff --git a/code/game/objects/items/plushes.dm b/code/game/objects/items/plushes.dm index e2063edac8d..657ba5a3120 100644 --- a/code/game/objects/items/plushes.dm +++ b/code/game/objects/items/plushes.dm @@ -6,7 +6,7 @@ attack_verb = list("thumped", "whomped", "bumped") w_class = WEIGHT_CLASS_SMALL resistance_flags = FLAMMABLE - var/list/squeak_override //Weighted list; If you want your plush to have different squeak sounds use this + var/component = /datum/component/squeak var/stuffed = TRUE //If the plushie has stuffing in it var/obj/item/grenade/grenade //You can remove the stuffing from a plushie and add a grenade to it for *nefarious uses* //--love ~<3-- @@ -33,7 +33,7 @@ /obj/item/toy/plush/Initialize() . = ..() - AddComponent(/datum/component/squeak, squeak_override) + AddComponent(component) //have we decided if Pinocchio goes in the blue or pink aisle yet? if(gender == NEUTER) @@ -87,7 +87,7 @@ scorned_by = null //null remaining lists - squeak_override = null + datum_outputs = null love_message = null partner_message = null @@ -369,14 +369,14 @@ icon_state = "carpplush" item_state = "carp_plushie" attack_verb = list("bitten", "eaten", "fin slapped") - squeak_override = /datum/outputs/bite + component = /datum/component/squeak/carp /obj/item/toy/plush/bubbleplush name = "\improper Bubblegum plushie" desc = "The friendly red demon that gives good miners gifts." icon_state = "bubbleplush" attack_verb = list("rent") - squeak_override = /datum/outputs/demonattack + component = /datum/component/squeak/bubbleplush /obj/item/toy/plush/plushvar name = "\improper Ratvar plushie" @@ -488,7 +488,7 @@ icon_state = "plushie_lizard" item_state = "plushie_lizard" attack_verb = list("clawed", "hissed", "tail slapped") - squeak_override = /datum/outputs/slash + component = /datum/component/squeak/lizardplushie /obj/item/toy/plush/snakeplushie name = "snake plushie" @@ -496,7 +496,7 @@ icon_state = "plushie_snake" item_state = "plushie_snake" attack_verb = list("bitten", "hissed", "tail slapped") - squeak_override = /datum/outputs/bite + component = /datum/component/squeak/snakeplushie /obj/item/toy/plush/nukeplushie name = "operative plushie" @@ -504,7 +504,7 @@ icon_state = "plushie_nuke" item_state = "plushie_nuke" attack_verb = list("shot", "nuked", "detonated") - squeak_override = /datum/outputs/punch + component = /datum/component/squeak/nukeplushie /obj/item/toy/plush/slimeplushie name = "slime plushie" @@ -512,8 +512,8 @@ icon_state = "plushie_slime" item_state = "plushie_slime" attack_verb = list("blorbled", "slimed", "absorbed") - squeak_override = /datum/outputs/squelch gender = FEMALE //given all the jokes and drawings, I'm not sure the xenobiologists would make a slimeboy + component = /datum/component/squeak/slimeplushie /obj/item/toy/plush/awakenedplushie name = "awakened plushie" @@ -523,4 +523,4 @@ /obj/item/toy/plush/awakenedplushie/ComponentInitialize() . = ..() - AddComponent(/datum/component/edit_complainer) + AddComponent(/datum/component/edit_complainer) \ No newline at end of file diff --git a/code/game/objects/items/pneumaticCannon.dm b/code/game/objects/items/pneumaticCannon.dm index 038cb8f0e8e..70cde4c75e1 100644 --- a/code/game/objects/items/pneumaticCannon.dm +++ b/code/game/objects/items/pneumaticCannon.dm @@ -152,7 +152,7 @@ if(tank && !tank.air_contents.remove(gasPerThrow * pressureSetting)) to_chat(user, "\The [src] lets out a weak hiss and doesn't react!") return - if(user.has_trait(TRAIT_CLUMSY) && prob(75) && clumsyCheck && iscarbon(user)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(75) && clumsyCheck && iscarbon(user)) var/mob/living/carbon/C = user C.visible_message("[C] loses [C.p_their()] grip on [src], causing it to go off!", "[src] slips out of your hands and goes off!") C.dropItemToGround(src, TRUE) @@ -217,13 +217,12 @@ loadedWeightClass -= I.w_class else if (A == tank) tank = null - update_icons() + update_icon() -/obj/item/pneumatic_cannon/ghetto //Obtainable by improvised methods; more gas per use, less capacity, but smaller +/obj/item/pneumatic_cannon/ghetto //Obtainable by improvised methods; more gas per use, less capacity name = "improvised pneumatic cannon" desc = "A gas-powered, object-firing cannon made out of common parts." force = 5 - w_class = WEIGHT_CLASS_NORMAL maxWeightClass = 7 gasPerThrow = 5 @@ -243,14 +242,13 @@ return to_chat(user, "You hook \the [thetank] up to \the [src].") tank = thetank - update_icons() + update_icon() -/obj/item/pneumatic_cannon/proc/update_icons() +/obj/item/pneumatic_cannon/update_icon() cut_overlays() if(!tank) return add_overlay(tank.icon_state) - update_icon() /obj/item/pneumatic_cannon/proc/fill_with_type(type, amount) if(!ispath(type, /obj) && !ispath(type, /mob)) diff --git a/code/game/objects/items/powerfist.dm b/code/game/objects/items/powerfist.dm index 8678648683f..f75af90acd1 100644 --- a/code/game/objects/items/powerfist.dm +++ b/code/game/objects/items/powerfist.dm @@ -50,7 +50,6 @@ if(tank) updateTank(tank, 1, user) - /obj/item/melee/powerfist/proc/updateTank(obj/item/tank/internals/thetank, removing = 0, mob/living/carbon/human/user) if(removing) if(!tank) @@ -71,26 +70,42 @@ /obj/item/melee/powerfist/attack(mob/living/target, mob/living/user) - if(!tank) - to_chat(user, "\The [src] can't operate without a source of gas!") - return - if(tank && !tank.air_contents.remove(gasperfist * fisto_setting)) - to_chat(user, "\The [src]'s piston-ram lets out a weak hiss, it needs more gas!") - playsound(loc, 'sound/effects/refill.ogg', 50, 1) - return - target.apply_damage(force * fisto_setting, BRUTE) - target.visible_message("[user]'s powerfist lets out a loud hiss as [user.p_they()] punch[user.p_es()] [target.name]!", \ - "You cry out in pain as [user]'s punch flings you backwards!") - new /obj/effect/temp_visual/kinetic_blast(target.loc) - playsound(loc, 'sound/weapons/resonator_blast.ogg', 50, 1) - playsound(loc, 'sound/weapons/genhit2.ogg', 50, 1) + if(!tank) + to_chat(user, "\The [src] can't operate without a source of gas!") + return + var/datum/gas_mixture/gasused = tank.air_contents.remove(gasperfist * fisto_setting) + var/turf/T = get_turf(src) + if(!T) + return + T.assume_air(gasused) + T.air_update_turf() + if(!gasused) + to_chat(user, "\The [src]'s tank is empty!") + target.apply_damage((force / 5), BRUTE) + playsound(loc, 'sound/weapons/punch1.ogg', 50, 1) + target.visible_message("[user]'s powerfist lets out a dull thunk as [user.p_they()] punch[user.p_es()] [target.name]!", \ + "[user]'s punches you!") + return + if(gasused.total_moles() < gasperfist * fisto_setting) + to_chat(user, "\The [src]'s piston-ram lets out a weak hiss, it needs more gas!") + playsound(loc, 'sound/weapons/punch4.ogg', 50, 1) + target.apply_damage((force / 2), BRUTE) + target.visible_message("[user]'s powerfist lets out a weak hiss as [user.p_they()] punch[user.p_es()] [target.name]!", \ + "[user]'s punch strikes with force!") + return + target.apply_damage(force * fisto_setting, BRUTE) + target.visible_message("[user]'s powerfist lets out a loud hiss as [user.p_they()] punch[user.p_es()] [target.name]!", \ + "You cry out in pain as [user]'s punch flings you backwards!") + new /obj/effect/temp_visual/kinetic_blast(target.loc) + playsound(loc, 'sound/weapons/resonator_blast.ogg', 50, 1) + playsound(loc, 'sound/weapons/genhit2.ogg', 50, 1) - var/atom/throw_target = get_edge_target_turf(target, get_dir(src, get_step_away(target, src))) + var/atom/throw_target = get_edge_target_turf(target, get_dir(src, get_step_away(target, src))) - target.throw_at(throw_target, 5 * fisto_setting, 0.2) + target.throw_at(throw_target, 5 * fisto_setting, 0.5 + (fisto_setting / 2)) - log_combat(user, target, "power fisted", src) + log_combat(user, target, "power fisted", src) - user.changeNext_move(CLICK_CD_MELEE * click_delay) + user.changeNext_move(CLICK_CD_MELEE * click_delay) - return + return diff --git a/code/game/objects/items/religion.dm b/code/game/objects/items/religion.dm index 2f6f3d579b8..40ea0c28517 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/objects/items/religion.dm @@ -189,7 +189,7 @@ inspiration_available = FALSE /obj/item/banner/command/check_inspiration(mob/living/carbon/human/H) - return H.has_trait(TRAIT_MINDSHIELD) //Command is stalwart but rewards their allies. + return HAS_TRAIT(H, TRAIT_MINDSHIELD) //Command is stalwart but rewards their allies. /datum/crafting_recipe/command_banner name = "Command Banner" diff --git a/code/game/objects/items/shields.dm b/code/game/objects/items/shields.dm index 1171bd7bf79..60ab0cf7750 100644 --- a/code/game/objects/items/shields.dm +++ b/code/game/objects/items/shields.dm @@ -2,6 +2,10 @@ name = "shield" block_chance = 50 armor = list("melee" = 50, "bullet" = 50, "laser" = 50, "energy" = 0, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 70) + var/transparent = FALSE // makes beam projectiles pass through the shield + +/obj/item/shield/proc/on_shield_block(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", damage = 0, attack_type = MELEE_ATTACK) + return TRUE /obj/item/shield/riot name = "riot shield" @@ -19,7 +23,17 @@ materials = list(MAT_GLASS=7500, MAT_METAL=1000) attack_verb = list("shoved", "bashed") var/cooldown = 0 //shield bash cooldown. based on world.time + transparent = TRUE + max_integrity = 75 +/obj/item/shield/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + if(transparent && (hitby.pass_flags & PASSGLASS)) + return FALSE + if(attack_type == THROWN_PROJECTILE_ATTACK) + final_block_chance += 30 + if(attack_type == LEAP_ATTACK) + final_block_chance = 100 + return ..() /obj/item/shield/riot/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/melee/baton)) @@ -27,14 +41,40 @@ user.visible_message("[user] bashes [src] with [W]!") playsound(user.loc, 'sound/effects/shieldbash.ogg', 50, 1) cooldown = world.time + else if(istype(W, /obj/item/stack/sheet/mineral/titanium)) + if (obj_integrity >= max_integrity) + to_chat(user, "[src] is already in perfect condition.") + else + var/obj/item/stack/sheet/mineral/titanium/T = W + T.use(1) + obj_integrity = max_integrity + to_chat(user, "You repair [src] with [T].") else return ..() -/obj/item/shield/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) - if(attack_type == THROWN_PROJECTILE_ATTACK) - final_block_chance += 30 - if(attack_type == LEAP_ATTACK) - final_block_chance = 100 +/obj/item/shield/riot/examine(mob/user) + ..() + var/healthpercent = round((obj_integrity/max_integrity) * 100, 1) + switch(healthpercent) + if(50 to 99) + to_chat(user, "It looks slightly damaged.") + if(25 to 50) + to_chat(user, "It appears heavily damaged.") + if(0 to 25) + to_chat(user, "It's falling apart!") + +/obj/item/shield/riot/proc/shatter(mob/living/carbon/human/owner) + playsound(owner, 'sound/effects/glassbr3.ogg', 100) + new /obj/item/shard((get_turf(src))) + +/obj/item/shield/riot/on_shield_block(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", damage = 0, attack_type = MELEE_ATTACK) + if (obj_integrity <= damage) + var/turf/T = get_turf(owner) + T.visible_message("[hitby] destroys [src]!") + shatter(owner) + qdel(src) + return FALSE + take_damage(damage) return ..() /obj/item/shield/riot/roman @@ -44,11 +84,19 @@ item_state = "roman_shield" lefthand_file = 'icons/mob/inhands/equipment/shields_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/shields_righthand.dmi' + transparent = FALSE + materials = list(MAT_METAL=8500) + max_integrity = 65 /obj/item/shield/riot/roman/fake desc = "Bears an inscription on the inside: \"Romanes venio domus\". It appears to be a bit flimsy." block_chance = 0 armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) + max_integrity = 30 + +/obj/item/shield/riot/roman/shatter(mob/living/carbon/human/owner) + playsound(owner, 'sound/effects/grillehit.ogg', 100) + new /obj/item/stack/sheet/metal(get_turf(src)) /obj/item/shield/riot/buckler name = "wooden buckler" @@ -60,6 +108,75 @@ materials = list() resistance_flags = FLAMMABLE block_chance = 30 + transparent = FALSE + max_integrity = 55 + w_class = WEIGHT_CLASS_NORMAL + +/obj/item/shield/riot/buckler/shatter(mob/living/carbon/human/owner) + playsound(owner, 'sound/effects/bang.ogg', 50) + new /obj/item/stack/sheet/mineral/wood(get_turf(src)) + +/obj/item/shield/riot/flash + name = "strobe shield" + desc = "A shield with a built in, high intensity light capable of blinding and disorienting suspects. Takes regular handheld flashes as bulbs." + icon_state = "flashshield" + item_state = "flashshield" + var/obj/item/assembly/flash/handheld/embedded_flash + +/obj/item/shield/riot/flash/Initialize() + . = ..() + embedded_flash = new(src) + +/obj/item/shield/riot/flash/attack(mob/living/M, mob/user) + . = embedded_flash.attack(M, user) + update_icon() + +/obj/item/shield/riot/flash/attack_self(mob/living/carbon/user) + . = embedded_flash.attack_self(user) + update_icon() + +/obj/item/shield/riot/flash/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK) + . = ..() + if (. && !embedded_flash.burnt_out) + embedded_flash.activate() + update_icon() + + +/obj/item/shield/riot/flash/attackby(obj/item/W, mob/user) + if(istype(W, /obj/item/assembly/flash/handheld)) + var/obj/item/assembly/flash/handheld/flash = W + if(flash.burnt_out) + to_chat(user, "No sense replacing it with a broken bulb.") + return + else + to_chat(user, "You begin to replace the bulb.") + if(do_after(user, 20, target = user)) + if(flash.burnt_out || !flash || QDELETED(flash)) + return + playsound(src, 'sound/items/deconstruct.ogg', 50, TRUE) + qdel(embedded_flash) + embedded_flash = flash + flash.forceMove(src) + update_icon() + return + ..() + +/obj/item/shield/riot/flash/emp_act(severity) + . = ..() + embedded_flash.emp_act(severity) + update_icon() + +/obj/item/shield/riot/flash/update_icon() + if(!embedded_flash || embedded_flash.burnt_out) + icon_state = "riot" + item_state = "riot" + else + icon_state = "flashshield" + item_state = "flashshield" + +/obj/item/shield/riot/flash/examine(mob/user) + ..() + to_chat(user, "The mounted bulb has burnt out. You can try replacing it with a new one.") /obj/item/shield/energy name = "energy combat shield" @@ -91,7 +208,7 @@ return (active) /obj/item/shield/energy/attack_self(mob/living/carbon/human/user) - if(clumsy_check && user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(clumsy_check && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) to_chat(user, "You beat yourself in the head with [src].") user.take_bodypart_damage(5) active = !active diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index 5196fb7d601..074e74c8c80 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -281,12 +281,12 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list( var/hit_hand = ((user.active_hand_index % 2 == 0) ? "r_" : "l_") + "arm" if(ishuman(user)) var/mob/living/carbon/human/H = user - if(!H.gloves && !H.has_trait(TRAIT_PIERCEIMMUNE)) // golems, etc + if(!H.gloves && !HAS_TRAIT(H, TRAIT_PIERCEIMMUNE)) // golems, etc to_chat(H, "[src] cuts into your hand!") H.apply_damage(force*0.5, BRUTE, hit_hand) else if(ismonkey(user)) var/mob/living/carbon/monkey/M = user - if(!M.has_trait(TRAIT_PIERCEIMMUNE)) + if(!HAS_TRAIT(M, TRAIT_PIERCEIMMUNE)) to_chat(M, "[src] cuts into your hand!") M.apply_damage(force*0.5, BRUTE, hit_hand) @@ -312,7 +312,7 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list( /obj/item/shard/Crossed(mob/living/L) if(istype(L) && has_gravity(loc)) - if(L.has_trait(TRAIT_LIGHT_STEP)) + if(HAS_TRAIT(L, TRAIT_LIGHT_STEP)) playsound(loc, 'sound/effects/glass_step.ogg', 30, 1) else playsound(loc, 'sound/effects/glass_step.ogg', 50, 1) diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 11985d08dbb..1c12163eaa0 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -22,7 +22,7 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ new/datum/stack_recipe("bed", /obj/structure/bed, 2, one_per_turf = TRUE, on_floor = TRUE), \ null, \ new/datum/stack_recipe_list("office chairs", list( \ - new/datum/stack_recipe("dark office chair", /obj/structure/chair/office/dark, 5, one_per_turf = TRUE, on_floor = TRUE), \ + new/datum/stack_recipe("dark office chair", /obj/structure/chair/office, 5, one_per_turf = TRUE, on_floor = TRUE), \ new/datum/stack_recipe("light office chair", /obj/structure/chair/office/light, 5, one_per_turf = TRUE, on_floor = TRUE), \ )), \ new/datum/stack_recipe_list("comfy chairs", list( \ @@ -145,10 +145,11 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ GLOBAL_LIST_INIT(plasteel_recipes, list ( \ new/datum/stack_recipe("AI core", /obj/structure/AIcore, 4, time = 50, one_per_turf = TRUE), \ new/datum/stack_recipe("bomb assembly", /obj/machinery/syndicatebomb/empty, 10, time = 50), \ + new/datum/stack_recipe("pestle", /obj/item/pestle, 1, time = 50), \ null, \ new /datum/stack_recipe_list("airlock assemblies", list( \ - new/datum/stack_recipe("high security airlock assembly", /obj/structure/door_assembly/door_assembly_highsecurity, 6, time = 50, one_per_turf = 1, on_floor = 1), \ - new/datum/stack_recipe("vault door assembly", /obj/structure/door_assembly/door_assembly_vault, 8, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("high security airlock assembly", /obj/structure/door_assembly/door_assembly_highsecurity, 4, time = 50, one_per_turf = 1, on_floor = 1), \ + new/datum/stack_recipe("vault door assembly", /obj/structure/door_assembly/door_assembly_vault, 6, time = 50, one_per_turf = 1, on_floor = 1), \ )), \ )) @@ -205,6 +206,7 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \ new/datum/stack_recipe("wooden crate", /obj/structure/closet/crate/wooden, 6, time = 50, one_per_turf = TRUE, on_floor = TRUE),\ new/datum/stack_recipe("baseball bat", /obj/item/melee/baseball_bat, 5, time = 15),\ new/datum/stack_recipe("loom", /obj/structure/loom, 10, time = 15, one_per_turf = TRUE, on_floor = TRUE), \ + new/datum/stack_recipe("mortar", /obj/item/reagent_containers/glass/mortar, 3), \ null, \ new/datum/stack_recipe_list("pews", list( new /datum/stack_recipe("pew (middle)", /obj/structure/chair/pew, 3, one_per_turf = TRUE, on_floor = TRUE), diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 36f45368fb7..f59eede79f0 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -371,7 +371,7 @@ return else change_stack(user, stackmaterial) - to_chat(user, "You take [stackmaterial] sheets out of the stack") + to_chat(user, "You take [stackmaterial] sheets out of the stack.") /obj/item/stack/proc/change_stack(mob/user, amount) if(!use(amount, TRUE, FALSE)) diff --git a/code/game/objects/items/storage/backpack.dm b/code/game/objects/items/storage/backpack.dm index 58c9ae7f299..f13fe2f593e 100644 --- a/code/game/objects/items/storage/backpack.dm +++ b/code/game/objects/items/storage/backpack.dm @@ -97,7 +97,7 @@ var/mob/M = get(loc, /mob) if(!istype(M)) return - if(M.has_trait(TRAIT_CANNOT_OPEN_PRESENTS)) + if(HAS_TRAIT(M, TRAIT_CANNOT_OPEN_PRESENTS)) GET_COMPONENT(STR, /datum/component/storage) var/turf/floor = get_turf(src) var/obj/item/I = new /obj/item/a_gift/anything(floor) @@ -299,7 +299,7 @@ /obj/item/storage/backpack/satchel/flat/Initialize() . = ..() - add_trait(TRAIT_T_RAY_VISIBLE, TRAIT_GENERIC) + ADD_TRAIT(src, TRAIT_T_RAY_VISIBLE, TRAIT_GENERIC) /obj/item/storage/backpack/satchel/flat/ComponentInitialize() . = ..() @@ -492,7 +492,7 @@ /obj/item/storage/backpack/duffelbag/syndie/ammo/shotgun/PopulateContents() for(var/i in 1 to 6) new /obj/item/ammo_box/magazine/m12g(src) - new /obj/item/ammo_box/magazine/m12g/stun(src) + new /obj/item/ammo_box/magazine/m12g/slug(src) new /obj/item/ammo_box/magazine/m12g/slug(src) new /obj/item/ammo_box/magazine/m12g/dragon(src) @@ -516,9 +516,9 @@ desc = "A large duffel bag containing a Bulldog, some drums, and a pair of thermal imaging glasses." /obj/item/storage/backpack/duffelbag/syndie/bulldogbundle/PopulateContents() - new /obj/item/ammo_box/magazine/m12g(src) new /obj/item/gun/ballistic/shotgun/bulldog(src) - new /obj/item/ammo_box/magazine/m12g/stun(src) + new /obj/item/ammo_box/magazine/m12g(src) + new /obj/item/ammo_box/magazine/m12g(src) new /obj/item/clothing/glasses/thermal/syndi(src) /obj/item/storage/backpack/duffelbag/syndie/med/medicalbundle diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index c5fe5955d2d..a661b9946ca 100644 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -61,7 +61,8 @@ /obj/item/holosign_creator/atmos, /obj/item/holosign_creator/engineering, /obj/item/forcefield_projector, - /obj/item/assembly/signaler + /obj/item/assembly/signaler, + /obj/item/lightreplacer )) STR.can_hold = can_hold @@ -557,6 +558,7 @@ /obj/item/gun/ballistic/automatic/pistol, /obj/item/gun/ballistic/revolver, /obj/item/ammo_box, + /obj/item/gun/energy/e_gun/mini )) /obj/item/storage/belt/holster/full/PopulateContents() diff --git a/code/game/objects/items/storage/book.dm b/code/game/objects/items/storage/book.dm index 19451ae40fb..5538a187cff 100644 --- a/code/game/objects/items/storage/book.dm +++ b/code/game/objects/items/storage/book.dm @@ -66,7 +66,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "burning", H << browse(dat, "window=editicon;can_close=0;can_minimize=0;size=250x650") /obj/item/storage/book/bible/Topic(href, href_list) - if(!usr.canUseTopic(src)) + if(!usr.canUseTopic(src, BE_CLOSE)) return if(href_list["seticon"] && !GLOB.bible_icon_state) var/iconi = text2num(href_list["seticon"]) @@ -112,7 +112,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "burning", to_chat(user, "You don't have the dexterity to do this!") return - if (user.has_trait(TRAIT_CLUMSY) && prob(50)) + if (HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) to_chat(user, "[src] slips out of your hand and hits your head.") user.take_bodypart_damage(10) user.Unconscious(400) diff --git a/code/game/objects/items/storage/firstaid.dm b/code/game/objects/items/storage/firstaid.dm index e8d3e83b871..531ac28eeab 100644 --- a/code/game/objects/items/storage/firstaid.dm +++ b/code/game/objects/items/storage/firstaid.dm @@ -174,6 +174,32 @@ new /obj/item/reagent_containers/pill/patch/silver_sulf(src) new /obj/item/clothing/glasses/hud/health/night(src) +//medibot assembly +/obj/item/storage/firstaid/attackby(obj/item/bodypart/S, mob/user, params) + if((!istype(S, /obj/item/bodypart/l_arm/robot)) && (!istype(S, /obj/item/bodypart/r_arm/robot))) + return ..() + + //Making a medibot! + if(contents.len >= 1) + to_chat(user, "You need to empty [src] out first!") + return + + var/obj/item/bot_assembly/medbot/A = new + if(istype(src, /obj/item/storage/firstaid/fire)) + A.skin = "ointment" + else if(istype(src, /obj/item/storage/firstaid/toxin)) + A.skin = "tox" + else if(istype(src, /obj/item/storage/firstaid/o2)) + A.skin = "o2" + else if(istype(src, /obj/item/storage/firstaid/brute)) + A.skin = "brute" + user.put_in_hands(A) + to_chat(user, "You add [S] to [src].") + A.robot_arm = S.type + A.firstaid = type + qdel(S) + qdel(src) + /* * Pill Bottles */ @@ -298,7 +324,7 @@ /obj/item/storage/pill_bottle/penacid name = "bottle of pentetic acid pills" - desc = "Contains pills to expunge radioation and toxins" + desc = "Contains pills to expunge radiation and toxins." /obj/item/storage/pill_bottle/penacid/PopulateContents() for(var/i in 1 to 3) diff --git a/code/game/objects/items/storage/storage.dm b/code/game/objects/items/storage/storage.dm index 7c2694016b5..42913ac7472 100644 --- a/code/game/objects/items/storage/storage.dm +++ b/code/game/objects/items/storage/storage.dm @@ -1,8 +1,8 @@ - /obj/item/storage name = "storage" icon = 'icons/obj/storage.dmi' w_class = WEIGHT_CLASS_NORMAL + var/rummage_if_nodrop = TRUE var/component_type = /datum/component/storage/concrete /obj/item/storage/get_dumping_location(obj/item/storage/source,mob/user) @@ -16,13 +16,30 @@ AddComponent(component_type) /obj/item/storage/AllowDrop() - return TRUE + return FALSE /obj/item/storage/contents_explosion(severity, target) for(var/atom/A in contents) A.ex_act(severity, target) CHECK_TICK +/obj/item/storage/canStrip(mob/who) + . = ..() + if(!. && rummage_if_nodrop) + return TRUE + +/obj/item/storage/doStrip(mob/who) + if(HAS_TRAIT(src, TRAIT_NODROP) && rummage_if_nodrop) + GET_COMPONENT(CP, /datum/component/storage) + CP.do_quick_empty() + return TRUE + return ..() + +/obj/item/storage/contents_explosion(severity, target) //Cyberboss says: "USE THIS TO FILL IT, NOT INITIALIZE OR NEW" /obj/item/storage/proc/PopulateContents() + +/obj/item/storage/proc/emptyStorage() + GET_COMPONENT(ST, /datum/component/storage) + ST.do_quick_empty() diff --git a/code/game/objects/items/storage/toolbox.dm b/code/game/objects/items/storage/toolbox.dm index e98e15fd259..ccf3f40af4c 100644 --- a/code/game/objects/items/storage/toolbox.dm +++ b/code/game/objects/items/storage/toolbox.dm @@ -86,7 +86,7 @@ /obj/item/storage/toolbox/mechanical/old/heirloom/PopulateContents() return - + /obj/item/storage/toolbox/mechanical/old/clean name = "toolbox" desc = "A old, blue toolbox, it looks robust." @@ -230,13 +230,66 @@ STR.max_items = 10 /obj/item/storage/toolbox/artistic/PopulateContents() - new/obj/item/storage/crayons(src) - new/obj/item/crowbar(src) - new/obj/item/stack/cable_coil/red(src) - new/obj/item/stack/cable_coil/yellow(src) - new/obj/item/stack/cable_coil/blue(src) - new/obj/item/stack/cable_coil/green(src) - new/obj/item/stack/cable_coil/pink(src) - new/obj/item/stack/cable_coil/orange(src) - new/obj/item/stack/cable_coil/cyan(src) - new/obj/item/stack/cable_coil/white(src) + new /obj/item/storage/crayons(src) + new /obj/item/crowbar(src) + new /obj/item/stack/cable_coil/red(src) + new /obj/item/stack/cable_coil/yellow(src) + new /obj/item/stack/cable_coil/blue(src) + new /obj/item/stack/cable_coil/green(src) + new /obj/item/stack/cable_coil/pink(src) + new /obj/item/stack/cable_coil/orange(src) + new /obj/item/stack/cable_coil/cyan(src) + new /obj/item/stack/cable_coil/white(src) + +/obj/item/storage/toolbox/ammo + name = "ammo box" + desc = "It contains a few clips." + icon_state = "ammobox" + item_state = "ammobox" + +/obj/item/storage/toolbox/ammo/PopulateContents() + new /obj/item/ammo_box/a762(src) + new /obj/item/ammo_box/a762(src) + new /obj/item/ammo_box/a762(src) + new /obj/item/ammo_box/a762(src) + new /obj/item/ammo_box/a762(src) + new /obj/item/ammo_box/a762(src) + new /obj/item/ammo_box/a762(src) + +//floorbot assembly +/obj/item/storage/toolbox/attackby(obj/item/stack/tile/plasteel/T, mob/user, params) + var/list/allowed_toolbox = list(/obj/item/storage/toolbox/emergency, //which toolboxes can be made into floorbots + /obj/item/storage/toolbox/electrical, + /obj/item/storage/toolbox/mechanical, + /obj/item/storage/toolbox/artistic, + /obj/item/storage/toolbox/syndicate) + + if(!istype(T, /obj/item/stack/tile/plasteel)) + ..() + return + if(!is_type_in_list(src, allowed_toolbox) && (type != /obj/item/storage/toolbox)) + return + if(contents.len >= 1) + to_chat(user, "They won't fit in, as there is already stuff inside!") + return + if(T.use(10)) + var/obj/item/bot_assembly/floorbot/B = new + B.toolbox = type + switch(B.toolbox) + if(/obj/item/storage/toolbox) + B.toolbox_color = "r" + if(/obj/item/storage/toolbox/emergency) + B.toolbox_color = "r" + if(/obj/item/storage/toolbox/electrical) + B.toolbox_color = "y" + if(/obj/item/storage/toolbox/artistic) + B.toolbox_color = "g" + if(/obj/item/storage/toolbox/syndicate) + B.toolbox_color = "s" + user.put_in_hands(B) + B.update_icon() + to_chat(user, "You add the tiles into the empty [name]. They protrude from the top.") + qdel(src) + else + to_chat(user, "You need 10 floor tiles to start building a floorbot!") + return diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm index 9c157beeeed..34504a8bb46 100644 --- a/code/game/objects/items/storage/uplink_kits.dm +++ b/code/game/objects/items/storage/uplink_kits.dm @@ -1,7 +1,17 @@ + /obj/item/storage/box/syndicate /obj/item/storage/box/syndicate/bundle_A/PopulateContents() - switch (pickweight(list("bloodyspai" = 3, "stealth" = 2, "screwed" = 2, "sabotage" = 3, "guns" = 2, "murder" = 2, "implant" = 1, "hacker" = 3, "sniper" = 1, "metaops" = 1))) + switch (pickweight(list("recon" = 2, "bloodyspai" = 3, "stealth" = 2, "screwed" = 2, "sabotage" = 3, "guns" = 2, "murder" = 2, "implant" = 1, "hacker" = 3, "sniper" = 1, "metaops" = 1))) + if("recon") // 26 tc + new /obj/item/clothing/glasses/thermal/xray(src) // ~8 tc? + new /obj/item/storage/briefcase/launchpad(src) //6 tc + new /obj/item/twohanded/binoculars(src) // 2 tc? + new /obj/item/encryptionkey/syndicate(src) // 2 tc + new /obj/item/storage/box/syndie_kit/space(src) //4 tc + new /obj/item/grenade/syndieminibomb/concussion/frag(src) // ~2 tc each? + new /obj/item/grenade/syndieminibomb/concussion/frag(src) + if("bloodyspai") // 27 tc now this is more right new /obj/item/clothing/under/chameleon(src) // 2 tc since it's not the full set new /obj/item/clothing/mask/chameleon(src) // Goes with above diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index a2c24a1061a..4f8753d4307 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -1,5 +1,5 @@ /obj/item/melee/baton - name = "stunbaton" + name = "stun baton" desc = "A stun baton for incapacitating people with." icon_state = "stunbaton" item_state = "baton" @@ -30,7 +30,7 @@ . = ..() if(preload_cell_type) if(!ispath(preload_cell_type,/obj/item/stock_parts/cell)) - log_world("### MAP WARNING, [src] at [AREACOORD(src)] had an invalid preload_cell_type: [preload_cell_type].") + log_mapping("[src] at [AREACOORD(src)] had an invalid preload_cell_type: [preload_cell_type].") else cell = new preload_cell_type(src) update_icon() @@ -58,11 +58,11 @@ /obj/item/melee/baton/update_icon() if(status) - icon_state = "[initial(name)]_active" + icon_state = "[initial(icon_state)]_active" else if(!cell) - icon_state = "[initial(name)]_nocell" + icon_state = "[initial(icon_state)]_nocell" else - icon_state = "[initial(name)]" + icon_state = "[initial(icon_state)]" /obj/item/melee/baton/examine(mob/user) ..() @@ -112,7 +112,7 @@ add_fingerprint(user) /obj/item/melee/baton/attack(mob/M, mob/living/carbon/human/user) - if(status && user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(status && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \ "You accidentally hit yourself with [src]!") user.Paralyze(stunforce*3) @@ -185,7 +185,7 @@ /obj/item/melee/baton/cattleprod name = "stunprod" desc = "An improvised stun baton." - icon_state = "stunprod_nocell" + icon_state = "stunprod" item_state = "prod" lefthand_file = 'icons/mob/inhands/weapons/melee_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/melee_righthand.dmi' diff --git a/code/game/objects/items/tanks/tank_types.dm b/code/game/objects/items/tanks/tank_types.dm index fc254826ca4..325be6a9c47 100644 --- a/code/game/objects/items/tanks/tank_types.dm +++ b/code/game/objects/items/tanks/tank_types.dm @@ -68,7 +68,6 @@ air_contents.gases[/datum/gas/oxygen][MOLES] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD air_contents.gases[/datum/gas/nitrogen][MOLES] = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD - /* * Plasma */ diff --git a/code/game/objects/items/tanks/tanks.dm b/code/game/objects/items/tanks/tanks.dm index 4ee885b8dd5..6835be5170c 100644 --- a/code/game/objects/items/tanks/tanks.dm +++ b/code/game/objects/items/tanks/tanks.dm @@ -112,9 +112,6 @@ qdel(src) -/obj/item/tank/analyzer_act(mob/living/user, obj/item/I) - atmosanalyzer_scan(air_contents, user, src) - /obj/item/tank/deconstruct(disassembled = TRUE) if(!disassembled) var/turf/T = get_turf(src) @@ -133,7 +130,7 @@ H.dropItemToGround(W) if(prob(50)) step(W, pick(GLOB.alldirs)) - H.add_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + ADD_TRAIT(H, TRAIT_DISFIGURED, TRAIT_GENERIC) H.bleed_rate = 5 H.gib_animation() sleep(3) @@ -208,6 +205,9 @@ /obj/item/tank/return_air() return air_contents +/obj/item/tank/return_analyzable_air() + return air_contents + /obj/item/tank/assume_air(datum/gas_mixture/giver) air_contents.merge(giver) @@ -245,8 +245,6 @@ log_bomber(get_mob_by_key(fingerprintslast), "was last key to touch", src, "which ruptured explosively") //Give the gas a chance to build up more pressure through reacting air_contents.react(src) - air_contents.react(src) - air_contents.react(src) pressure = air_contents.return_pressure() var/range = (pressure-TANK_FRAGMENT_PRESSURE)/TANK_FRAGMENT_SCALE var/turf/epicenter = get_turf(loc) diff --git a/code/game/objects/items/teleprod.dm b/code/game/objects/items/teleprod.dm index e8b07ff02b6..9d6495b9ddf 100644 --- a/code/game/objects/items/teleprod.dm +++ b/code/game/objects/items/teleprod.dm @@ -2,13 +2,13 @@ name = "teleprod" desc = "A prod with a bluespace crystal on the end. The crystal doesn't look too fun to touch." w_class = WEIGHT_CLASS_NORMAL - icon_state = "teleprod_nocell" + icon_state = "teleprod" item_state = "teleprod" slot_flags = null /obj/item/melee/baton/cattleprod/teleprod/attack(mob/living/carbon/M, mob/living/carbon/user)//handles making things teleport when hit ..() - if(status && user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(status && HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) user.visible_message("[user] accidentally hits [user.p_them()]self with [src]!", \ "You accidentally hit yourself with [src]!") if(do_teleport(user, get_turf(user), 50, channel = TELEPORT_CHANNEL_BLUESPACE))//honk honk diff --git a/code/game/objects/items/tools/screwdriver.dm b/code/game/objects/items/tools/screwdriver.dm index e47f2a81f86..a1a4b6fcc34 100644 --- a/code/game/objects/items/tools/screwdriver.dm +++ b/code/game/objects/items/tools/screwdriver.dm @@ -75,10 +75,10 @@ return ..() if(user.zone_selected != BODY_ZONE_PRECISE_EYES && user.zone_selected != BODY_ZONE_HEAD) return ..() - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm [M]!") return - if(user.has_trait(TRAIT_CLUMSY) && prob(50)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) M = user return eyestab(M,user) diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm index f87cfdc29a0..8dcf434c47f 100644 --- a/code/game/objects/items/tools/weldingtool.dm +++ b/code/game/objects/items/tools/weldingtool.dm @@ -111,7 +111,7 @@ if(src.use_tool(H, user, 0, volume=50, amount=1)) if(user == H) user.visible_message("[user] starts to fix some of the dents on [H]'s [affecting.name].", - "You start fixing some of the dents on [H]'s [affecting.name].") + "You start fixing some of the dents on [H == user ? "your" : "[H]'s"] [affecting.name].") if(!do_mob(user, H, 50)) return item_heal_robotic(H, user, 15, 0) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 00afae70367..a91f7194820 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -267,8 +267,8 @@ // Copied from /obj/item/melee/transforming/energy/sword/attackby /obj/item/toy/sword/attackby(obj/item/W, mob/living/user, params) if(istype(W, /obj/item/toy/sword)) - if(W.has_trait(TRAIT_NODROP) || has_trait(TRAIT_NODROP)) - to_chat(user, "\the [has_trait(TRAIT_NODROP) ? src : W] is stuck to your hand, you can't attach it to \the [has_trait(TRAIT_NODROP) ? W : src]!") + if(HAS_TRAIT(W, TRAIT_NODROP) || HAS_TRAIT(src, TRAIT_NODROP)) + to_chat(user, "\the [HAS_TRAIT(src, TRAIT_NODROP) ? src : W] is stuck to your hand, you can't attach it to \the [HAS_TRAIT(src, TRAIT_NODROP) ? W : src]!") return else to_chat(user, "You attach the ends of the two plastic swords, making a single double-bladed toy! You're fake-cool.") @@ -651,6 +651,9 @@ /obj/item/toy/cards/deck/Initialize() . = ..() + populate_deck() + +/obj/item/toy/cards/deck/proc/populate_deck() icon_state = "deck_[deckstyle]_full" for(var/i in 2 to 10) cards += "[i] of Hearts" @@ -677,6 +680,9 @@ //ATTACK HAND IGNORING PARENT RETURN VALUE //ATTACK HAND NOT CALLING PARENT /obj/item/toy/cards/deck/attack_hand(mob/user) + draw_card(user) + +/obj/item/toy/cards/deck/proc/draw_card(mob/user) if(isliving(user)) var/mob/living/L = user if(!(L.mobility_flags & MOBILITY_PICKUP)) @@ -986,20 +992,16 @@ icon = 'icons/obj/toy.dmi' icon_state = "nuketoyidle" w_class = WEIGHT_CLASS_SMALL - var/datum/outputs/output + datum_outputs = list(/datum/outputs/alarm) var/cooldown = 0 -/obj/item/toy/nuke/Initialize() - . = ..() - output = SSoutputs.outputs[/datum/outputs/alarm] - /obj/item/toy/nuke/attack_self(mob/user) if (cooldown < world.time) cooldown = world.time + 1800 //3 minutes user.visible_message("[user] presses a button on [src].", "You activate [src], it plays a loud noise!", "You hear the click of a button.") sleep(5) icon_state = "nuketoy" - playsound(src, output, 100, 0) + playsound(src, datum_outputs[1], 100, 0) sleep(135) icon_state = "nuketoycool" sleep(cooldown - world.time) diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm index 1f982801d8b..b618829a121 100644 --- a/code/game/objects/items/trash.dm +++ b/code/game/objects/items/trash.dm @@ -72,6 +72,11 @@ resistance_flags = NONE grind_results = list("aluminium" = 10) +/obj/item/trash/can/Initialize() + . = ..() + pixel_x = rand(-4,4) + pixel_y = rand(-4,4) + /obj/item/trash/attack(mob/M, mob/living/user) return diff --git a/code/game/objects/items/twohanded.dm b/code/game/objects/items/twohanded.dm index fbe8587386a..2a8a875d076 100644 --- a/code/game/objects/items/twohanded.dm +++ b/code/game/objects/items/twohanded.dm @@ -348,7 +348,7 @@ unwield() return ..() - if(user.has_trait(TRAIT_CLUMSY) && (wielded) && prob(40)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && (wielded) && prob(40)) impale(user) return if((wielded) && prob(50)) @@ -521,7 +521,6 @@ G = new /obj/item/grenade/iedcasing() //For admin-spawned explosive lances G.forceMove(src) explosive = G - desc = "A makeshift spear with [G] attached to it" update_icon() @@ -541,14 +540,6 @@ /obj/item/twohanded/spear/explosive/update_icon() icon_state = "spearbomb[wielded]" - //THIS MIGHT BE UNBALANCED SO I DUNNO // it totally is. -/obj/item/twohanded/spear/explosive/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) - . = ..() - if(!.) //not caught - explosive.forceMove(get_turf(src)) - explosive.prime() - qdel(src) - /obj/item/twohanded/spear/explosive/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE)) ..() diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index 9188e6d3567..8c4e297fbf3 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -91,7 +91,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/item/claymore/highlander/Initialize() . = ..() - add_trait(TRAIT_NODROP, HIGHLANDER) + ADD_TRAIT(src, TRAIT_NODROP, HIGHLANDER) START_PROCESSING(SSobj, src) /obj/item/claymore/highlander/Destroy() @@ -255,7 +255,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 user.put_in_hands(S) to_chat(user, "You fasten the glass shard to the top of the rod with the cable.") - else if(istype(I, /obj/item/assembly/igniter) && !(I.has_trait(TRAIT_NODROP))) + else if(istype(I, /obj/item/assembly/igniter) && !(HAS_TRAIT(I, TRAIT_NODROP))) var/obj/item/melee/baton/cattleprod/P = new /obj/item/melee/baton/cattleprod remove_item_from_storage(user) @@ -440,7 +440,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/item/mounted_chainsaw/Initialize() . = ..() - add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) /obj/item/mounted_chainsaw/Destroy() var/obj/item/bodypart/part diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index eb08fd663d8..df247ed15f3 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -1,6 +1,5 @@ /obj - var/crit_fail = FALSE animate_movement = 2 var/obj_flags = CAN_BE_HIT var/set_obj_flags // ONLY FOR MAPPING: Sets flags from a string list, handled in Initialize. Usage: set_obj_flags = "EMAGGED;!CAN_BE_HIT" to set EMAGGED and clear CAN_BE_HIT. @@ -124,7 +123,7 @@ if ((M.client && M.machine == src)) is_in_use = TRUE ui_interact(M) - if(isAI(usr) || iscyborg(usr) || IsAdminGhost(usr)) + if(issilicon(usr) || IsAdminGhost(usr)) if (!(usr in nearby)) if (usr.client && usr.machine==src) // && M.machine == src is omitted because if we triggered this by using the dialog, it doesn't matter if our machine changed in between triggering it and this - the dialog is probably still supposed to refresh. is_in_use = TRUE @@ -248,3 +247,8 @@ current_skin = choice icon_state = unique_reskin[choice] to_chat(M, "[src] is now skinned as '[choice].'") + +/obj/analyzer_act(mob/living/user, obj/item/I) + if(atmosanalyzer_scan(user, src)) + return TRUE + return ..() diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index e3c855db539..4e7d419d3eb 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -72,7 +72,7 @@ adjusted_climb_time *= 2 if(isalien(user)) adjusted_climb_time *= 0.25 //aliens are terrifyingly fast - if(user.has_trait(TRAIT_FREERUNNING)) //do you have any idea how fast I am??? + if(HAS_TRAIT(user, TRAIT_FREERUNNING)) //do you have any idea how fast I am??? adjusted_climb_time *= 0.8 structureclimber = user if(do_mob(user, user, adjusted_climb_time)) diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm index b4dce92f23a..e0681b76178 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -38,7 +38,7 @@ return ..() /obj/structure/AIcore/latejoin_inactive - name = "Networked AI core" + name = "networked AI core" desc = "This AI core is connected by bluespace transmitters to NTNet, allowing for an AI personality to be downloaded to it on the fly mid-shift." can_deconstruct = FALSE icon_state = "ai-empty" @@ -50,7 +50,8 @@ /obj/structure/AIcore/latejoin_inactive/examine(mob/user) . = ..() - to_chat(user, "Its transmitter seems to be [active? "on" : "off"].") + to_chat(user, "Its transmitter seems to be [active? "on" : "off"].") + to_chat(user, "You could [active? "deactivate" : "activate"] it with a multitool.") /obj/structure/AIcore/latejoin_inactive/proc/is_available() //If people still manage to use this feature to spawn-kill AI latejoins ahelp them. if(!available) @@ -74,7 +75,7 @@ /obj/structure/AIcore/latejoin_inactive/attackby(obj/item/P, mob/user, params) if(P.tool_behaviour == TOOL_MULTITOOL) active = !active - to_chat(user, "You [active? "activate" : "deactivate"] [src]'s transmitters.") + to_chat(user, "You [active? "activate" : "deactivate"] \the [src]'s transmitters.") return return ..() @@ -332,9 +333,11 @@ That prevents a few funky behaviors. to_chat(AI, "You have been uploaded to a stationary terminal. Remote device connection restored.") to_chat(user, "Transfer successful: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed.") card.AI = null + AI.battery = circuit.battery qdel(src) else //If for some reason you use an empty card on an empty AI terminal. to_chat(user, "There is no AI loaded on this terminal!") /obj/item/circuitboard/aicore name = "AI core (AI Core Board)" //Well, duh, but best to be consistent + var/battery = 200 //backup battery for when the AI loses power. Copied to/from AI mobs when carding, and placed here to avoid recharge via deconning the core diff --git a/code/game/objects/structures/beds_chairs/bed.dm b/code/game/objects/structures/beds_chairs/bed.dm index 699b7c4c774..12220e7d757 100644 --- a/code/game/objects/structures/beds_chairs/bed.dm +++ b/code/game/objects/structures/beds_chairs/bed.dm @@ -14,7 +14,7 @@ icon = 'icons/obj/objects.dmi' anchored = TRUE can_buckle = TRUE - buckle_lying = TRUE + buckle_lying = 90 resistance_flags = FLAMMABLE max_integrity = 100 integrity_failure = 30 diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm index 8fdcc275141..23f824bfd42 100644 --- a/code/game/objects/structures/beds_chairs/chair.dm +++ b/code/game/objects/structures/beds_chairs/chair.dm @@ -204,6 +204,7 @@ anchored = FALSE buildstackamount = 5 item_chair = null + icon_state = "officechair_dark" /obj/structure/chair/office/Moved() @@ -214,9 +215,6 @@ /obj/structure/chair/office/light icon_state = "officechair_white" -/obj/structure/chair/office/dark - icon_state = "officechair_dark" - //Stool /obj/structure/chair/stool diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 36943e79a86..f26efcaa328 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -86,7 +86,7 @@ to_chat(user, "Alt-click to [locked ? "unlock" : "lock"].") if(isliving(user)) var/mob/living/L = user - if(L.has_trait(TRAIT_SKITTISH)) + if(HAS_TRAIT(L, TRAIT_SKITTISH)) to_chat(user, "Ctrl-Shift-click [src] to jump inside.") /obj/structure/closet/CanPass(atom/movable/mover, turf/target) @@ -176,7 +176,7 @@ else if(isobj(AM)) if((!allow_dense && AM.density) || AM.anchored || AM.has_buckled_mobs()) return FALSE - else if(isitem(AM) && !AM.has_trait(TRAIT_NODROP)) + else if(isitem(AM) && !HAS_TRAIT(AM, TRAIT_NODROP)) return TRUE else if(!allow_objects && !istype(AM, /obj/effect/dummy/chameleon)) return FALSE @@ -415,9 +415,9 @@ togglelock(user) /obj/structure/closet/CtrlShiftClick(mob/living/user) - if(!user.has_trait(TRAIT_SKITTISH)) + if(!HAS_TRAIT(user, TRAIT_SKITTISH)) return ..() - if(!user.canUseTopic(src) || !isturf(user.loc)) + if(!user.canUseTopic(src, BE_CLOSE) || !isturf(user.loc)) return dive_into(user) diff --git a/code/game/objects/structures/crates_lockers/closets/bodybag.dm b/code/game/objects/structures/crates_lockers/closets/bodybag.dm index c926728bc8c..32e16a7319b 100644 --- a/code/game/objects/structures/crates_lockers/closets/bodybag.dm +++ b/code/game/objects/structures/crates_lockers/closets/bodybag.dm @@ -12,9 +12,17 @@ material_drop = /obj/item/stack/sheet/cloth delivery_icon = null //unwrappable anchorable = FALSE + mouse_drag_pointer = MOUSE_ACTIVE_POINTER var/foldedbag_path = /obj/item/bodybag + var/obj/item/bodybag/foldedbag_instance = null var/tagged = 0 // so closet code knows to put the tag overlay back +/obj/structure/closet/body_bag/Destroy() + // If we have a stored bag, and it's in nullspace (not in someone's hand), delete it. + if (foldedbag_instance && !foldedbag_instance.loc) + QDEL_NULL(foldedbag_instance) + return ..() + /obj/structure/closet/body_bag/attackby(obj/item/I, mob/user, params) if (istype(I, /obj/item/pen) || istype(I, /obj/item/toy/crayon)) if(!user.is_literate()) @@ -43,23 +51,30 @@ if (tagged) add_overlay("bodybag_label") +/obj/structure/closet/body_bag/open(mob/living/user) + . = ..() + if(.) + mouse_drag_pointer = MOUSE_INACTIVE_POINTER + /obj/structure/closet/body_bag/close() - if(..()) + . = ..() + if(.) density = FALSE - return 1 - return 0 + mouse_drag_pointer = MOUSE_ACTIVE_POINTER /obj/structure/closet/body_bag/MouseDrop(over_object, src_location, over_location) . = ..() if(over_object == usr && Adjacent(usr) && (in_range(src, usr) || usr.contents.Find(src))) if(!ishuman(usr)) - return 0 + return if(opened) - return 0 + to_chat(usr, "You wrestle with [src], but it won't fold while unzipped.") + return if(contents.len) - return 0 + to_chat(usr, "There are too many things inside of [src] to fold it up!") + return visible_message("[usr] folds up [src].") - var/obj/item/bodybag/B = new foldedbag_path(get_turf(src)) + var/obj/item/bodybag/B = foldedbag_instance || new foldedbag_path usr.put_in_hands(B) qdel(src) @@ -77,17 +92,18 @@ . = ..() if(over_object == usr && Adjacent(usr) && (in_range(src, usr) || usr.contents.Find(src))) if(!ishuman(usr)) - return 0 + return if(opened) - return 0 + to_chat(usr, "You wrestle with [src], but it won't fold while unzipped.") + return if(contents.len >= mob_storage_capacity / 2) to_chat(usr, "There are too many things inside of [src] to fold it up!") - return 0 + return for(var/obj/item/bodybag/bluespace/B in src) to_chat(usr, "You can't recursively fold bluespace body bags!" ) - return 0 + return visible_message("[usr] folds up [src].") - var/obj/item/bodybag/B = new foldedbag_path(get_turf(src)) + var/obj/item/bodybag/B = foldedbag_instance || new foldedbag_path usr.put_in_hands(B) for(var/atom/movable/A in contents) A.forceMove(B) diff --git a/code/game/objects/structures/crates_lockers/closets/job_closets.dm b/code/game/objects/structures/crates_lockers/closets/job_closets.dm index 17b0b110f90..835427e7cb8 100644 --- a/code/game/objects/structures/crates_lockers/closets/job_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/job_closets.dm @@ -61,7 +61,7 @@ new /obj/item/flashlight(src) for(var/i in 1 to 3) new /obj/item/caution(src) - new /obj/item/holosign_creator(src) + new /obj/item/holosign_creator/janibarrier(src) new /obj/item/lightreplacer(src) new /obj/item/soap(src) new /obj/item/storage/bag/trash(src) @@ -101,9 +101,10 @@ new /obj/item/clothing/accessory/pocketprotector/cosmetology(src) new /obj/item/clothing/under/rank/chaplain(src) new /obj/item/clothing/shoes/sneakers/black(src) - new /obj/item/clothing/suit/nun(src) + new /obj/item/clothing/suit/chaplainsuit/nun(src) new /obj/item/clothing/head/nun_hood(src) - new /obj/item/clothing/suit/holidaypriest(src) + new /obj/item/clothing/suit/hooded/chaplainsuit/monkfrock + new /obj/item/clothing/suit/chaplainsuit/holidaypriest(src) new /obj/item/storage/backpack/cultpack(src) new /obj/item/storage/fancy/candle_box(src) new /obj/item/storage/fancy/candle_box(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm index 4c62e106ce2..612381fd7c2 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm @@ -45,6 +45,11 @@ for(var/i = 0, i < 4, i++) new /obj/item/reagent_containers/food/snacks/meat/slab/monkey(src) +/obj/structure/closet/secure_closet/freezer/meat/open + req_access = null + locked = FALSE + + /obj/structure/closet/secure_closet/freezer/fridge name = "refrigerator" req_access = list(ACCESS_KITCHEN) @@ -58,6 +63,10 @@ for(var/i = 0, i < 2, i++) new /obj/item/storage/fancy/egg_box(src) +/obj/structure/closet/secure_closet/freezer/fridge/open + req_access = null + locked = FALSE + /obj/structure/closet/secure_closet/freezer/money name = "freezer" desc = "This contains cold hard cash." diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 51fdb490bfc..9cf6d015a22 100755 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -183,6 +183,7 @@ new /obj/item/clothing/under/rank/det/grey(src) new /obj/item/clothing/accessory/waistcoat(src) new /obj/item/clothing/suit/det_suit/grey(src) + new /obj/item/clothing/suit/det_suit/noir(src) new /obj/item/clothing/head/fedora(src) new /obj/item/clothing/shoes/laceup(src) new /obj/item/storage/box/evidence(src) diff --git a/code/game/objects/structures/crates_lockers/crates/critter.dm b/code/game/objects/structures/crates_lockers/crates/critter.dm index b94da08322b..55020db69ab 100644 --- a/code/game/objects/structures/crates_lockers/crates/critter.dm +++ b/code/game/objects/structures/crates_lockers/crates/critter.dm @@ -35,4 +35,10 @@ if(tank) return tank.air_contents else - return loc.return_air() \ No newline at end of file + return loc.return_air() + +/obj/structure/closet/crate/critter/return_analyzable_air() + if(tank) + return tank.return_analyzable_air() + else + return null \ No newline at end of file diff --git a/code/game/objects/structures/crates_lockers/crates/secure.dm b/code/game/objects/structures/crates_lockers/crates/secure.dm index 4f46bb4117f..4b783894ea2 100644 --- a/code/game/objects/structures/crates_lockers/crates/secure.dm +++ b/code/game/objects/structures/crates_lockers/crates/secure.dm @@ -26,7 +26,7 @@ if(prob(tamperproof) && damage_amount >= DAMAGE_PRECISION) boom() else - ..() + return ..() /obj/structure/closet/crate/secure/proc/boom(mob/user) diff --git a/code/game/objects/structures/divine.dm b/code/game/objects/structures/divine.dm index 5fd480f6fd6..7587a8ad5d1 100644 --- a/code/game/objects/structures/divine.dm +++ b/code/game/objects/structures/divine.dm @@ -40,12 +40,12 @@ last_process = world.time to_chat(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(CALLBACK(src, .proc/update_icons), time_between_uses) + update_icon() + addtimer(CALLBACK(src, .proc/update_icon), time_between_uses) -/obj/structure/healingfountain/proc/update_icons() +/obj/structure/healingfountain/update_icon() if(last_process + time_between_uses > world.time) icon_state = "fountain" else - icon_state = "fountain-red" \ No newline at end of file + icon_state = "fountain-red" diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index e50b4d91f9f..72f96482b69 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -241,6 +241,7 @@ //door.req_access = req_access door.electronics = electronics door.heat_proof = heat_proof_finished + door.security_level = 0 if(electronics.one_access) door.req_one_access = electronics.accesses else diff --git a/code/game/objects/structures/door_assembly_types.dm b/code/game/objects/structures/door_assembly_types.dm index 28d74422fc9..fe9c4e7bbce 100644 --- a/code/game/objects/structures/door_assembly_types.dm +++ b/code/game/objects/structures/door_assembly_types.dm @@ -114,7 +114,7 @@ airlock_type = /obj/machinery/door/airlock/highsecurity noglass = TRUE material_type = /obj/item/stack/sheet/plasteel - material_amt = 6 + material_amt = 4 /obj/structure/door_assembly/door_assembly_vault name = "vault door assembly" @@ -124,7 +124,7 @@ airlock_type = /obj/machinery/door/airlock/vault noglass = TRUE material_type = /obj/item/stack/sheet/plasteel - material_amt = 8 + material_amt = 6 /obj/structure/door_assembly/door_assembly_shuttle name = "shuttle airlock assembly" diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm index cb39797b347..8cc67b75a86 100644 --- a/code/game/objects/structures/false_walls.dm +++ b/code/game/objects/structures/false_walls.dm @@ -7,7 +7,7 @@ anchored = TRUE icon = 'icons/turf/walls/wall.dmi' icon_state = "wall" - layer = CLOSED_TURF_LAYER + layer = LOW_OBJ_LAYER density = TRUE opacity = 1 max_integrity = 100 diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index 0b7d3e0bd49..f786ed3074a 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -313,18 +313,9 @@ throw_speed = 2 throw_range = 4 - -/obj/item/twohanded/required/kirbyplants/equipped(mob/living/user) - var/image/I = image(icon = 'icons/obj/flora/plants.dmi' , icon_state = src.icon_state, loc = user) - I.copy_overlays(src) - I.override = 1 - add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/everyone, "sneaking_mission", I) - I.layer = ABOVE_MOB_LAYER - ..() - -/obj/item/twohanded/required/kirbyplants/dropped(mob/living/user) - ..() - user.remove_alt_appearance("sneaking_mission") +/obj/item/twohanded/required/kirbyplants/Initialize() + . = ..() + AddComponent(/datum/component/tactical) /obj/item/twohanded/required/kirbyplants/random icon = 'icons/obj/flora/_flora.dmi' diff --git a/code/game/objects/structures/fugitive_role_spawners.dm b/code/game/objects/structures/fugitive_role_spawners.dm new file mode 100644 index 00000000000..13e0c84fe40 --- /dev/null +++ b/code/game/objects/structures/fugitive_role_spawners.dm @@ -0,0 +1,43 @@ + + +/obj/effect/mob_spawn/human/fugitive + assignedrole = "Fugitive Hunter" + flavour_text = "" //the flavor text will be the backstory argument called on the antagonist's greet, see hunter.dm for details + roundstart = FALSE + death = FALSE + random = TRUE + show_flavour = FALSE + density = TRUE + var/back_story = "error" + +/obj/effect/mob_spawn/human/fugitive/Initialize(mapload) + . = ..() + notify_ghosts("Hunters are waking up looking for refugees!", source = src, action=NOTIFY_ATTACK, flashwindow = FALSE, ignore_key = POLL_IGNORE_FUGITIVE) + +/obj/effect/mob_spawn/human/fugitive/special(mob/living/new_spawn) + var/datum/antagonist/fugitive_hunter/fughunter = new + fughunter.backstory = back_story + new_spawn.mind.add_antag_datum(fughunter) + fughunter.greet() + message_admins("[ADMIN_LOOKUPFLW(new_spawn)] has been made into a Fugitive Hunter by an event.") + log_game("[key_name(new_spawn)] was spawned as a Fugitive Hunter by an event.") + +/obj/effect/mob_spawn/human/fugitive/spacepol + name = "police pod" + desc = "A small sleeper typically used to put people to sleep for briefing on the mission." + mob_name = "a spacepol officer" + flavour_text = "Justice has arrived. I am a member of the Spacepol!" + back_story = "space cop" + outfit = /datum/outfit/spacepol + icon = 'icons/obj/machines/sleeper.dmi' + icon_state = "sleeper" + +/obj/effect/mob_spawn/human/fugitive/russian + name = "russian pod" + flavour_text = "Ay blyat. I am a space-russian smuggler! We were mid-flight when our cargo was beamed off our ship!" + back_story = "russian" + desc = "A small sleeper typically used to make long distance travel a bit more bearable." + mob_name = "russian" + outfit = /datum/outfit/russiancorpse + icon = 'icons/obj/machines/sleeper.dmi' + icon_state = "sleeper" diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm index 8b825bfc5f5..9a9a16f7c7a 100644 --- a/code/game/objects/structures/ghost_role_spawners.dm +++ b/code/game/objects/structures/ghost_role_spawners.dm @@ -50,7 +50,7 @@ /obj/effect/mob_spawn/human/ash_walker/special(mob/living/new_spawn) new_spawn.fully_replace_character_name(null,random_unique_lizard_name(gender)) - to_chat(new_spawn, "Drag the corpses of men and beasts to your nest. It will absorb them to create more of your kind. Glory to the Necropolis!") + to_chat(new_spawn, "Drag the corpses of men and beasts to your nest. It will absorb them to create more of your kind. Don't leave your nest undefended, protect it with your life. Glory to the Necropolis!") new_spawn.grant_language(/datum/language/draconic) var/datum/language_holder/holder = new_spawn.get_language_holder() diff --git a/code/game/objects/structures/guncase.dm b/code/game/objects/structures/guncase.dm index a5f7601c67c..73bbe5087a1 100644 --- a/code/game/objects/structures/guncase.dm +++ b/code/game/objects/structures/guncase.dm @@ -13,7 +13,7 @@ var/capacity = 4 /obj/structure/guncase/Initialize(mapload) - ..() + . = ..() if(mapload) for(var/obj/item/I in loc.contents) if(istype(I, gun_category)) diff --git a/code/game/objects/structures/holosign.dm b/code/game/objects/structures/holosign.dm index 5c48f762501..709a1a92948 100644 --- a/code/game/objects/structures/holosign.dm +++ b/code/game/objects/structures/holosign.dm @@ -73,6 +73,11 @@ icon = 'icons/effects/effects.dmi' icon_state = "holosign" +/obj/structure/holosign/barrier/wetsign/CanPass(atom/movable/mover, turf/target) + if(istype(mover, /obj/vehicle/ridden/janicart)) + return TRUE + return ..() + /obj/structure/holosign/barrier/engineering icon_state = "holosign_engi" rad_flags = RAD_PROTECT_CONTENTS | RAD_NO_CONTAMINATE diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm index db84d02446e..89bdc95d59d 100644 --- a/code/game/objects/structures/lattice.dm +++ b/code/game/objects/structures/lattice.dm @@ -51,6 +51,20 @@ new /obj/item/stack/rods(get_turf(src), number_of_rods) qdel(src) +/obj/structure/lattice/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) + if(the_rcd.mode == RCD_FLOORWALL) + return list("mode" = RCD_FLOORWALL, "delay" = 0, "cost" = 2) + +/obj/structure/lattice/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, passed_mode) + if(passed_mode == RCD_FLOORWALL) + to_chat(user, "You build a floor.") + var/turf/T = src.loc + if(isspaceturf(T)) + T.PlaceOnTop(/turf/open/floor/plating) + qdel(src) + return TRUE + return FALSE + /obj/structure/lattice/singularity_pull(S, current_size) if(current_size >= STAGE_FOUR) deconstruct() diff --git a/code/game/objects/structures/manned_turret.dm b/code/game/objects/structures/manned_turret.dm index abc099a9956..80ffced5a2b 100644 --- a/code/game/objects/structures/manned_turret.dm +++ b/code/game/objects/structures/manned_turret.dm @@ -186,7 +186,7 @@ /obj/item/gun_control/Initialize() . = ..() - add_trait(TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) turret = loc if(!istype(turret)) return INITIALIZE_HINT_QDEL diff --git a/code/game/objects/structures/mop_bucket.dm b/code/game/objects/structures/mop_bucket.dm index d5f94a2a566..bb34ecfec7d 100644 --- a/code/game/objects/structures/mop_bucket.dm +++ b/code/game/objects/structures/mop_bucket.dm @@ -21,7 +21,8 @@ playsound(loc, 'sound/effects/slosh.ogg', 25, 1) update_icon() else - return ..() + . = ..() + update_icon() /obj/structure/mopbucket/update_icon() cut_overlays() diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index 203a0fa2bbb..067c365cdad 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -184,7 +184,7 @@ GLOBAL_LIST_EMPTY(bodycontainers) //Let them act as spawnpoints for revenants an for(var/mob/living/M in compiled) var/mob/living/mob_occupant = get_mob_or_brainmob(M) - if(mob_occupant.client && !mob_occupant.suiciding && !(mob_occupant.has_trait(TRAIT_BADDNA)) && !mob_occupant.hellbound) + if(mob_occupant.client && !mob_occupant.suiciding && !(HAS_TRAIT(mob_occupant, TRAIT_BADDNA)) && !mob_occupant.hellbound) icon_state = "morgue4" // Cloneable if(mob_occupant.stat == DEAD && beeper) if(world.time > next_beep) diff --git a/code/game/objects/structures/musician.dm b/code/game/objects/structures/musician.dm index 3a7f6f42f1f..7de9375f920 100644 --- a/code/game/objects/structures/musician.dm +++ b/code/game/objects/structures/musician.dm @@ -73,7 +73,7 @@ var/sound/music_played = sound(soundfile) for(var/i in hearing_mobs) var/mob/M = i - if(user.has_trait(TRAIT_MUSICIAN) && isliving(M)) + if(HAS_TRAIT(user, TRAIT_MUSICIAN) && isliving(M)) var/mob/living/L = M L.apply_status_effect(STATUS_EFFECT_GOOD_MUSIC) if(!M.client || !(M.client.prefs.toggles & SOUND_INSTRUMENTS)) diff --git a/code/game/objects/structures/petrified_statue.dm b/code/game/objects/structures/petrified_statue.dm index 1db20b8c95b..bbe45c136b3 100644 --- a/code/game/objects/structures/petrified_statue.dm +++ b/code/game/objects/structures/petrified_statue.dm @@ -17,7 +17,7 @@ L.buckled.unbuckle_mob(L,force=1) L.visible_message("[L]'s skin rapidly turns to marble!", "Your body freezes up! Can't... move... can't... think...") L.forceMove(src) - L.add_trait(TRAIT_MUTE, STATUE_MUTE) + ADD_TRAIT(L, TRAIT_MUTE, STATUE_MUTE) L.faction += "mimic" //Stops mimics from instaqdeling people in statues L.status_flags |= GODMODE obj_integrity = L.health + 100 //stoning damaged mobs will result in easier to shatter statues @@ -59,7 +59,7 @@ if(petrified_mob) petrified_mob.status_flags &= ~GODMODE petrified_mob.forceMove(loc) - petrified_mob.remove_trait(TRAIT_MUTE, STATUE_MUTE) + REMOVE_TRAIT(petrified_mob, TRAIT_MUTE, STATUE_MUTE) petrified_mob.take_overall_damage((petrified_mob.health - obj_integrity + 100)) //any new damage the statue incurred is transfered to the mob petrified_mob.faction -= "mimic" petrified_mob = null diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index 9f5d6035afb..9fd097f6ad2 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -96,7 +96,7 @@ FLOOR SAFES return var/mob/living/carbon/human/user = usr - if(!user.canUseTopic(src)) + if(!user.canUseTopic(src, BE_CLOSE)) return var/canhear = FALSE diff --git a/code/game/objects/structures/shower.dm b/code/game/objects/structures/shower.dm index ebe2ba047bb..6053fd2ba8b 100644 --- a/code/game/objects/structures/shower.dm +++ b/code/game/objects/structures/shower.dm @@ -165,8 +165,8 @@ if(ishuman(M)) var/mob/living/carbon/human/H = M if(check_clothes(L)) - to_chat(L, "You shower with your clothes on, and feel like an idiot.") - SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "badshower", /datum/mood_event/idiot_shower) + if(H.hygiene <= 75) + to_chat(H, "You have to remove your clothes to get clean!") else H.set_hygiene(HYGIENE_LEVEL_CLEAN) SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "shower", /datum/mood_event/nice_shower) diff --git a/code/game/objects/structures/signs/signs_departments.dm b/code/game/objects/structures/signs/signs_departments.dm index 12932bbab66..a1e3d63fdc8 100644 --- a/code/game/objects/structures/signs/signs_departments.dm +++ b/code/game/objects/structures/signs/signs_departments.dm @@ -30,6 +30,11 @@ desc = "A sign labelling an area where evacuation procedures take place." icon_state = "evac" +/obj/structure/sign/departments/drop + name = "\improper DROP PODS" + desc = "A sign labelling an area where drop pod loading procedures take place." + icon_state = "drop" + /obj/structure/sign/departments/custodian name = "\improper CUSTODIAN" desc = "A sign labelling an area where the custodian works." diff --git a/code/game/objects/structures/signs/signs_warning.dm b/code/game/objects/structures/signs/signs_warning.dm index 2f4daf109a6..e1426fb4382 100644 --- a/code/game/objects/structures/signs/signs_warning.dm +++ b/code/game/objects/structures/signs/signs_warning.dm @@ -75,3 +75,13 @@ name = "\improper ENGINEERING SAFETY" desc = "A sign detailing the various safety protocols when working on-site to ensure a safe shift." icon_state = "safety" + +/obj/structure/sign/warning/explosives + name = "\improper HIGH EXPLOSIVES" + desc = "A warning sign which reads 'HIGH EXPLOSIVES'." + icon_state = "explosives" + +/obj/structure/sign/warning/explosives/alt + name = "\improper HIGH EXPLOSIVES" + desc = "A warning sign which reads 'HIGH EXPLOSIVES'." + icon_state = "explosives2" \ No newline at end of file diff --git a/code/game/objects/structures/spawner.dm b/code/game/objects/structures/spawner.dm index 12b03d5f9a7..06b19db1bf5 100644 --- a/code/game/objects/structures/spawner.dm +++ b/code/game/objects/structures/spawner.dm @@ -45,6 +45,18 @@ spawn_text = "climbs out of" faction = list("skeleton") +/obj/structure/spawner/clown + name = "Laughing Larry" + desc = "A laughing, jovial figure. Something seems stuck in his throat." + icon_state = "clownbeacon" + icon = 'icons/obj/device.dmi' + max_integrity = 200 + max_mobs = 15 + spawn_time = 150 + mob_types = list(/mob/living/simple_animal/hostile/retaliate/clown, /mob/living/simple_animal/hostile/retaliate/clown/fleshclown, /mob/living/simple_animal/hostile/retaliate/clown/clownhulk, /mob/living/simple_animal/hostile/retaliate/clown/longface, /mob/living/simple_animal/hostile/retaliate/clown/clownhulk/chlown, /mob/living/simple_animal/hostile/retaliate/clown/clownhulk/honcmunculus, /mob/living/simple_animal/hostile/retaliate/clown/mutant/blob, /mob/living/simple_animal/hostile/retaliate/clown/banana, /mob/living/simple_animal/hostile/retaliate/clown/honkling, /mob/living/simple_animal/hostile/retaliate/clown/lube) + spawn_text = "climbs out of" + faction = list("clown") + /obj/structure/spawner/mining name = "monster den" desc = "A hole dug into the ground, harboring all kinds of monsters found within most caves or mining asteroids." diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 4166d023ef3..acaed5ee049 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -413,7 +413,7 @@ buildstack = /obj/item/stack/sheet/mineral/silver smooth = SMOOTH_FALSE can_buckle = 1 - buckle_lying = 1 + buckle_lying = -1 buckle_requires_restraints = 1 var/mob/living/carbon/human/patient = null var/obj/machinery/computer/operating/computer = null diff --git a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm index fb5988f72af..9a2898f2d89 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm @@ -15,6 +15,15 @@ var/flipped_build_type var/base_icon +/obj/structure/c_transit_tube/proc/can_wrench_in_loc(mob/user) + var/turf/source_turf = get_turf(loc) + var/existing_tubes = 0 + for(var/obj/structure/transit_tube/tube in source_turf) + existing_tubes +=1 + if(existing_tubes >= 2) + to_chat(user, "You cannot wrench anymore transit tubes! ") + return FALSE + return TRUE /obj/structure/c_transit_tube/ComponentInitialize() . = ..() @@ -32,9 +41,11 @@ icon_state = "[base_icon][flipped]" /obj/structure/c_transit_tube/wrench_act(mob/living/user, obj/item/I) + if(!can_wrench_in_loc(user)) + return to_chat(user, "You start attaching the [name]...") add_fingerprint(user) - if(I.use_tool(src, user, time_to_unwrench, volume=50)) + if(I.use_tool(src, user, time_to_unwrench, volume=50, extra_checks=CALLBACK(src, .proc/can_wrench_in_loc, user))) to_chat(user, "You attach the [name].") var/obj/structure/transit_tube/R = new build_type(loc, dir) transfer_fingerprints_to(R) diff --git a/code/game/objects/structures/transit_tubes/transit_tube_pod.dm b/code/game/objects/structures/transit_tubes/transit_tube_pod.dm index 2143ff5f6dc..0b59d4177b1 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_pod.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_pod.dm @@ -153,6 +153,9 @@ /obj/structure/transit_tube_pod/return_air() return air_contents +/obj/structure/transit_tube_pod/return_analyzable_air() + return air_contents + /obj/structure/transit_tube_pod/assume_air(datum/gas_mixture/giver) return air_contents.merge(giver) diff --git a/code/game/sound.dm b/code/game/sound.dm index b0f073e1538..554716286b0 100644 --- a/code/game/sound.dm +++ b/code/game/sound.dm @@ -1,6 +1,6 @@ -/proc/playsound(atom/source, input, vol as num, vary, extrarange as num, falloff, frequency = null, channel = 0, pressure_affected = TRUE, ignore_walls = TRUE) +/proc/playsound(atom/source, input, vol as num, vary, extrarange as num, falloff, frequency = null, channel = 0, pressure_affected = TRUE, ignore_walls = TRUE, do_owner) if(isarea(source)) - throw EXCEPTION("playsound(): source is an area") + CRASH("playsound(): source is an area") return var/turf/turf_source = get_turf(source) @@ -20,16 +20,25 @@ for(var/P in listeners) var/mob/M = P if(get_dist(M, turf_source) <= maxdistance) - sound_or_datum(M, turf_source, input, vol, vary, frequency, falloff, channel, pressure_affected) + sound_or_datum(M, turf_source, source, input, do_owner, vol, vary, frequency, falloff, channel, pressure_affected) for(var/P in SSmobs.dead_players_by_zlevel[z]) var/mob/M = P if(get_dist(M, turf_source) <= maxdistance) - sound_or_datum(M, turf_source, input, vol, vary, frequency, falloff, channel, pressure_affected) + sound_or_datum(M, turf_source, source, input, do_owner, vol, vary, frequency, falloff, channel, pressure_affected) -/proc/sound_or_datum(mob/receiver, turf/turf_source, input, vol as num, vary, frequency, falloff, channel = 0, pressure_affected = TRUE) +/proc/sound_or_datum(mob/receiver, turf/turf_source, atom/source, input, datum/do_owner, vol as num, vary, frequency, falloff, channel = 0, pressure_affected = TRUE) if(istype(input, /datum/outputs)) + var/last_played_time + if(do_owner) + last_played_time = do_owner.datum_outputs[input] + else + last_played_time = source.datum_outputs[input] var/datum/outputs/O = input - O.send_info(receiver, turf_source, vol, vary, frequency, falloff, channel, pressure_affected) + if(O.send_info(receiver, turf_source, vol, vary, frequency, falloff, channel, pressure_affected, last_played_time)) + if(do_owner) + do_owner.datum_outputs[input] = world.time + else + source.datum_outputs[input] = world.time else var/sound/S = sound(get_sfx(input)) receiver.playsound_local(turf_source, input, vol, vary, frequency, falloff, channel, pressure_affected, S) @@ -172,4 +181,6 @@ soundin = pick('sound/voice/beepsky/god.ogg', 'sound/voice/beepsky/iamthelaw.ogg', 'sound/voice/beepsky/secureday.ogg', 'sound/voice/beepsky/radio.ogg', 'sound/voice/beepsky/insult.ogg', 'sound/voice/beepsky/creep.ogg') if("honkbot_e") soundin = pick('sound/items/bikehorn.ogg', 'sound/items/AirHorn2.ogg', 'sound/misc/sadtrombone.ogg', 'sound/items/AirHorn.ogg', 'sound/effects/reee.ogg', 'sound/items/WEEOO1.ogg', 'sound/voice/beepsky/iamthelaw.ogg', 'sound/voice/beepsky/creep.ogg','sound/magic/Fireball.ogg' ,'sound/effects/pray.ogg', 'sound/voice/hiss1.ogg','sound/machines/buzz-sigh.ogg', 'sound/machines/ping.ogg', 'sound/weapons/flashbang.ogg', 'sound/weapons/bladeslice.ogg') - return soundin + if("goose") + soundin = pick('sound/creatures/goose1.ogg', 'sound/creatures/goose2.ogg', 'sound/creatures/goose3.ogg', 'sound/creatures/goose4.ogg') + return soundin \ No newline at end of file diff --git a/code/game/turfs/change_turf.dm b/code/game/turfs/change_turf.dm index c5b1bc22b68..886dda23c74 100644 --- a/code/game/turfs/change_turf.dm +++ b/code/game/turfs/change_turf.dm @@ -16,7 +16,7 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( if(turf_type) var/turf/newT = ChangeTurf(turf_type, baseturf_type, flags) SSair.remove_from_active(newT) - newT.CalculateAdjacentTurfs() + CALCULATE_ADJACENT_TURFS(newT) SSair.add_to_active(newT,1) /turf/proc/copyTurf(turf/T) @@ -150,6 +150,8 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( newTurf.air = stashed_air SSair.add_to_active(newTurf) else + if(ispath(path,/turf/closed)) + flags |= CHANGETURF_RECALC_ADJACENT return ..() // Take off the top layer turf and replace it with the next baseturf down @@ -273,7 +275,10 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( //If you modify this function, ensure it works correctly with lateloaded map templates. /turf/proc/AfterChange(flags) //called after a turf has been replaced in ChangeTurf() levelupdate() - CalculateAdjacentTurfs() + if(flags & CHANGETURF_RECALC_ADJACENT) + ImmediateCalculateAdjacentTurfs() + else + CALCULATE_ADJACENT_TURFS(src) //update firedoor adjacency var/list/turfs_to_check = get_adjacent_open_turfs(src) | src diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index be75bd85d0c..3c6e84cf38c 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -173,7 +173,7 @@ update_visuals() current_cycle = times_fired - CalculateAdjacentTurfs() + ImmediateCalculateAdjacentTurfs() for(var/i in atmos_adjacent_turfs) var/turf/open/enemy_tile = i var/datum/gas_mixture/enemy_air = enemy_tile.return_air() diff --git a/code/game/turfs/simulated/floor/misc_floor.dm b/code/game/turfs/simulated/floor/misc_floor.dm index f75772a2302..c11f5860fb9 100644 --- a/code/game/turfs/simulated/floor/misc_floor.dm +++ b/code/game/turfs/simulated/floor/misc_floor.dm @@ -260,3 +260,12 @@ icon = 'icons/obj/clockwork_objects.dmi' icon_state = "clockwork_floor" floor_tile = /obj/item/stack/tile/bronze + +/turf/open/floor/white + name = "white floor" + desc = "A tile in a pure white color." + icon_state = "pure_white" + +/turf/open/floor/black + name = "black floor" + icon_state = "black" diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index 2a252ba308a..8c49c7ea5a6 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -129,9 +129,20 @@ else to_chat(user, "You hit [src], to no effect!") +/turf/open/floor/plating/foam/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) + if(the_rcd.mode == RCD_FLOORWALL) + return list("mode" = RCD_FLOORWALL, "delay" = 0, "cost" = 1) + +/turf/open/floor/plating/foam/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, passed_mode) + if(passed_mode == RCD_FLOORWALL) + to_chat(user, "You build a floor.") + ChangeTurf(/turf/open/floor/plating) + return TRUE + return FALSE + /turf/open/floor/plating/foam/ex_act() ..() ScrapeAway() -/turf/open/floor/plating/foam/tool_act(mob/living/user, obj/tool/I, tool_type) +/turf/open/floor/plating/foam/tool_act(mob/living/user, obj/item/I, tool_type) return diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index c68fa5f3a3b..90d167ce6c8 100755 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -62,7 +62,7 @@ add_overlay(/obj/effect/fullbright) if(requires_activation) - CalculateAdjacentTurfs() + CALCULATE_ADJACENT_TURFS(src) SSair.add_to_active(src) if (light_power && light_range) @@ -85,7 +85,7 @@ return INITIALIZE_HINT_NORMAL /turf/proc/Initalize_Atmos(times_fired) - CalculateAdjacentTurfs() + CALCULATE_ADJACENT_TURFS(src) /turf/Destroy(force) . = QDEL_HINT_IWILLGC @@ -175,6 +175,8 @@ LC.handlecable(C, user) return C.loaded.place_turf(src, user) + if(C.wiring_gui_menu) + C.wiringGuiUpdate(user) C.is_empty(user) /turf/attackby(obj/item/C, mob/user, params) @@ -505,9 +507,6 @@ return /turf/handle_fall(mob/faller, forced) - if(isliving(faller)) - var/mob/living/L = faller - L.lying = pick(90, 270) if(!forced) return if(has_gravity(src)) @@ -531,13 +530,15 @@ /turf/AllowDrop() return TRUE -/turf/proc/add_vomit_floor(mob/living/carbon/M, toxvomit = 0) +/turf/proc/add_vomit_floor(mob/living/carbon/M, toxvomit = NONE) var/obj/effect/decal/cleanable/vomit/V = new /obj/effect/decal/cleanable/vomit(src, M.get_static_viruses()) // If the vomit combined, apply toxicity and reagents to the old vomit if (QDELETED(V)) V = locate() in src - // Make toxins vomit look different - if(toxvomit) + // Make toxins and blazaam vomit look different + if(toxvomit == VOMIT_PURPLE) + V.icon_state = "vomitpurp_[pick(1,4)]" + else if(toxvomit == VOMIT_TOXIC) V.icon_state = "vomittox_[pick(1,4)]" if(M.reagents) clear_reagents_to_vomit_pool(M,V) diff --git a/code/game/world.dm b/code/game/world.dm index e1e75a87c7a..ef449e51efa 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -1,8 +1,6 @@ #define RESTART_COUNTER_PATH "data/round_counter.txt" GLOBAL_VAR(restart_counter) -//TODO: Replace INFINITY with the version that fixes http://www.byond.com/forum/?post=2407430 -GLOBAL_VAR_INIT(bypass_tgs_reboot, world.system_type == UNIX && world.byond_build < INFINITY) //This happens after the Master subsystem new(s) (it's a global datum) //So subsystems globals exist, but are not initialised @@ -16,12 +14,14 @@ GLOBAL_VAR_INIT(bypass_tgs_reboot, world.system_type == UNIX && world.byond_buil make_datum_references_lists() //initialises global lists for referencing frequently used datums (so that we only ever do it once) - TgsNew(new /datum/tgs_event_handler/tg, minimum_required_security_level = TGS_SECURITY_TRUSTED) + TgsNew(minimum_required_security_level = TGS_SECURITY_TRUSTED) GLOB.revdata = new config.Load(params[OVERRIDE_CONFIG_DIRECTORY_PARAMETER]) + load_admins() + //SetupLogs depends on the RoundID, so lets check //DB schema and set RoundID if we can SSdbcore.CheckSchemaVersion() @@ -30,9 +30,11 @@ GLOBAL_VAR_INIT(bypass_tgs_reboot, world.system_type == UNIX && world.byond_buil #ifndef USE_CUSTOM_ERROR_HANDLER world.log = file("[GLOB.log_directory]/dd.log") +#else + if (TgsAvailable()) + world.log = file("[GLOB.log_directory]/dd.log") //not all runtimes trigger world/Error, so this is the only way to ensure we can see all of them. #endif - load_admins() LoadVerbs(/datum/verbs/menu) if(CONFIG_GET(flag/usewhitelist)) load_whitelist() @@ -99,6 +101,9 @@ GLOBAL_VAR_INIT(bypass_tgs_reboot, world.system_type == UNIX && world.byond_buil GLOB.world_game_log = "[GLOB.log_directory]/game.log" GLOB.world_mecha_log = "[GLOB.log_directory]/mecha.log" + GLOB.world_virus_log = "[GLOB.log_directory]/virus.log" + GLOB.world_cloning_log = "[GLOB.log_directory]/cloning.log" + GLOB.world_asset_log = "[GLOB.log_directory]/asset.log" GLOB.world_attack_log = "[GLOB.log_directory]/attack.log" GLOB.world_pda_log = "[GLOB.log_directory]/pda.log" GLOB.world_telecomms_log = "[GLOB.log_directory]/telecomms.log" @@ -106,9 +111,11 @@ GLOBAL_VAR_INIT(bypass_tgs_reboot, world.system_type == UNIX && world.byond_buil GLOB.world_href_log = "[GLOB.log_directory]/hrefs.log" GLOB.sql_error_log = "[GLOB.log_directory]/sql.log" GLOB.world_qdel_log = "[GLOB.log_directory]/qdel.log" + GLOB.world_map_error_log = "[GLOB.log_directory]/map_errors.log" GLOB.world_runtime_log = "[GLOB.log_directory]/runtime.log" GLOB.query_debug_log = "[GLOB.log_directory]/query_debug.log" GLOB.world_job_debug_log = "[GLOB.log_directory]/job_debug.log" + GLOB.world_paper_log = "[GLOB.log_directory]/paper.log" #ifdef UNIT_TESTS GLOB.test_log = file("[GLOB.log_directory]/tests.log") @@ -202,9 +209,8 @@ GLOBAL_VAR_INIT(bypass_tgs_reboot, world.system_type == UNIX && world.byond_buil else to_chat(world, "Rebooting world...") Master.Shutdown() //run SS shutdowns - - if(!GLOB.bypass_tgs_reboot) - TgsReboot() + + TgsReboot() if(TEST_RUN_PARAMETER in params) FinishTestRun() @@ -265,15 +271,19 @@ GLOBAL_VAR_INIT(bypass_tgs_reboot, world.system_type == UNIX && world.byond_buil s += "" s += ")" - var/n = 0 - for (var/mob/M in GLOB.player_list) - if (M.client) - n++ + var/players = GLOB.clients.len - if (n > 1) - features += "~[n] players" - else if (n > 0) - features += "~[n] player" + var/popcaptext = "" + var/popcap = max(CONFIG_GET(number/extreme_popcap), CONFIG_GET(number/hard_popcap), CONFIG_GET(number/soft_popcap)) + if (popcap) + popcaptext = "/[popcap]" + + if (players > 1) + features += "[players][popcaptext] players" + else if (players > 0) + features += "[players][popcaptext] player" + + game_state = (CONFIG_GET(number/extreme_popcap) && players >= CONFIG_GET(number/extreme_popcap)) //tells the hub if we are full if (!host && hostedby) features += "hosted by [hostedby]" diff --git a/code/modules/VR/vr_human.dm b/code/modules/VR/vr_human.dm index 56f0986fef6..81c774d0837 100644 --- a/code/modules/VR/vr_human.dm +++ b/code/modules/VR/vr_human.dm @@ -7,10 +7,15 @@ . = ..() quit_action = new() quit_action.Grant(src) + check_area() + +/mob/living/carbon/human/virtual_reality/Moved() + . = ..() + check_area() /mob/living/carbon/human/virtual_reality/death() revert_to_reality() - ..() + . = ..() /mob/living/carbon/human/virtual_reality/Destroy() revert_to_reality() @@ -25,6 +30,8 @@ revert_to_reality(FALSE) /mob/living/carbon/human/virtual_reality/ghostize() + if(!real_mind && !vr_sleeper) + return ..() stack_trace("Ghostize was called on a virtual reality mob") /mob/living/carbon/human/virtual_reality/ghost() @@ -33,6 +40,23 @@ set desc = "Relinquish your life and enter the land of the dead." revert_to_reality(FALSE) +/mob/living/carbon/human/virtual_reality/proc/check_area() + var/area/check = get_area(src) + if(!check || !istype(check, /area/awaymission/vr)) + return + var/area/awaymission/vr/A = check + if(A.death) + to_chat(src, "It is unwise to attempt to break Virtual Reality.") + playsound(src, 'sound/effects/supermatter.ogg', 50, 1) + dust() + return + if(A.pacifist && !HAS_TRAIT_FROM(src, TRAIT_PACIFISM, VR_ZONE_TRAIT)) + ADD_TRAIT(src, TRAIT_PACIFISM, VR_ZONE_TRAIT) + to_chat(src, "You feel like your ability to fight other living beings is being suppressed.") + else if(!A.pacifist && HAS_TRAIT_FROM(src, TRAIT_PACIFISM, VR_ZONE_TRAIT)) + REMOVE_TRAIT(src, TRAIT_PACIFISM, VR_ZONE_TRAIT) + to_chat(src, "You feel that your ability to fight is no longer being suppressed.") + /mob/living/carbon/human/virtual_reality/proc/revert_to_reality(deathchecks = TRUE) if(real_mind && mind) real_mind.current.ckey = ckey @@ -44,6 +68,8 @@ if(deathchecks && vr_sleeper) vr_sleeper.vr_human = null vr_sleeper = null + if(!real_mind && !vr_sleeper) + ghostize() real_mind = null /datum/action/quit_vr diff --git a/code/modules/admin/IsBanned.dm b/code/modules/admin/IsBanned.dm index 9840bf72fc9..0b230348d67 100644 --- a/code/modules/admin/IsBanned.dm +++ b/code/modules/admin/IsBanned.dm @@ -2,38 +2,46 @@ //How many new ckey matches before we revert the stickyban to it's roundstart state //These are exclusive, so once it goes over one of these numbers, it reverts the ban -#define STICKYBAN_MAX_MATCHES 20 -#define STICKYBAN_MAX_EXISTING_USER_MATCHES 5 //ie, users who were connected before the ban triggered -#define STICKYBAN_MAX_ADMIN_MATCHES 2 +#define STICKYBAN_MAX_MATCHES 15 +#define STICKYBAN_MAX_EXISTING_USER_MATCHES 3 //ie, users who were connected before the ban triggered +#define STICKYBAN_MAX_ADMIN_MATCHES 1 -/world/IsBanned(key,address,computer_id,type,real_bans_only=FALSE) - if (!key || !address || !computer_id) +/world/IsBanned(key, address, computer_id, type, real_bans_only=FALSE) + debug_world_log("isbanned(): '[args.Join("', '")]'") + if (!key || (!real_bans_only && (!address || !computer_id))) if(real_bans_only) return FALSE log_access("Failed Login (invalid data): [key] [address]-[computer_id]") return list("reason"="invalid login data", "desc"="Error: Could not check ban status, Please try again. Error message: Your computer provided invalid or blank information to the server on connection (byond username, IP, and Computer ID.) Provided information for reference: Username:'[key]' IP:'[address]' Computer ID:'[computer_id]'. (If you continue to get this error, please restart byond or contact byond support.)") - if (text2num(computer_id) == 2147483647) //this cid causes stickybans to go haywire - log_access("Failed Login (invalid cid): [key] [address]-[computer_id]") - return list("reason"="invalid login data", "desc"="Error: Could not check ban status, Please try again. Error message: Your computer provided an invalid Computer ID.)") - var/admin = 0 + var/admin = FALSE var/ckey = ckey(key) + + //IsBanned can get re-called on a user in certain situations, this prevents that leading to repeated messages to admins. + var/static/list/checkedckeys = list() + //magic voodo to check for a key in a list while also adding that key to the list without having to do two associated lookups + var/message = !checkedckeys[ckey]++ + if(GLOB.admin_datums[ckey] || GLOB.deadmins[ckey]) - admin = 1 + admin = TRUE + + var/client/C = GLOB.directory[ckey] + //Whitelist - if(CONFIG_GET(flag/usewhitelist)) + if(!real_bans_only && !C && CONFIG_GET(flag/usewhitelist)) if(!check_whitelist(ckey)) if (admin) log_admin("The admin [key] has been allowed to bypass the whitelist") - message_admins("The admin [key] has been allowed to bypass the whitelist") - addclientmessage(ckey,"You have been allowed to bypass the whitelist") + if (message) + message_admins("The admin [key] has been allowed to bypass the whitelist") + addclientmessage(ckey,"You have been allowed to bypass the whitelist") else log_access("Failed Login: [key] - Not on whitelist") return list("reason"="whitelist", "desc" = "\nReason: You are not on the white list for this server") //Guest Checking - if(!real_bans_only && IsGuestKey(key)) + if(!real_bans_only && !C && IsGuestKey(key)) if (CONFIG_GET(flag/guest_ban)) log_access("Failed Login: [key] - Guests not allowed") return list("reason"="guest", "desc"="\nReason: Guests not allowed. Please sign in with a byond account.") @@ -43,14 +51,19 @@ //Population Cap Checking var/extreme_popcap = CONFIG_GET(number/extreme_popcap) - if(!real_bans_only && extreme_popcap && living_player_count() >= extreme_popcap && !admin) - log_access("Failed Login: [key] - Population cap reached") - return list("reason"="popcap", "desc"= "\nReason: [CONFIG_GET(string/extreme_popcap_message)]") + if(!real_bans_only && !C && extreme_popcap && !admin) + var/popcap_value = GLOB.clients.len + if(popcap_value >= extreme_popcap && !GLOB.joined_player_list.Find(ckey)) + if(!CONFIG_GET(flag/byond_member_bypass_popcap) || !world.IsSubscribed(ckey, "BYOND")) + log_access("Failed Login: [key] - Population cap reached") + return list("reason"="popcap", "desc"= "\nReason: [CONFIG_GET(string/extreme_popcap_message)]") + if(CONFIG_GET(flag/sql_enabled)) if(!SSdbcore.Connect()) var/msg = "Ban database connection failure. Key [ckey] not checked" log_world(msg) - message_admins(msg) + if (message) + message_admins(msg) else var/list/ban_details = is_banned_from_with_details(ckey, address, computer_id, "Server") for(var/i in ban_details) @@ -58,12 +71,14 @@ if(text2num(i["applies_to_admins"])) var/msg = "Admin [key] is admin banned, and has been disallowed access." log_admin(msg) - message_admins(msg) + if (message) + message_admins(msg) else var/msg = "Admin [key] has been allowed to bypass a matching non-admin ban on [i["key"]] [i["ip"]]-[i["computerid"]]." log_admin(msg) - message_admins(msg) - addclientmessage(ckey,"Admin [key] has been allowed to bypass a matching non-admin ban on [i["key"]] [i["ip"]]-[i["computerid"]].") + if (message) + message_admins(msg) + addclientmessage(ckey,"Admin [key] has been allowed to bypass a matching non-admin ban on [i["key"]] [i["ip"]]-[i["computerid"]].") continue var/expires = "This is a permanent ban." if(i["expiration_time"]) @@ -74,18 +89,23 @@ [expires]"} log_access("Failed Login: [key] [computer_id] [address] - Banned (#[i["id"]])") return list("reason"="Banned","desc"="[desc]") + var/list/ban = ..() //default pager ban stuff + if (ban) + if (!admin) + . = ban + if (real_bans_only) + return var/bannedckey = "ERROR" if (ban["ckey"]) bannedckey = ban["ckey"] var/newmatch = FALSE - var/client/C = GLOB.directory[ckey] - var/cachedban = SSstickyban.cache[bannedckey] - + var/list/cachedban = SSstickyban.cache[bannedckey] //rogue ban in the process of being reverted. - if (cachedban && cachedban["reverting"]) + if (cachedban && (cachedban["reverting"] || cachedban["timeout"])) + world.SetConfig("ban", bannedckey, null) return null if (cachedban && ckey != bannedckey) @@ -98,51 +118,80 @@ if (newmatch && cachedban) var/list/newmatches = cachedban["matches_this_round"] + var/list/pendingmatches = cachedban["matches_this_round"] var/list/newmatches_connected = cachedban["existing_user_matches_this_round"] var/list/newmatches_admin = cachedban["admin_matches_this_round"] - newmatches[ckey] = ckey if (C) newmatches_connected[ckey] = ckey + newmatches_connected = cachedban["existing_user_matches_this_round"] + pendingmatches[ckey] = ckey + sleep(STICKYBAN_ROGUE_CHECK_TIME) + pendingmatches -= ckey if (admin) newmatches_admin[ckey] = ckey + if (cachedban["reverting"] || cachedban["timeout"]) + return null + + newmatches[ckey] = ckey + + if (\ - newmatches.len > STICKYBAN_MAX_MATCHES || \ + newmatches.len+pendingmatches.len > STICKYBAN_MAX_MATCHES || \ newmatches_connected.len > STICKYBAN_MAX_EXISTING_USER_MATCHES || \ newmatches_admin.len > STICKYBAN_MAX_ADMIN_MATCHES \ - ) - if (cachedban["reverting"]) - return null - cachedban["reverting"] = TRUE + ) + + var/action + if (ban["fromdb"]) + cachedban["timeout"] = TRUE + action = "putting it on timeout for the remainder of the round" + else + cachedban["reverting"] = TRUE + action = "reverting to its roundstart state" world.SetConfig("ban", bannedckey, null) - log_game("Stickyban on [bannedckey] detected as rogue, reverting to its roundstart state") - message_admins("Stickyban on [bannedckey] detected as rogue, reverting to its roundstart state") + //we always report this + log_game("Stickyban on [bannedckey] detected as rogue, [action]") + message_admins("Stickyban on [bannedckey] detected as rogue, [action]") //do not convert to timer. spawn (5) world.SetConfig("ban", bannedckey, null) sleep(1) world.SetConfig("ban", bannedckey, null) - cachedban["matches_this_round"] = list() - cachedban["existing_user_matches_this_round"] = list() - cachedban["admin_matches_this_round"] = list() - cachedban -= "reverting" - world.SetConfig("ban", bannedckey, list2stickyban(cachedban)) + if (!ban["fromdb"]) + cachedban = cachedban.Copy() //so old references to the list still see the ban as reverting + cachedban["matches_this_round"] = list() + cachedban["existing_user_matches_this_round"] = list() + cachedban["admin_matches_this_round"] = list() + cachedban -= "reverting" + SSstickyban.cache[bannedckey] = cachedban + world.SetConfig("ban", bannedckey, list2stickyban(cachedban)) return null + if (ban["fromdb"]) + if(SSdbcore.Connect()) + INVOKE_ASYNC(SSdbcore, /datum/controller/subsystem/dbcore/proc.QuerySelect, list( + SSdbcore.NewQuery("INSERT INTO [format_table_name("stickyban_matched_ckey")] (matched_ckey, stickyban) VALUES ('[sanitizeSQL(ckey)]', '[sanitizeSQL(bannedckey)]') ON DUPLICATE KEY UPDATE last_matched = now()"), + SSdbcore.NewQuery("INSERT INTO [format_table_name("stickyban_matched_ip")] (matched_ip, stickyban) VALUES ( INET_ATON('[sanitizeSQL(address)]'), '[sanitizeSQL(bannedckey)]') ON DUPLICATE KEY UPDATE last_matched = now()"), + SSdbcore.NewQuery("INSERT INTO [format_table_name("stickyban_matched_cid")] (matched_cid, stickyban) VALUES ('[sanitizeSQL(computer_id)]', '[sanitizeSQL(bannedckey)]') ON DUPLICATE KEY UPDATE last_matched = now()") + ), FALSE, TRUE) + + //byond will not trigger isbanned() for "global" host bans, //ie, ones where the "apply to this game only" checkbox is not checked (defaults to not checked) //So it's safe to let admins walk thru host/sticky bans here if (admin) log_admin("The admin [key] has been allowed to bypass a matching host/sticky ban on [bannedckey]") - message_admins("The admin [key] has been allowed to bypass a matching host/sticky ban on [bannedckey]") - addclientmessage(ckey,"You have been allowed to bypass a matching host/sticky ban on [bannedckey]") + if (message) + message_admins("The admin [key] has been allowed to bypass a matching host/sticky ban on [bannedckey]") + addclientmessage(ckey,"You have been allowed to bypass a matching host/sticky ban on [bannedckey]") return null if (C) //user is already connected!. - to_chat(C, "You are about to get disconnected for matching a sticky ban after you connected. If this turns out to be the ban evasion detection system going haywire, we will automatically detect this and revert the matches. if you feel that this is the case, please wait EXACTLY 6 seconds then reconnect using file -> reconnect to see if the match was reversed.") + to_chat(C, "You are about to get disconnected for matching a sticky ban after you connected. If this turns out to be the ban evasion detection system going haywire, we will automatically detect this and revert the matches. if you feel that this is the case, please wait EXACTLY 6 seconds then reconnect using file -> reconnect to see if the match was automatically reversed.") var/desc = "\nReason:(StickyBan) You, or another user of this computer or connection ([bannedckey]) is banned from playing here. The ban reason is:\n[ban["message"]]\nThis ban was applied by [ban["admin"]]\nThis is a BanEvasion Detection System ban, if you think this ban is a mistake, please wait EXACTLY 6 seconds, then try again before filing an appeal.\n" . = list("reason" = "Stickyban", "desc" = desc) diff --git a/code/modules/admin/admin_investigate.dm b/code/modules/admin/admin_investigate.dm index 512f364cbf3..2fef88886d8 100644 --- a/code/modules/admin/admin_investigate.dm +++ b/code/modules/admin/admin_investigate.dm @@ -2,7 +2,7 @@ if(!message || !subject) return var/F = file("[GLOB.log_directory]/[subject].html") - WRITE_FILE(F, "[time_stamp()] [REF(src)] ([x],[y],[z]) || [src] [message]
") + WRITE_FILE(F, "[time_stamp()] [REF(src)] ([x],[y],[z]) || [src] [message]
") /client/proc/investigate_show() set name = "Investigate" diff --git a/code/modules/admin/admin_ranks.dm b/code/modules/admin/admin_ranks.dm index 5e4549ee8f6..7433124e875 100644 --- a/code/modules/admin/admin_ranks.dm +++ b/code/modules/admin/admin_ranks.dm @@ -23,7 +23,7 @@ GLOBAL_PROTECT(protected_ranks) name = init_name if(!name) qdel(src) - throw EXCEPTION("Admin rank created without name.") + CRASH("Admin rank created without name.") return if(init_rights) rights = init_rights diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 7cd3dcf7c51..a53fefc03c6 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -1,7 +1,7 @@ //admin verb groups - They can overlap if you so wish. Only one of each verb will exist in the verbs list regardless //the procs are cause you can't put the comments in the GLOB var define -GLOBAL_PROTECT(admin_verbs_default) GLOBAL_LIST_INIT(admin_verbs_default, world.AVerbsDefault()) +GLOBAL_PROTECT(admin_verbs_default) /world/proc/AVerbsDefault() return list( /client/proc/deadmin, /*destroys our own admin datum so we can play as a regular player*/ @@ -19,8 +19,8 @@ GLOBAL_LIST_INIT(admin_verbs_default, world.AVerbsDefault()) /client/proc/cmd_admin_pm_panel, /*admin-pm list*/ /client/proc/stop_sounds ) -GLOBAL_PROTECT(admin_verbs_admin) GLOBAL_LIST_INIT(admin_verbs_admin, world.AVerbsAdmin()) +GLOBAL_PROTECT(admin_verbs_admin) /world/proc/AVerbsAdmin() return list( /client/proc/invisimin, /*allows our mob to go invisible/visible*/ @@ -74,11 +74,10 @@ GLOBAL_LIST_INIT(admin_verbs_admin, world.AVerbsAdmin()) /client/proc/respawn_character, /datum/admins/proc/open_borgopanel ) -GLOBAL_PROTECT(admin_verbs_ban) GLOBAL_LIST_INIT(admin_verbs_ban, list(/client/proc/unban_panel, /client/proc/ban_panel, /client/proc/stickybanpanel)) -GLOBAL_PROTECT(admin_verbs_sounds) +GLOBAL_PROTECT(admin_verbs_ban) GLOBAL_LIST_INIT(admin_verbs_sounds, list(/client/proc/play_local_sound, /client/proc/play_sound, /client/proc/set_round_end_sound)) -GLOBAL_PROTECT(admin_verbs_fun) +GLOBAL_PROTECT(admin_verbs_sounds) GLOBAL_LIST_INIT(admin_verbs_fun, list( /client/proc/cmd_admin_dress, /client/proc/cmd_admin_gib_self, @@ -103,10 +102,11 @@ GLOBAL_LIST_INIT(admin_verbs_fun, list( /client/proc/smite, /client/proc/admin_away )) -GLOBAL_PROTECT(admin_verbs_spawn) +GLOBAL_PROTECT(admin_verbs_fun) GLOBAL_LIST_INIT(admin_verbs_spawn, list(/datum/admins/proc/spawn_atom, /datum/admins/proc/podspawn_atom, /datum/admins/proc/spawn_cargo, /datum/admins/proc/spawn_objasmob, /client/proc/respawn_character)) -GLOBAL_PROTECT(admin_verbs_server) +GLOBAL_PROTECT(admin_verbs_spawn) GLOBAL_LIST_INIT(admin_verbs_server, world.AVerbsServer()) +GLOBAL_PROTECT(admin_verbs_server) /world/proc/AVerbsServer() return list( /datum/admins/proc/startnow, @@ -124,8 +124,8 @@ GLOBAL_LIST_INIT(admin_verbs_server, world.AVerbsServer()) /client/proc/panicbunker, /client/proc/toggle_hub ) -GLOBAL_PROTECT(admin_verbs_debug) GLOBAL_LIST_INIT(admin_verbs_debug, world.AVerbsDebug()) +GLOBAL_PROTECT(admin_verbs_debug) /world/proc/AVerbsDebug() return list( /client/proc/restart_controller, @@ -165,15 +165,14 @@ GLOBAL_LIST_INIT(admin_verbs_debug, world.AVerbsDebug()) /client/proc/reload_configuration, /datum/admins/proc/create_or_modify_area, ) -GLOBAL_PROTECT(admin_verbs_possess) GLOBAL_LIST_INIT(admin_verbs_possess, list(/proc/possess, /proc/release)) -GLOBAL_PROTECT(admin_verbs_permissions) +GLOBAL_PROTECT(admin_verbs_possess) GLOBAL_LIST_INIT(admin_verbs_permissions, list(/client/proc/edit_admin_permissions)) -GLOBAL_PROTECT(admin_verbs_poll) +GLOBAL_PROTECT(admin_verbs_permissions) GLOBAL_LIST_INIT(admin_verbs_poll, list(/client/proc/create_poll)) +GLOBAL_PROTECT(admin_verbs_poll) //verbs which can be hidden - needs work -GLOBAL_PROTECT(admin_verbs_hideable) GLOBAL_LIST_INIT(admin_verbs_hideable, list( /client/proc/set_ooc, /client/proc/reset_ooc, @@ -237,6 +236,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, list( /client/proc/toggle_combo_hud, /client/proc/debug_huds )) +GLOBAL_PROTECT(admin_verbs_hideable) /client/proc/add_admin_verbs() if(holder) @@ -333,11 +333,12 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, list( set name = "Aghost" if(!holder) return + . = TRUE if(isobserver(mob)) //re-enter var/mob/dead/observer/ghost = mob if(!ghost.mind || !ghost.mind.current) //won't do anything if there is no body - return + return FALSE if(!ghost.can_reenter_corpse) log_admin("[key_name(usr)] re-entered corpse") message_admins("[key_name_admin(usr)] re-entered corpse") @@ -346,6 +347,7 @@ GLOBAL_LIST_INIT(admin_verbs_hideable, list( SSblackbox.record_feedback("tally", "admin_verb", 1, "Admin Reenter") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! else if(isnewplayer(mob)) to_chat(src, "Error: Aghost: Can't admin-ghost whilst in the lobby. Join or Observe first.") + return FALSE else //ghostize log_admin("[key_name(usr)] admin ghosted.") diff --git a/code/modules/admin/antag_panel.dm b/code/modules/admin/antag_panel.dm index 1e207909bd7..16723105677 100644 --- a/code/modules/admin/antag_panel.dm +++ b/code/modules/admin/antag_panel.dm @@ -80,7 +80,7 @@ GLOBAL_VAR(antag_prototypes) var/list/result = list() if(!current) result += "No body!" - if(current && current.has_trait(TRAIT_MINDSHIELD)) + if(current && HAS_TRAIT(current, TRAIT_MINDSHIELD)) result += "Mindshielded" //Move these to mob if(iscyborg(current)) diff --git a/code/modules/admin/holder2.dm b/code/modules/admin/holder2.dm index 3c03faf80ad..bca5b367c95 100644 --- a/code/modules/admin/holder2.dm +++ b/code/modules/admin/holder2.dm @@ -39,11 +39,11 @@ GLOBAL_PROTECT(href_token) return if(!ckey) QDEL_IN(src, 0) - throw EXCEPTION("Admin datum created without a ckey") + CRASH("Admin datum created without a ckey") return if(!istype(R)) QDEL_IN(src, 0) - throw EXCEPTION("Admin datum created without a rank") + CRASH("Admin datum created without a rank") return target = ckey name = "[ckey]'s admin datum ([R])" diff --git a/code/modules/admin/permissionedit.dm b/code/modules/admin/permissionedit.dm index 43b49004438..c091587d9ba 100644 --- a/code/modules/admin/permissionedit.dm +++ b/code/modules/admin/permissionedit.dm @@ -269,6 +269,14 @@ log_admin("[key_name(usr)] forcefully deadmined [admin_key]") D.deactivate() //after logs so the deadmined admin can see the message. +/datum/admins/proc/auto_deadmin() + to_chat(owner, "You are now a normal player.") + var/old_owner = owner + deactivate() + message_admins("[old_owner] deadmined via auto-deadmin config.") + log_admin("[old_owner] deadmined via auto-deadmin config.") + return TRUE + /datum/admins/proc/change_admin_rank(admin_ckey, admin_key, use_db, datum/admins/D, legacy_only) var/datum/admin_rank/R var/list/rank_names = list() diff --git a/code/modules/admin/player_panel.dm b/code/modules/admin/player_panel.dm index ff3a6711cc9..73bbe3e7d2b 100644 --- a/code/modules/admin/player_panel.dm +++ b/code/modules/admin/player_panel.dm @@ -82,7 +82,7 @@ body += "FLW - " body += "LOGS
" if(antagonist > 0) - body += "Antagonist"; + body += "Antagonist"; body += ""; diff --git a/code/modules/admin/secrets.dm b/code/modules/admin/secrets.dm index 82e1ad6fb68..acfd1d55069 100644 --- a/code/modules/admin/secrets.dm +++ b/code/modules/admin/secrets.dm @@ -18,7 +18,6 @@
Cure all diseases currently in existence
Bombing List
- Show current traitors and objectives
Show last [length(GLOB.lastsignalers)] signalers
Show last [length(GLOB.lawchanges)] law changes
Show AI Laws
@@ -418,7 +417,7 @@ H.equip_to_slot_or_del(I, SLOT_W_UNIFORM) qdel(olduniform) if(droptype == "Yes") - I.add_trait(TRAIT_NODROP, ADMIN_TRAIT) + ADD_TRAIT(I, TRAIT_NODROP, ADMIN_TRAIT) else to_chat(H, "You're not kawaii enough for this.") diff --git a/code/modules/admin/sql_ban_system.dm b/code/modules/admin/sql_ban_system.dm index 799098b9a27..4257940b7eb 100644 --- a/code/modules/admin/sql_ban_system.dm +++ b/code/modules/admin/sql_ban_system.dm @@ -97,16 +97,16 @@

" + + if(HAS_TRAIT(user, TRAIT_SPIRITUAL) && mind?.isholy) + msg += "[t_He] [t_has] a holy aura about [t_him].\n" + SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, "religious_comfort", /datum/mood_event/religiously_comforted) + if(stat == UNCONSCIOUS) msg += "[t_He] [t_is]n't responding to anything around [t_him] and seem[p_s()] to be asleep.\n" else - if(has_trait(TRAIT_DUMB)) + if(HAS_TRAIT(src, TRAIT_DUMB)) msg += "[t_He] [t_has] a stupid expression on [t_his] face.\n" if(InCritical()) msg += "[t_He] [t_is] barely conscious.\n" diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 52f2079e0bd..be172bcf0fb 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -8,16 +8,13 @@ /mob/living/carbon/human/Initialize() verbs += /mob/living/proc/mob_sleep verbs += /mob/living/proc/lay_down - + icon_state = "" //Remove the inherent human icon that is visible on the map editor. We're rendering ourselves limb by limb, having it still be there results in a bug where the basic human icon appears below as south in all directions and generally looks nasty. - + //initialize limbs first create_bodyparts() - //initialize dna. for spawned humans; overwritten by other code - create_dna(src) - randomize_human(src) - dna.initialize_dna() + setup_human_dna() if(dna.species) set_species(dna.species.type) @@ -32,6 +29,11 @@ AddComponent(/datum/component/redirect, list(COMSIG_COMPONENT_CLEAN_ACT = CALLBACK(src, .proc/clean_blood))) +/mob/living/carbon/human/proc/setup_human_dna() + //initialize dna. for spawned humans; overwritten by other code + create_dna(src) + randomize_human(src) + dna.initialize_dna() /mob/living/carbon/human/ComponentInitialize() . = ..() @@ -77,7 +79,8 @@ stat("Absorbed DNA", changeling.absorbedcount) var/datum/antagonist/hivemind/hivemind = mind.has_antag_datum(/datum/antagonist/hivemind) if(hivemind) - stat("Hivemind Vessels", hivemind.hive_size) + stat("Hivemind Vessels", "[hivemind.hive_size] (+[hivemind.size_mod])") + stat("Psychic Link Duration", "[(hivemind.track_bonus + TRACKER_DEFAULT_TIME)/10] seconds") //NINJACODE if(istype(wear_suit, /obj/item/clothing/suit/space/space_ninja)) //Only display if actually a ninja. @@ -211,9 +214,9 @@ if(istype(MB)) MB.RunOver(src) + . = ..() spreadFire(AM) - /mob/living/carbon/human/Topic(href, href_list) if(href_list["embedded_object"] && usr.canUseTopic(src, BE_CLOSE, NO_DEXTERY)) var/obj/item/bodypart/L = locate(href_list["embedded_limb"]) in bodyparts @@ -252,7 +255,7 @@ var/delay_denominator = 1 if(pocket_item && !(pocket_item.item_flags & ABSTRACT)) - if(pocket_item.has_trait(TRAIT_NODROP)) + if(HAS_TRAIT(pocket_item, TRAIT_NODROP)) to_chat(usr, "You try to empty [src]'s [pocket_side] pocket, it seems to be stuck!") to_chat(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.item_flags & ABSTRACT)) @@ -494,7 +497,7 @@ . = 1 // Default to returning true. if(user && !target_zone) target_zone = user.zone_selected - if(has_trait(TRAIT_PIERCEIMMUNE)) + if(HAS_TRAIT(src, TRAIT_PIERCEIMMUNE)) . = 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. @@ -575,7 +578,7 @@ threatcount += 1 //mindshield implants imply trustworthyness - if(has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(src, TRAIT_MINDSHIELD)) threatcount -= 1 //Agent cards lower threatlevel. @@ -608,7 +611,7 @@ /mob/living/carbon/human/proc/do_cpr(mob/living/carbon/C) CHECK_DNA_AND_SPECIES(C) - if(C.stat == DEAD || (C.has_trait(TRAIT_FAKEDEATH))) + if(C.stat == DEAD || (HAS_TRAIT(C, TRAIT_FAKEDEATH))) to_chat(src, "[C.name] is dead!") return if(is_mouth_covered()) @@ -625,7 +628,7 @@ to_chat(src, "You fail to perform CPR on [C]!") return 0 - var/they_breathe = !C.has_trait(TRAIT_NOBREATH) + var/they_breathe = !HAS_TRAIT(C, TRAIT_NOBREATH) var/they_lung = C.getorganslot(ORGAN_SLOT_LUNGS) if(C.health > C.crit_threshold) @@ -697,7 +700,7 @@ to_chat(src, "You can't do that right now!") return FALSE if(!Adjacent(M) && (M.loc != src)) - if((be_close == 0) || (!no_tk && (dna.check_mutation(TK) && tkMaxRangeCheck(src, M)))) + if((be_close == FALSE) || (!no_tk && (dna.check_mutation(TK) && tkMaxRangeCheck(src, M)))) return TRUE to_chat(src, "You are too far away!") return FALSE @@ -785,7 +788,7 @@ /mob/living/carbon/human/check_weakness(obj/item/weapon, mob/living/attacker) . = ..() if (dna && dna.species) - . += dna.species.check_weakness(weapon, attacker) + . += dna.species.check_species_weakness(weapon, attacker) /mob/living/carbon/human/is_literate() return TRUE @@ -818,6 +821,7 @@ .["Make slime"] = "?_src_=vars;[HrefToken()];makeslime=[REF(src)]" .["Toggle Purrbation"] = "?_src_=vars;[HrefToken()];purrbation=[REF(src)]" .["Copy outfit"] = "?_src_=vars;[HrefToken()];copyoutfit=[REF(src)]" + .["Add/Remove Quirks"] = "?_src_=vars;[HrefToken()];modquirks=[REF(src)]" /mob/living/carbon/human/MouseDrop_T(mob/living/target, mob/living/user) //If they dragged themselves and we're currently aggressively grabbing them try to piggyback @@ -862,6 +866,21 @@ stop_pulling() . = ..(M,force,check_loc) +/mob/living/carbon/human/proc/is_shove_knockdown_blocked() //If you want to add more things that block shove knockdown, extend this + 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) + for(var/bp in body_parts) + if(istype(bp, /obj/item/clothing)) + var/obj/item/clothing/C = bp + if(C.blocks_shove_knockdown) + return TRUE + return FALSE + +/mob/living/carbon/human/proc/clear_shove_slowdown() + remove_movespeed_modifier(MOVESPEED_ID_SHOVE) + var/active_item = get_active_held_item() + if(is_type_in_typecache(active_item, GLOB.shove_disarming_types)) + visible_message("[src.name] regains their grip on \the [active_item]!", "You regain your grip on \the [active_item]", null, COMBAT_MESSAGE_RANGE) + /mob/living/carbon/human/do_after_coefficent() . = ..() . *= physiology.do_after_speed @@ -871,12 +890,12 @@ dna?.species.spec_updatehealth(src) /mob/living/carbon/human/adjust_nutrition(var/change) //Honestly FUCK the oldcoders for putting nutrition on /mob someone else can move it up because holy hell I'd have to fix SO many typechecks - if(has_trait(TRAIT_NOHUNGER)) + if(HAS_TRAIT(src, TRAIT_NOHUNGER)) return FALSE return ..() /mob/living/carbon/human/set_nutrition(var/change) //Seriously fuck you oldcoders. - if(has_trait(TRAIT_NOHUNGER)) + if(HAS_TRAIT(src, TRAIT_NOHUNGER)) return FALSE return ..() diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index af8e9cf7dbc..f8d3e525ce1 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -4,9 +4,12 @@ if(def_zone) if(isbodypart(def_zone)) - return checkarmor(def_zone, type) + var/obj/item/bodypart/bp = def_zone + if(bp) + return checkarmor(def_zone, type) var/obj/item/bodypart/affecting = get_bodypart(ran_zone(def_zone)) - return checkarmor(affecting, type) + if(affecting) + return checkarmor(affecting, type) //If a specific bodypart is targetted, check how that bodypart is protected and return the value. //If you don't specify a bodypart, it checks ALL your bodyparts for protection, and averages out the values @@ -47,6 +50,10 @@ if(mind.martial_art && !incapacitated(FALSE, TRUE) && mind.martial_art.can_use(src) && mind.martial_art.deflection_chance) //Some martial arts users can deflect projectiles! if(prob(mind.martial_art.deflection_chance)) if((mobility_flags & MOBILITY_USE) && dna && !dna.check_mutation(HULK)) //But only if they're otherwise able to use items, and hulks can't do it + if(!isturf(loc)) //if we're inside something and still got hit + P.force_hit = TRUE //The thing we're in passed the bullet to us. Pass it back, and tell it to take the damage. + loc.bullet_act(P) + return BULLET_ACT_HIT if(mind.martial_art.deflection_chance >= 100) //if they can NEVER be hit, lets clue sec in ;) visible_message("[src] deflects the projectile; [p_they()] can't be hit with ranged weapons!", "You deflect the projectile!") else @@ -65,6 +72,10 @@ visible_message("The [P.name] gets reflected by [src]!", \ "The [P.name] gets reflected by [src]!") // Find a turf near or on the original location to bounce to + if(!isturf(loc)) //Open canopy mech (ripley) check. if we're inside something and still got hit + P.force_hit = TRUE //The thing we're in passed the bullet to us. Pass it back, and tell it to take the damage. + loc.bullet_act(P) + return BULLET_ACT_HIT 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) @@ -105,6 +116,9 @@ 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, AM, attack_text, final_block_chance, damage, attack_type)) + if (istype(I, /obj/item/shield)) + var/obj/item/shield/S = I + return S.on_shield_block(src, AM, attack_text, 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 @@ -139,9 +153,9 @@ skipcatch = TRUE blocked = TRUE else if(I) - if((I.throw_speed >= EMBED_THROWSPEED_THRESHOLD) || I.embedding.embedded_ignore_throwspeed_threshold) + if(((throwingdatum ? throwingdatum.speed : I.throw_speed) >= EMBED_THROWSPEED_THRESHOLD) || I.embedding.embedded_ignore_throwspeed_threshold) if(can_embed(I)) - if(prob(I.embedding.embed_chance) && !has_trait(TRAIT_PIERCEIMMUNE)) + if(prob(I.embedding.embed_chance) && !HAS_TRAIT(src, TRAIT_PIERCEIMMUNE)) throw_alert("embeddedobject", /obj/screen/alert/embeddedobject) var/obj/item/bodypart/L = pick(bodyparts) L.embedded_objects |= I @@ -155,12 +169,6 @@ return ..() -/mob/living/carbon/human/grabbedby(mob/living/carbon/user, supress_message = 0) - if(user == src && pulling && !pulling.anchored && grab_state >= GRAB_AGGRESSIVE && (has_trait(TRAIT_FAT)) && ismonkey(pulling)) - devour_mob(pulling) - else - ..() - /mob/living/carbon/human/grippedby(mob/living/user, instant = FALSE) if(w_uniform) w_uniform.add_fingerprint(user) @@ -224,10 +232,16 @@ "[M] disarmed [src]!") else if(!M.client || prob(5)) // only natural monkeys get to stun reliably, (they only do it occasionaly) playsound(loc, 'sound/weapons/pierce.ogg', 25, 1, -1) - Paralyze(100) - log_combat(M, src, "tackled") - visible_message("[M] has tackled down [src]!", \ - "[M] has tackled down [src]!") + if (src.IsKnockdown() && !src.IsParalyzed()) + Paralyze(40) + log_combat(M, src, "pinned") + visible_message("[M] has pinned down [src]!", \ + "[M] has pinned down [src]!") + else + Knockdown(30) + log_combat(M, src, "tackled") + visible_message("[M] has tackled down [src]!", \ + "[M] has tackled down [src]!") if(M.limb_destroyer) dismembering_strike(M, affecting.body_zone) @@ -439,7 +453,7 @@ //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, stun = TRUE) +/mob/living/carbon/human/electrocute_act(shock_damage, source, siemens_coeff = 1, safety = 0, override = 0, tesla_shock = 0, illusion = 0, stun = TRUE) if(tesla_shock) var/total_coeff = 1 if(gloves) @@ -620,7 +634,7 @@ facial_hair_style = "Shaved" hair_style = "Bald" update_hair() - add_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + ADD_TRAIT(src, TRAIT_DISFIGURED, TRAIT_GENERIC) update_damage_overlays() @@ -693,7 +707,7 @@ if(prob(30)) burndamage += rand(30,40) - if(has_trait(TRAIT_SELF_AWARE)) + if(HAS_TRAIT(src, TRAIT_SELF_AWARE)) status = "[brutedamage] brute damage and [burndamage] burn damage" if(!brutedamage && !burndamage) status = "no damage" @@ -720,7 +734,7 @@ var/no_damage if(status == "OK" || status == "no damage") no_damage = TRUE - to_chat(src, "\t Your [LB.name] [has_trait(TRAIT_SELF_AWARE) ? "has" : "is"] [status].") + to_chat(src, "\t Your [LB.name] [HAS_TRAIT(src, TRAIT_SELF_AWARE) ? "has" : "is"] [status].") for(var/obj/item/I in LB.embedded_objects) to_chat(src, "\t There is \a [I] embedded in your [LB.name]!") @@ -735,7 +749,7 @@ to_chat(src, "You're completely exhausted.") else to_chat(src, "You feel fatigued.") - if(has_trait(TRAIT_SELF_AWARE)) + if(HAS_TRAIT(src, TRAIT_SELF_AWARE)) if(toxloss) if(toxloss > 10) to_chat(src, "You feel sick.") @@ -751,7 +765,7 @@ else if(oxyloss > 30) to_chat(src, "You're choking!") - if(!has_trait(TRAIT_NOHUNGER)) + if(!HAS_TRAIT(src, TRAIT_NOHUNGER)) switch(nutrition) if(NUTRITION_LEVEL_FULL to INFINITY) to_chat(src, "You're completely stuffed!") diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 5ee9f11c69b..ea771639b20 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -22,7 +22,7 @@ var/lip_style = null //no lipstick by default- arguably misleading, as it could be used for general makeup var/lip_color = "white" - var/age = 30 //Player's age (pure fluff) + var/age = 30 //Player's age var/underwear = "Nude" //Which underwear the player wants var/undershirt = "Nude" //Which undershirt the player wants diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm index 2e86e506edd..8bf25832ee1 100644 --- a/code/modules/mob/living/carbon/human/human_helpers.dm +++ b/code/modules/mob/living/carbon/human/human_helpers.dm @@ -56,7 +56,7 @@ if( head && (head.flags_inv&HIDEFACE) ) return if_no_face //Likewise for hats var/obj/item/bodypart/O = get_bodypart(BODY_ZONE_HEAD) - if( !O || (has_trait(TRAIT_DISFIGURED)) || (O.brutestate+O.burnstate)>2 || cloneloss>50 || !real_name ) //disfigured. use id-name if possible + if( !O || (HAS_TRAIT(src, TRAIT_DISFIGURED)) || (O.brutestate+O.burnstate)>2 || cloneloss>50 || !real_name ) //disfigured. use id-name if possible return if_no_face return real_name @@ -115,7 +115,7 @@ return id_card /mob/living/carbon/human/IsAdvancedToolUser() - if(has_trait(TRAIT_MONKEYLIKE)) + if(HAS_TRAIT(src, TRAIT_MONKEYLIKE)) return FALSE return TRUE//Humans can use guns and such @@ -161,7 +161,7 @@ if(src.dna.check_mutation(HULK)) to_chat(src, "Your meaty finger is much too large for the trigger guard!") return FALSE - if(has_trait(TRAIT_NOGUNS)) + if(HAS_TRAIT(src, TRAIT_NOGUNS)) to_chat(src, "Your fingers don't fit in the trigger guard!") return FALSE if(mind) diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm index eb64b162ab8..698d76a8800 100644 --- a/code/modules/mob/living/carbon/human/human_movement.dm +++ b/code/modules/mob/living/carbon/human/human_movement.dm @@ -1,7 +1,7 @@ /mob/living/carbon/human/get_movespeed_modifiers() var/list/considering = ..() . = considering - if(has_trait(TRAIT_IGNORESLOWDOWN)) + if(HAS_TRAIT(src, TRAIT_IGNORESLOWDOWN)) for(var/id in .) var/list/data = .[id] if(data[MOVESPEED_DATA_INDEX_FLAGS] & IGNORE_NOSLOW) @@ -13,10 +13,10 @@ . += dna.species.movement_delay(src) /mob/living/carbon/human/slip(knockdown_amount, obj/O, lube, paralyze, forcedrop) - if(has_trait(TRAIT_NOSLIPALL)) + if(HAS_TRAIT(src, TRAIT_NOSLIPALL)) return 0 if (!(lube&GALOSHES_DONT_HELP)) - if(has_trait(TRAIT_NOSLIPWATER)) + if(HAS_TRAIT(src, TRAIT_NOSLIPWATER)) return 0 if(shoes && istype(shoes, /obj/item/clothing)) var/obj/item/clothing/CS = shoes @@ -43,8 +43,6 @@ /mob/living/carbon/human/Move(NewLoc, direct) . = ..() - for(var/datum/mutation/human/HM in dna.mutations) - HM.on_move(NewLoc) if(shoes) if(mobility_flags & MOBILITY_STAND) diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm index 02b8be46cf0..7c10ca81461 100644 --- a/code/modules/mob/living/carbon/human/inventory.dm +++ b/code/modules/mob/living/carbon/human/inventory.dm @@ -187,7 +187,7 @@ if(G.tint) update_tint() if(G.vision_correction) - if(has_trait(TRAIT_NEARSIGHT)) + if(HAS_TRAIT(src, TRAIT_NEARSIGHT)) overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1) adjust_eye_damage(0) if(G.vision_flags || G.darkness_view || G.invis_override || G.invis_view || !isnull(G.lighting_alpha)) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index b5a9afe653b..761c01d9977 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -28,25 +28,28 @@ if (QDELETED(src)) return 0 - if(.) //not dead - handle_active_genes() + if(!IS_IN_STASIS(src)) + if(.) //not dead - if(stat != DEAD) - //heart attack stuff - handle_heart() + for(var/datum/mutation/human/HM in dna.mutations) // Handle active genes + HM.on_life() - if(stat != DEAD) - //Stuff jammed in your limbs hurts - handle_embedded_objects() + if(stat != DEAD) + //heart attack stuff + handle_heart() - if(stat != DEAD) - handle_hygiene() + if(stat != DEAD) + //Stuff jammed in your limbs hurts + handle_embedded_objects() + + if(stat != DEAD) + handle_hygiene() + + dna.species.spec_life(src) // for mutantraces //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 @@ -62,7 +65,7 @@ /mob/living/carbon/human/handle_traits() if(eye_blind) //blindness, heals slowly over time - if(has_trait(TRAIT_BLIND, EYES_COVERED)) //covering your eyes heals blurry eyes faster + if(HAS_TRAIT_FROM(src, TRAIT_BLIND, EYES_COVERED)) //covering your eyes heals blurry eyes faster adjust_blindness(-3) else adjust_blindness(-1) @@ -89,7 +92,7 @@ if(!L) if(health >= crit_threshold) adjustOxyLoss(HUMAN_MAX_OXYLOSS + 1) - else if(!has_trait(TRAIT_NOCRITDAMAGE)) + else if(!HAS_TRAIT(src, TRAIT_NOCRITDAMAGE)) adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) failed_last_breath = 1 @@ -309,12 +312,8 @@ clear_alert("embeddedobject") SEND_SIGNAL(src, COMSIG_CLEAR_MOOD_EVENT, "embedded") -/mob/living/carbon/human/proc/handle_active_genes() - for(var/datum/mutation/human/HM in dna.mutations) - HM.on_life() - /mob/living/carbon/human/proc/handle_heart() - var/we_breath = !has_trait(TRAIT_NOBREATH, SPECIES_TRAIT) + var/we_breath = !HAS_TRAIT_FROM(src, TRAIT_NOBREATH, SPECIES_TRAIT) if(!undergoing_cardiac_arrest()) return @@ -326,7 +325,7 @@ adjustBruteLoss(2) /mob/living/carbon/human/proc/handle_hygiene() - if(has_trait(TRAIT_ALWAYS_CLEAN)) + if(HAS_TRAIT(src, TRAIT_ALWAYS_CLEAN)) set_hygiene(HYGIENE_LEVEL_CLEAN) return diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index ac70479aa15..92f751795c5 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -49,7 +49,7 @@ /mob/living/carbon/human/IsVocal() // how do species that don't breathe talk? magic, that's what. - if(!has_trait(TRAIT_NOBREATH, SPECIES_TRAIT) && !getorganslot(ORGAN_SLOT_LUNGS)) + if(!HAS_TRAIT_FROM(src, TRAIT_NOBREATH, SPECIES_TRAIT) && !getorganslot(ORGAN_SLOT_LUNGS)) return FALSE 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 2b32eeb2696..5a4f4ec4089 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -37,9 +37,9 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/heatmod = 1 // multiplier for heat damage var/stunmod = 1 // multiplier for stun duration var/attack_type = BRUTE //Type of damage attack does - var/punchdamagelow = 0 //lowest possible punch damage - 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/punchdamagelow = 1 //lowest possible punch damage. if this is set to 0, punches will always miss + var/punchdamagehigh = 10 //highest possible punch damage + var/punchstunthreshold = 10//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/fixed_mut_color = "" //to use MUTCOLOR with a fixed color that's independent of dna.feature["mcolor"] @@ -58,7 +58,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) 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 + var/list/mob/living/ignored_by = list() // list of mobs that will ignore this species //Breathing! var/obj/item/organ/lungs/mutantlungs = null var/breathid = "o2" @@ -288,7 +288,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) C.put_in_hands(new mutanthands()) for(var/X in inherent_traits) - C.add_trait(X, SPECIES_TRAIT) + ADD_TRAIT(C, X, SPECIES_TRAIT) if(TRAIT_VIRUSIMMUNE in inherent_traits) for(var/datum/disease/A in C.diseases) @@ -305,7 +305,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(DIGITIGRADE in species_traits) C.Digitigrade_Leg_Swap(TRUE) for(var/X in inherent_traits) - C.remove_trait(X, SPECIES_TRAIT) + REMOVE_TRAIT(C, X, SPECIES_TRAIT) //If their inert mutation is not the same, swap it out if((inert_mutation != new_species.inert_mutation) && LAZYLEN(C.dna.mutation_index) && (inert_mutation in C.dna.mutation_index)) @@ -325,7 +325,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(!HD) //Decapitated return - if(H.has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(H, TRAIT_HUSK)) return var/datum/sprite_accessory/S var/list/standing = list() @@ -466,7 +466,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/obj/item/bodypart/head/HD = H.get_bodypart(BODY_ZONE_HEAD) - if(HD && !(H.has_trait(TRAIT_HUSK))) + if(HD && !(HAS_TRAIT(H, TRAIT_HUSK))) // lipstick if(H.lip_style && (LIPS in species_traits)) var/mutable_appearance/lip_overlay = mutable_appearance('icons/mob/human_face.dmi', "lips_[H.lip_style]", -BODY_LAYER) @@ -477,14 +477,14 @@ GLOBAL_LIST_EMPTY(roundstart_races) standing += lip_overlay // eyes - if(!(NOEYES in species_traits)) - var/has_eyes = H.getorganslot(ORGAN_SLOT_EYES) + if(!(NOEYESPRITES in species_traits)) + var/obj/item/organ/eyes/E = H.getorganslot(ORGAN_SLOT_EYES) var/mutable_appearance/eye_overlay - if(!has_eyes) + if(!E) eye_overlay = mutable_appearance('icons/mob/human_face.dmi', "eyes_missing", -BODY_LAYER) else - eye_overlay = mutable_appearance('icons/mob/human_face.dmi', "eyes", -BODY_LAYER) - if((EYECOLOR in species_traits) && has_eyes) + eye_overlay = mutable_appearance('icons/mob/human_face.dmi', E.eye_icon_state, -BODY_LAYER) + if((EYECOLOR in species_traits) && E) eye_overlay.color = "#" + H.eye_color if(OFFSET_FACE in H.dna.species.offset_features) eye_overlay.pixel_x += H.dna.species.offset_features[OFFSET_FACE][1] @@ -674,7 +674,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(S.center) accessory_overlay = center_image(accessory_overlay, S.dimension_x, S.dimension_y) - if(!(H.has_trait(TRAIT_HUSK))) + if(!(HAS_TRAIT(H, TRAIT_HUSK))) if(!forced_colour) switch(S.color_src) if(MUTCOLORS) @@ -728,11 +728,11 @@ GLOBAL_LIST_EMPTY(roundstart_races) /datum/species/proc/spec_life(mob/living/carbon/human/H) - if(H.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(H, TRAIT_NOBREATH)) H.setOxyLoss(0) H.losebreath = 0 - var/takes_crit_damage = (!H.has_trait(TRAIT_NOCRITDAMAGE)) + var/takes_crit_damage = (!HAS_TRAIT(H, TRAIT_NOCRITDAMAGE)) if((H.health < H.crit_threshold) && takes_crit_damage) H.adjustBruteLoss(1) @@ -822,6 +822,9 @@ GLOBAL_LIST_EMPTY(roundstart_races) return FALSE if(!H.get_bodypart(BODY_ZONE_HEAD)) return FALSE + var/obj/item/organ/eyes/E = H.getorganslot(ORGAN_SLOT_EYES) + if(E?.no_glasses) + return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) if(SLOT_HEAD) if(H.head) @@ -858,7 +861,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) return FALSE return equip_delay_self_check(I, H, bypass_equip_delay_self) if(SLOT_L_STORE) - if(I.has_trait(TRAIT_NODROP)) //Pockets aren't visible, so you can't move TRAIT_NODROP items into them. + if(HAS_TRAIT(I, TRAIT_NODROP)) //Pockets aren't visible, so you can't move TRAIT_NODROP items into them. return FALSE if(H.l_store) return FALSE @@ -874,7 +877,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if( I.w_class <= WEIGHT_CLASS_SMALL || (I.slot_flags & ITEM_SLOT_POCKET) ) return TRUE if(SLOT_R_STORE) - if(I.has_trait(TRAIT_NODROP)) + if(HAS_TRAIT(I, TRAIT_NODROP)) return FALSE if(H.r_store) return FALSE @@ -891,7 +894,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) return TRUE return FALSE if(SLOT_S_STORE) - if(I.has_trait(TRAIT_NODROP)) + if(HAS_TRAIT(I, TRAIT_NODROP)) return FALSE if(H.s_store) return FALSE @@ -959,33 +962,33 @@ GLOBAL_LIST_EMPTY(roundstart_races) /datum/species/proc/get_spans() return list() -/datum/species/proc/check_weakness(obj/item, mob/living/attacker) - return FALSE +/datum/species/proc/check_species_weakness(obj/item, mob/living/attacker) + return 0 //This is not a boolean, it's the multiplier for the damage that the user takes from the item.It is added onto the check_weakness value of the mob, and then the force of the item is multiplied by this value //////// //LIFE// //////// /datum/species/proc/handle_digestion(mob/living/carbon/human/H) - if(has_trait(TRAIT_NOHUNGER)) + if(HAS_TRAIT(src, TRAIT_NOHUNGER)) return //hunger is for BABIES //The fucking TRAIT_FAT mutation is the dumbest shit ever. It makes the code so difficult to work with - if(H.has_trait(TRAIT_FAT))//I share your pain, past coder. + if(HAS_TRAIT(H, TRAIT_FAT))//I share your pain, past coder. if(H.overeatduration < 100) to_chat(H, "You feel fit again!") - H.remove_trait(TRAIT_FAT, OBESITY) + REMOVE_TRAIT(H, TRAIT_FAT, OBESITY) H.update_inv_w_uniform() H.update_inv_wear_suit() else if(H.overeatduration >= 100) to_chat(H, "You suddenly feel blubbery!") - H.add_trait(TRAIT_FAT, OBESITY) + ADD_TRAIT(H, TRAIT_FAT, OBESITY) H.update_inv_w_uniform() H.update_inv_wear_suit() // nutrition decrease and satiety - if (H.nutrition > 0 && H.stat != DEAD && !H.has_trait(TRAIT_NOHUNGER)) + if (H.nutrition > 0 && H.stat != DEAD && !HAS_TRAIT(H, TRAIT_NOHUNGER)) // THEY HUNGER var/hunger_rate = HUNGER_FACTOR GET_COMPONENT_FROM(mood, /datum/component/mood, H) @@ -1014,7 +1017,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) 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.has_trait(TRAIT_NOHUNGER)) + if(H.metabolism_efficiency != 1.25 && !HAS_TRAIT(H, TRAIT_NOHUNGER)) to_chat(H, "You feel vigorous.") H.metabolism_efficiency = 1.25 else if(H.nutrition < NUTRITION_LEVEL_STARVING + 50) @@ -1043,7 +1046,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) . = FALSE var/radiation = H.radiation - if(H.has_trait(TRAIT_RADIMMUNE)) + if(HAS_TRAIT(H, TRAIT_RADIMMUNE)) radiation = 0 return TRUE @@ -1088,7 +1091,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) gravity = H.has_gravity() - if(!H.has_trait(TRAIT_IGNORESLOWDOWN) && gravity) + if(!HAS_TRAIT(H, TRAIT_IGNORESLOWDOWN) && gravity) if(H.wear_suit) . += H.wear_suit.slowdown if(H.shoes) @@ -1098,7 +1101,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) for(var/obj/item/I in H.held_items) if(I.item_flags & SLOWS_WHILE_IN_HAND) . += I.slowdown - if(!H.has_trait(TRAIT_IGNOREDAMAGESLOWDOWN)) + if(!HAS_TRAIT(H, TRAIT_IGNOREDAMAGESLOWDOWN)) var/health_deficiency = (H.maxHealth - H.health + H.staminaloss) if(health_deficiency >= 40) if(flight) @@ -1106,7 +1109,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) else . += (health_deficiency / 25) if(CONFIG_GET(flag/disable_human_mood)) - if(!H.has_trait(TRAIT_NOHUNGER)) + if(!HAS_TRAIT(H, TRAIT_NOHUNGER)) var/hungry = (500 - H.nutrition) / 5 //So overeat would be 100 and default level would be 80 if((hungry >= 70) && !flight) //Being hungry will still allow you to use a flightsuit/wings. . += hungry / 50 @@ -1120,9 +1123,9 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/grav_force = min(gravity - STANDARD_GRAVITY,3) . += 1 + grav_force - if(H.has_trait(TRAIT_FAT)) + if(HAS_TRAIT(H, TRAIT_FAT)) . += (1.5 - flight) - if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !H.has_trait(TRAIT_RESISTCOLD)) + if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !HAS_TRAIT(H, TRAIT_RESISTCOLD)) . += (BODYTEMP_COLD_DAMAGE_LIMIT - H.bodytemperature) / COLD_SLOWDOWN_FACTOR return . @@ -1130,10 +1133,6 @@ GLOBAL_LIST_EMPTY(roundstart_races) // ATTACK PROCS // ////////////////// -////////////////// -// ATTACK PROCS // -////////////////// - /datum/species/proc/spec_updatehealth(mob/living/carbon/human/H) return @@ -1150,13 +1149,13 @@ GLOBAL_LIST_EMPTY(roundstart_races) return /datum/species/proc/help(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(!((target.health < 0 || target.has_trait(TRAIT_FAKEDEATH)) && !(target.mobility_flags & MOBILITY_STAND))) + if(!((target.health < 0 || HAS_TRAIT(target, TRAIT_FAKEDEATH)) && !(target.mobility_flags & MOBILITY_STAND))) target.help_shake_act(user) if(target != user) log_combat(user, target, "shaken") return 1 else - var/we_breathe = !user.has_trait(TRAIT_NOBREATH) + var/we_breathe = !HAS_TRAIT(user, TRAIT_NOBREATH) var/we_lung = user.getorganslot(ORGAN_SLOT_LUNGS) if(we_breathe && we_lung) @@ -1176,12 +1175,8 @@ GLOBAL_LIST_EMPTY(roundstart_races) target.grabbedby(user) return 1 - - - - /datum/species/proc/harm(mob/living/carbon/human/user, mob/living/carbon/human/target, datum/martial_art/attacker_style) - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to harm [target]!") return FALSE if(target.check_block()) @@ -1193,14 +1188,14 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/atk_verb = user.dna.species.attack_verb if(!(target.mobility_flags & MOBILITY_STAND)) - atk_verb = "kick" + atk_verb = ATTACK_EFFECT_KICK - switch(atk_verb) - if("kick") + switch(atk_verb)//this code is really stupid but some genius apparently made "claw" and "slash" two attack types but also the same one so it's needed i guess + if(ATTACK_EFFECT_KICK) user.do_attack_animation(target, ATTACK_EFFECT_KICK) - if("slash") + if(ATTACK_EFFECT_SLASH || ATTACK_EFFECT_CLAW)//smh user.do_attack_animation(target, ATTACK_EFFECT_CLAW) - if("smash") + if(ATTACK_EFFECT_SMASH) user.do_attack_animation(target, ATTACK_EFFECT_SMASH) else user.do_attack_animation(target, ATTACK_EFFECT_PUNCH) @@ -1209,13 +1204,20 @@ GLOBAL_LIST_EMPTY(roundstart_races) var/obj/item/bodypart/affecting = target.get_bodypart(ran_zone(user.zone_selected)) - if(!damage || !affecting) + var/miss_chance = 100//calculate the odds that a punch misses entirely. considers stamina and brute damage of the puncher. punches miss by default to prevent weird cases + if(user.dna.species.punchdamagelow) + if(atk_verb == ATTACK_EFFECT_KICK) //kicks never miss (provided your species deals more than 0 damage) + miss_chance = 0 + else + miss_chance = min((user.dna.species.punchdamagehigh/user.dna.species.punchdamagelow) + user.getStaminaLoss() + (user.getBruteLoss()*0.5), 100) //old base chance for a miss + various damage. capped at 100 to prevent weirdness in prob() + + if(!damage || !affecting || prob(miss_chance))//future-proofing for species that have 0 damage/weird cases where no zone is targeted 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) + log_combat(user, target, "attempted to punch") return FALSE - var/armor_block = target.run_armor_check(affecting, "melee") playsound(target.loc, user.dna.species.attack_sound, 25, 1, -1) @@ -1229,13 +1231,22 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(user.limb_destroyer) target.dismembering_strike(user, affecting.body_zone) - target.apply_damage(damage, attack_type, affecting, armor_block) - log_combat(user, target, "punched") + + if(atk_verb == ATTACK_EFFECT_KICK)//kicks deal 1.5x raw damage + target.apply_damage(damage*1.5, attack_type, affecting, armor_block) + log_combat(user, target, "kicked") + else//other attacks to 1/2 raw damage + full in stamina damage + target.apply_damage(damage*0.5, attack_type, affecting, armor_block) + target.apply_damage(damage, STAMINA, affecting, armor_block) + log_combat(user, target, "punched") + if((target.stat != DEAD) && damage >= user.dna.species.punchstunthreshold) target.visible_message("[user] has knocked [target] down!", \ "[user] has knocked [target] down!", null, COMBAT_MESSAGE_RANGE) - target.apply_effect(80, EFFECT_KNOCKDOWN, armor_block) + var/knockdown_duration = 40 + (target.getStaminaLoss() + (target.getBruteLoss()*0.5))*0.8 //50 total damage = 40 base stun + 40 stun modifier = 80 stun duration, which is the old base duration + target.apply_effect(knockdown_duration, EFFECT_KNOCKDOWN, armor_block) target.forcesay(GLOB.hit_appends) + log_combat(user, target, "got a stun punch with their previous punch") else if(!(target.mobility_flags & MOBILITY_STAND)) target.forcesay(GLOB.hit_appends) @@ -1244,50 +1255,111 @@ GLOBAL_LIST_EMPTY(roundstart_races) /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 + target.visible_message("[target] blocks [user]'s shoving attempt!") + return FALSE if(attacker_style && attacker_style.disarm_act(user,target)) - return 1 + return TRUE + if(user.resting || user.IsKnockdown()) + return FALSE + if(user == target) + return FALSE + if(user.loc == target.loc) + return FALSE else user.do_attack_animation(target, ATTACK_EFFECT_DISARM) + playsound(target, 'sound/weapons/thudswoosh.ogg', 50, TRUE, -1) if(target.w_uniform) target.w_uniform.add_fingerprint(user) - var/randomized_zone = ran_zone(user.zone_selected) SEND_SIGNAL(target, COMSIG_HUMAN_DISARM_HIT, user, user.zone_selected) - var/obj/item/bodypart/affecting = target.get_bodypart(randomized_zone) - 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(40, EFFECT_PARALYZE, target.run_armor_check(affecting, "melee", "Your armor prevents your fall!", "Your armor softens your fall!")) - target.forcesay(GLOB.hit_appends) - log_combat(user, target, "pushed over") - return - if(randn <= 60) - var/obj/item/I = null - if(target.pulling) - target.visible_message("[user] has broken [target]'s grip on [target.pulling]!") - target.stop_pulling() - else - I = target.get_active_held_item() - if(target.dropItemToGround(I)) - target.visible_message("[user] has disarmed [target]!", \ - "[user] has disarmed [target]!", null, COMBAT_MESSAGE_RANGE) + var/turf/target_oldturf = target.loc + var/shove_dir = get_dir(user.loc, target_oldturf) + var/turf/target_shove_turf = get_step(target.loc, shove_dir) + var/mob/living/carbon/human/target_collateral_human + var/obj/structure/table/target_table + var/obj/machinery/disposal/bin/target_disposal_bin + var/shove_blocked = FALSE //Used to check if a shove is blocked so that if it is knockdown logic can be applied + + //Thank you based whoneedsspace + target_collateral_human = locate(/mob/living/carbon/human) in target_shove_turf.contents + if(target_collateral_human) + shove_blocked = TRUE + else + target.Move(target_shove_turf, shove_dir) + if(get_turf(target) == target_oldturf) + target_table = locate(/obj/structure/table) in target_shove_turf.contents + target_disposal_bin = locate(/obj/machinery/disposal/bin) in target_shove_turf.contents + shove_blocked = TRUE + + if(target.IsKnockdown() && !target.IsParalyzed()) + target.Paralyze(SHOVE_CHAIN_PARALYZE) + target.visible_message("[user.name] kicks [target.name] onto their side!", + "[user.name] kicks you onto your side!", null, COMBAT_MESSAGE_RANGE) + addtimer(CALLBACK(target, /mob/living/proc/SetKnockdown, 0), SHOVE_CHAIN_PARALYZE) + log_combat(user, target, "kicks", "onto their side (paralyzing)") + + if(shove_blocked && !target.is_shove_knockdown_blocked() && !target.buckled) + var/directional_blocked = FALSE + if(shove_dir in GLOB.cardinals) //Directional checks to make sure that we're not shoving through a windoor or something like that + var/target_turf = get_turf(target) + for(var/obj/O in target_turf) + if(O.flags_1 & ON_BORDER_1 && O.dir == shove_dir && O.density) + directional_blocked = TRUE + break + if(target_turf != target_shove_turf) //Make sure that we don't run the exact same check twice on the same tile + for(var/obj/O in target_shove_turf) + if(O.flags_1 & ON_BORDER_1 && O.dir == turn(shove_dir, 180) && O.density) + directional_blocked = TRUE + break + if((!target_table && !target_collateral_human) || directional_blocked) + target.Knockdown(SHOVE_KNOCKDOWN_SOLID) + user.visible_message("[user.name] shoves [target.name], knocking them down!", + "You shove [target.name], knocking them down!", null, COMBAT_MESSAGE_RANGE) + log_combat(user, target, "shoved", "knocking them down") + else if(target_table) + target.Knockdown(SHOVE_KNOCKDOWN_TABLE) + user.visible_message("[user.name] shoves [target.name] onto \the [target_table]!", + "You shove [target.name] onto \the [target_table]!", null, COMBAT_MESSAGE_RANGE) + target.throw_at(target_table, 1, 1, null, FALSE) //1 speed throws with no spin are basically just forcemoves with a hard collision check + log_combat(user, target, "shoved", "onto [target_table] (table)") + else if(target_collateral_human) + target.Knockdown(SHOVE_KNOCKDOWN_HUMAN) + target_collateral_human.Knockdown(SHOVE_KNOCKDOWN_COLLATERAL) + user.visible_message("[user.name] shoves [target.name] into [target_collateral_human.name]!", + "You shove [target.name] into [target_collateral_human.name]!", null, COMBAT_MESSAGE_RANGE) + log_combat(user, target, "shoved", "into [target_collateral_human.name]") + else if(target_disposal_bin) + target.Knockdown(SHOVE_KNOCKDOWN_SOLID) + target.forceMove(target_disposal_bin) + user.visible_message("[user.name] shoves [target.name] into \the [target_disposal_bin]!", + "You shove [target.name] into \the [target_disposal_bin]!", null, COMBAT_MESSAGE_RANGE) + log_combat(user, target, "shoved", "into [target_disposal_bin] (disposal bin)") + else + user.visible_message("[user.name] shoves [target.name]!", + "You shove [target.name]!", null, COMBAT_MESSAGE_RANGE) + var/target_held_item = target.get_active_held_item() + var/knocked_item = FALSE + if(!is_type_in_typecache(target_held_item, GLOB.shove_disarming_types)) + target_held_item = null + if(!target.has_movespeed_modifier(MOVESPEED_ID_SHOVE)) + target.add_movespeed_modifier(MOVESPEED_ID_SHOVE, multiplicative_slowdown = SHOVE_SLOWDOWN_STRENGTH) + if(target_held_item) + target.visible_message("[target.name]'s grip on \the [target_held_item] loosens!", + "Your grip on \the [target_held_item] loosens!", null, COMBAT_MESSAGE_RANGE) + addtimer(CALLBACK(target, /mob/living/carbon/human/proc/clear_shove_slowdown), SHOVE_SLOWDOWN_LENGTH) + else if(target_held_item) + target.dropItemToGround(target_held_item) + knocked_item = TRUE + target.visible_message("[target.name] drops \the [target_held_item]!!", + "You drop \the [target_held_item]!!", null, COMBAT_MESSAGE_RANGE) + var/append_message = "" + if(target_held_item) + if(knocked_item) + append_message = "causing them to drop [target_held_item]" else - I = null - playsound(target, 'sound/weapons/thudswoosh.ogg', 50, 1, -1) - log_combat(user, target, "disarmed", "[I ? " removing \the [I]" : ""]") - return - - - playsound(target, 'sound/weapons/punchmiss.ogg', 25, 1, -1) - target.visible_message("[user] attempted to disarm [target]!", \ - "[user] attempted to disarm [target]!", null, COMBAT_MESSAGE_RANGE) - log_combat(user, target, "attempted to disarm") - + append_message = "loosening their grip on [target_held_item]" + log_combat(user, target, "shoved", append_message) /datum/species/proc/spec_hitby(atom/movable/AM, mob/living/carbon/human/H) return @@ -1350,7 +1422,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) //dismemberment var/probability = I.get_dismemberment_chance(affecting) - if(prob(probability) || (H.has_trait(TRAIT_EASYDISMEMBER) && prob(probability))) //try twice + if(prob(probability) || (HAS_TRAIT(H, TRAIT_EASYDISMEMBER) && prob(probability))) //try twice if(affecting.dismember(I.damtype)) I.add_mob_blood(H) playsound(get_turf(H), I.get_dismember_sound(), 80, 1) @@ -1420,10 +1492,10 @@ GLOBAL_LIST_EMPTY(roundstart_races) H.forcesay(GLOB.hit_appends) //forcesay checks stat already. return TRUE -/datum/species/proc/apply_damage(damage, damagetype = BRUTE, def_zone = null, blocked, mob/living/carbon/human/H) +/datum/species/proc/apply_damage(damage, damagetype = BRUTE, def_zone = null, blocked, mob/living/carbon/human/H, forced = FALSE) var/hit_percent = (100-(blocked+armor))/100 hit_percent = (hit_percent * (100-H.physiology.damage_resistance))/100 - if(!damage || hit_percent <= 0) + if(!damage || (!forced && hit_percent <= 0)) return 0 var/obj/item/bodypart/BP = null @@ -1439,32 +1511,39 @@ GLOBAL_LIST_EMPTY(roundstart_races) switch(damagetype) if(BRUTE) H.damageoverlaytemp = 20 + var/damage_amount = forced ? damage : damage * hit_percent * brutemod * H.physiology.brute_mod if(BP) - if(BP.receive_damage(damage * hit_percent * brutemod * H.physiology.brute_mod, 0)) + if(BP.receive_damage(damage_amount, 0)) H.update_damage_overlays() else//no bodypart, we deal damage with a more general method. - H.adjustBruteLoss(damage * hit_percent * brutemod * H.physiology.brute_mod) + H.adjustBruteLoss(damage_amount) if(BURN) H.damageoverlaytemp = 20 + var/damage_amount = forced ? damage : damage * hit_percent * burnmod * H.physiology.burn_mod if(BP) - if(BP.receive_damage(0, damage * hit_percent * burnmod * H.physiology.burn_mod)) + if(BP.receive_damage(0, damage_amount)) H.update_damage_overlays() else - H.adjustFireLoss(damage * hit_percent * burnmod * H.physiology.burn_mod) + H.adjustFireLoss(damage_amount) if(TOX) - H.adjustToxLoss(damage * hit_percent * H.physiology.tox_mod) + var/damage_amount = forced ? damage : damage * hit_percent * H.physiology.tox_mod + H.adjustToxLoss(damage_amount) if(OXY) - H.adjustOxyLoss(damage * hit_percent * H.physiology.oxy_mod) + var/damage_amount = forced ? damage : damage * hit_percent * H.physiology.oxy_mod + H.adjustOxyLoss(damage_amount) if(CLONE) - H.adjustCloneLoss(damage * hit_percent * H.physiology.clone_mod) + var/damage_amount = forced ? damage : damage * hit_percent * H.physiology.clone_mod + H.adjustCloneLoss(damage_amount) if(STAMINA) + var/damage_amount = forced ? damage : damage * hit_percent * H.physiology.stamina_mod if(BP) - if(BP.receive_damage(0, 0, damage * hit_percent * H.physiology.stamina_mod)) + if(BP.receive_damage(0, 0, damage_amount)) H.update_stamina() else - H.adjustStaminaLoss(damage * hit_percent * H.physiology.stamina_mod) + H.adjustStaminaLoss(damage_amount) if(BRAIN) - H.adjustBrainLoss(damage * hit_percent * H.physiology.brain_mod) + var/damage_amount = forced ? damage : damage * hit_percent * H.physiology.brain_mod + H.adjustBrainLoss(damage_amount) return 1 /datum/species/proc/on_hit(obj/item/projectile/P, mob/living/carbon/human/H) @@ -1484,7 +1563,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) ///////////// /datum/species/proc/breathe(mob/living/carbon/human/H) - if(H.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(H, TRAIT_NOBREATH)) return TRUE @@ -1509,15 +1588,19 @@ GLOBAL_LIST_EMPTY(roundstart_races) H.adjust_bodytemperature((thermal_protection+1)*natural + max(thermal_protection * (loc_temp - H.bodytemperature) / BODYTEMP_COLD_DIVISOR, BODYTEMP_COOLING_MAX)) else //we're sweating, insulation hinders our ability to reduce heat - and it will reduce the amount of cooling you get from the environment H.adjust_bodytemperature(natural*(1/(thermal_protection+1)) + max((thermal_protection * (loc_temp - H.bodytemperature) + BODYTEMP_NORMAL - H.bodytemperature) / BODYTEMP_COLD_DIVISOR , BODYTEMP_COOLING_MAX)) //Extra calculation for hardsuits to bleed off heat - else //Place is hotter than we are - thermal_protection -= H.get_heat_protection(loc_temp) //This returns a 0 - 1 value, which corresponds to the percentage of protection based on what you're wearing and what you're exposed to. - if(H.bodytemperature < BODYTEMP_NORMAL) //and we're cold, insulation enhances our ability to retain body heat but reduces the heat we get from the environment - H.adjust_bodytemperature((thermal_protection+1)*natural + min(thermal_protection * (loc_temp - H.bodytemperature) / BODYTEMP_HEAT_DIVISOR, BODYTEMP_HEATING_MAX)) - else //we're sweating, insulation hinders out ability to reduce heat - but will reduce the amount of heat we get from the environment - H.adjust_bodytemperature(natural*(1/(thermal_protection+1)) + min(thermal_protection * (loc_temp - H.bodytemperature) / BODYTEMP_HEAT_DIVISOR, BODYTEMP_HEATING_MAX)) + if (loc_temp > H.bodytemperature) //Place is hotter than we are + var/natural = 0 + if(H.stat != DEAD) + natural = H.natural_bodytemperature_stabilization() + var/thermal_protection = 1 + thermal_protection -= H.get_heat_protection(loc_temp) //This returns a 0 - 1 value, which corresponds to the percentage of protection based on what you're wearing and what you're exposed to. + if(H.bodytemperature < BODYTEMP_NORMAL) //and we're cold, insulation enhances our ability to retain body heat but reduces the heat we get from the environment + H.adjust_bodytemperature((thermal_protection+1)*natural + min(thermal_protection * (loc_temp - H.bodytemperature) / BODYTEMP_HEAT_DIVISOR, BODYTEMP_HEATING_MAX)) + else //we're sweating, insulation hinders out ability to reduce heat - but will reduce the amount of heat we get from the environment + H.adjust_bodytemperature(natural*(1/(thermal_protection+1)) + min(thermal_protection * (loc_temp - H.bodytemperature) / BODYTEMP_HEAT_DIVISOR, BODYTEMP_HEATING_MAX)) // +/- 50 degrees from 310K is the 'safe' zone, where no damage is dealt. - if(H.bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !H.has_trait(TRAIT_RESISTHEAT)) + if(H.bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !HAS_TRAIT(H, TRAIT_RESISTHEAT)) //Body temperature is too hot. SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "cold") @@ -1543,7 +1626,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) H.emote("scream") H.apply_damage(burn_damage, BURN) - else if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !H.has_trait(TRAIT_RESISTCOLD)) + else if(H.bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !HAS_TRAIT(H, TRAIT_RESISTCOLD)) SEND_SIGNAL(H, COMSIG_CLEAR_MOOD_EVENT, "hot") SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "cold", /datum/mood_event/cold) switch(H.bodytemperature) @@ -1566,7 +1649,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) 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(!H.has_trait(TRAIT_RESISTHIGHPRESSURE)) + if(!HAS_TRAIT(H, TRAIT_RESISTHIGHPRESSURE)) H.adjustBruteLoss(min(((adjusted_pressure / HAZARD_HIGH_PRESSURE) -1 ) * PRESSURE_DAMAGE_COEFFICIENT, MAX_HIGH_PRESSURE_DAMAGE) * H.physiology.pressure_mod) H.throw_alert("pressure", /obj/screen/alert/highpressure, 2) else @@ -1578,7 +1661,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) if(HAZARD_LOW_PRESSURE to WARNING_LOW_PRESSURE) H.throw_alert("pressure", /obj/screen/alert/lowpressure, 1) else - if(H.has_trait(TRAIT_RESISTLOWPRESSURE)) + if(HAS_TRAIT(H, TRAIT_RESISTLOWPRESSURE)) H.clear_alert("pressure") else H.adjustBruteLoss(LOW_PRESSURE_DAMAGE * H.physiology.pressure_mod) @@ -1651,7 +1734,7 @@ GLOBAL_LIST_EMPTY(roundstart_races) SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "on_fire", /datum/mood_event/on_fire) /datum/species/proc/CanIgniteMob(mob/living/carbon/human/H) - if(H.has_trait(TRAIT_NOFIRE)) + if(HAS_TRAIT(H, TRAIT_NOFIRE)) return FALSE return TRUE diff --git a/code/modules/mob/living/carbon/human/species_types/abductors.dm b/code/modules/mob/living/carbon/human/species_types/abductors.dm index b791d8961a1..9ae22bde5dc 100644 --- a/code/modules/mob/living/carbon/human/species_types/abductors.dm +++ b/code/modules/mob/living/carbon/human/species_types/abductors.dm @@ -3,7 +3,7 @@ id = "abductor" say_mod = "gibbers" sexes = FALSE - species_traits = list(NOBLOOD,NOEYES) + species_traits = list(NOBLOOD,NOEYESPRITES) inherent_traits = list(TRAIT_VIRUSIMMUNE,TRAIT_NOGUNS,TRAIT_NOHUNGER,TRAIT_NOBREATH) mutanttongue = /obj/item/organ/tongue/abductor changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | MIRROR_MAGIC | RACE_SWAP | ERT_SPAWN | SLIME_EXTRACT diff --git a/code/modules/mob/living/carbon/human/species_types/angel.dm b/code/modules/mob/living/carbon/human/species_types/angel.dm index a240782bf3f..c9d51d4bd6c 100644 --- a/code/modules/mob/living/carbon/human/species_types/angel.dm +++ b/code/modules/mob/living/carbon/human/species_types/angel.dm @@ -23,7 +23,7 @@ if(ishuman(H) && !fly) fly = new fly.Grant(H) - H.add_trait(TRAIT_HOLY, SPECIES_TRAIT) + ADD_TRAIT(H, TRAIT_HOLY, SPECIES_TRAIT) /datum/species/angel/on_species_loss(mob/living/carbon/human/H) if(fly) @@ -36,7 +36,7 @@ H.dna.species.mutant_bodyparts -= "wings" H.dna.features["wings"] = "None" H.update_body() - H.remove_trait(TRAIT_HOLY, SPECIES_TRAIT) + REMOVE_TRAIT(H, TRAIT_HOLY, SPECIES_TRAIT) ..() /datum/species/angel/spec_life(mob/living/carbon/human/H) diff --git a/code/modules/mob/living/carbon/human/species_types/ethereal.dm b/code/modules/mob/living/carbon/human/species_types/ethereal.dm index 2114d5b423f..952b8473723 100644 --- a/code/modules/mob/living/carbon/human/species_types/ethereal.dm +++ b/code/modules/mob/living/carbon/human/species_types/ethereal.dm @@ -26,7 +26,7 @@ var/b1 var/static/r2 = 237 var/static/g2 = 164 - var/static/b2 = 149 + var/static/b2 = 149 //this is shit but how do i fix it? no clue. @@ -127,7 +127,8 @@ H.throw_alert("ethereal_charge", /obj/screen/alert/etherealcharge, 3) if(ETHEREAL_CHARGE_NONE to ETHEREAL_CHARGE_LOWPOWER) H.throw_alert("ethereal_charge", /obj/screen/alert/etherealcharge, 2) - apply_damage(0.5, BRUTE, null, null, H) + if(H.health > 10.5) + apply_damage(0.65, TOX, null, null, H) brutemod = 1.75 if(ETHEREAL_CHARGE_LOWPOWER to ETHEREAL_CHARGE_NORMAL) H.throw_alert("ethereal_charge", /obj/screen/alert/etherealcharge, 1) @@ -139,4 +140,4 @@ ethereal_charge = CLAMP(ethereal_charge + change, ETHEREAL_CHARGE_NONE, ETHEREAL_CHARGE_FULL) /datum/species/ethereal/proc/set_charge(var/change) - ethereal_charge = CLAMP(change, ETHEREAL_CHARGE_NONE, ETHEREAL_CHARGE_FULL) \ No newline at end of file + ethereal_charge = CLAMP(change, ETHEREAL_CHARGE_NONE, ETHEREAL_CHARGE_FULL) diff --git a/code/modules/mob/living/carbon/human/species_types/flypeople.dm b/code/modules/mob/living/carbon/human/species_types/flypeople.dm index 934112ceab4..9b7cf1ef082 100644 --- a/code/modules/mob/living/carbon/human/species_types/flypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/flypeople.dm @@ -2,7 +2,7 @@ name = "Flyperson" id = "fly" say_mod = "buzzes" - species_traits = list(NOEYES) + species_traits = list(NOEYESPRITES) inherent_biotypes = list(MOB_ORGANIC, MOB_HUMANOID, MOB_BUG) mutanttongue = /obj/item/organ/tongue/fly mutantliver = /obj/item/organ/liver/fly @@ -30,7 +30,7 @@ "You throw up on the floor!") ..() -/datum/species/fly/check_weakness(obj/item/weapon, mob/living/attacker) +/datum/species/fly/check_species_weakness(obj/item/weapon, mob/living/attacker) if(istype(weapon, /obj/item/melee/flyswatter)) return 29 //Flyswatters deal 30x damage to flypeople. return 0 diff --git a/code/modules/mob/living/carbon/human/species_types/golems.dm b/code/modules/mob/living/carbon/human/species_types/golems.dm index 8663d84d43f..23ae58c3daf 100644 --- a/code/modules/mob/living/carbon/human/species_types/golems.dm +++ b/code/modules/mob/living/carbon/human/species_types/golems.dm @@ -73,10 +73,10 @@ /datum/species/golem/adamantine/on_species_gain(mob/living/carbon/C, datum/species/old_species) ..() - C.add_trait(TRAIT_ANTIMAGIC, SPECIES_TRAIT) + ADD_TRAIT(C, TRAIT_ANTIMAGIC, SPECIES_TRAIT) /datum/species/golem/adamantine/on_species_loss(mob/living/carbon/C) - C.remove_trait(TRAIT_ANTIMAGIC, SPECIES_TRAIT) + REMOVE_TRAIT(C, TRAIT_ANTIMAGIC, SPECIES_TRAIT) ..() //The suicide bombers of golemkind @@ -147,7 +147,7 @@ meat = /obj/item/stack/ore/diamond info_text = "As a Diamond Golem, you are more resistant than the average golem." prefix = "Diamond" - special_names = list("Back") + special_names = list("Back","Grill") //Faster but softer and less armoured /datum/species/golem/gold @@ -174,13 +174,13 @@ /datum/species/golem/silver/on_species_gain(mob/living/carbon/C, datum/species/old_species) ..() - C.add_trait(TRAIT_HOLY, SPECIES_TRAIT) + ADD_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) /datum/species/golem/silver/on_species_loss(mob/living/carbon/C) - C.remove_trait(TRAIT_HOLY, SPECIES_TRAIT) + REMOVE_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) ..() -//Harder to stun, deals more damage, but it's even slower +//Harder to stun, deals more damage, massively slowpokes, but gravproof and obstructive. Basically, The Wall. /datum/species/golem/plasteel name = "Plasteel Golem" id = "plasteel golem" @@ -191,12 +191,23 @@ punchstunthreshold = 18 //still 40% stun chance speedmod = 4 //pretty fucking slow meat = /obj/item/stack/ore/iron - info_text = "As a Plasteel Golem, you are slower, but harder to stun, and hit very hard when punching." + info_text = "As a Plasteel Golem, you are slower, but harder to stun, and hit very hard when punching. You also magnetically attach to surfaces and so don't float without gravity and cannot have positions swapped with other beings." attack_verb = "smash" attack_sound = 'sound/effects/meteorimpact.ogg' //hits pretty hard prefix = "Plasteel" special_names = null +/datum/species/golem/plasteel/negates_gravity(mob/living/carbon/human/H) + return TRUE + +/datum/species/golem/plasteel/on_species_gain(mob/living/carbon/C, datum/species/old_species) + ..() + ADD_TRAIT(C, TRAIT_NOMOBSWAP, SPECIES_TRAIT) //THE WALL THE WALL THE WALL + +/datum/species/golem/plasteel/on_species_loss(mob/living/carbon/C) + REMOVE_TRAIT(C, TRAIT_NOMOBSWAP, SPECIES_TRAIT) //NOTHING ON ERF CAN MAKE IT FALL + ..() + //Immune to ash storms /datum/species/golem/titanium name = "Titanium Golem" @@ -319,7 +330,7 @@ var/last_event = 0 var/active = null prefix = "Uranium" - special_names = list("Oxide", "Rod", "Meltdown") + special_names = list("Oxide", "Rod", "Meltdown", "235") /datum/species/golem/uranium/spec_life(mob/living/carbon/human/H) if(!active) @@ -359,7 +370,7 @@ H.visible_message("The [P.name] sinks harmlessly in [H]'s sandy body!", \ "The [P.name] sinks harmlessly in [H]'s sandy body!") return BULLET_ACT_BLOCK - return BULLET_ACT_HIT + return ..() //Reflects lasers and resistant to burn damage, but very vulnerable to brute damage. Shatters on death. /datum/species/golem/glass @@ -392,11 +403,11 @@ 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/target = get_turf(P.starting) // redirect the projectile - P.preparePixelProjectile(locate(CLAMP(target.x + new_x, 1, world.maxx), CLAMP(target.y + new_y, 1, world.maxy), H.z), H) + P.firer = H + P.preparePixelProjectile(locate(CLAMP(new_x, 1, world.maxx), CLAMP(new_y, 1, world.maxy), H.z), H) return BULLET_ACT_FORCE_PIERCE - return BULLET_ACT_HIT + return ..() //Teleports when hit or when it wants to /datum/species/golem/bluespace @@ -575,7 +586,7 @@ limbs_id = "cultgolem" sexes = FALSE info_text = "As a Runic Golem, you possess eldritch powers granted by the Elder Goddess Nar'Sie." - species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES) //no mutcolors + species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH) //no mutcolors prefix = "Runic" special_names = null @@ -629,7 +640,7 @@ say_mod = "clicks" limbs_id = "clockgolem" info_text = "As a Clockwork Golem, you are faster than other types of golems. On death, you will break down into scrap." - species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES) + species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH) inherent_biotypes = list(MOB_ROBOTIC, MOB_HUMANOID) armor = 20 //Reinforced, but much less so to allow for fast movement attack_verb = "smash" @@ -696,10 +707,10 @@ /datum/species/golem/cloth/on_species_gain(mob/living/carbon/C, datum/species/old_species) ..() - C.add_trait(TRAIT_HOLY, SPECIES_TRAIT) + ADD_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) /datum/species/golem/cloth/on_species_loss(mob/living/carbon/C) - C.remove_trait(TRAIT_HOLY, SPECIES_TRAIT) + REMOVE_TRAIT(C, TRAIT_HOLY, SPECIES_TRAIT) ..() /datum/species/golem/cloth/check_roundstart_eligible() @@ -794,7 +805,7 @@ name = "Plastic Golem" id = "plastic golem" prefix = "Plastic" - special_names = null + special_names = list("Sheet", "Bag", "Bottle") fixed_mut_color = "fff" info_text = "As a Plastic Golem, you are capable of ventcrawling and passing through plastic flaps as long as you are naked." @@ -820,10 +831,10 @@ /datum/species/golem/bronze/bullet_act(obj/item/projectile/P, mob/living/carbon/human/H) if(!(world.time > last_gong_time + gong_cooldown)) - return BULLET_ACT_HIT + return ..() if(P.flag == "bullet" || P.flag == "bomb") gong(H) - return BULLET_ACT_HIT + return ..() /datum/species/golem/bronze/spec_hitby(atom/movable/AM, mob/living/carbon/human/H) ..() @@ -881,7 +892,7 @@ prefix = "Cardboard" special_names = list("Box") info_text = "As a Cardboard Golem, you aren't very strong, but you are a bit quicker and can easily create more brethren by using cardboard on yourself." - species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES) + species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH) inherent_traits = list(TRAIT_NOBREATH, TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOGUNS,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER) limbs_id = "c_golem" //special sprites attack_verb = "whips" @@ -926,7 +937,7 @@ /datum/species/golem/leather name = "Leather Golem" id = "leather golem" - special_names = list("Face", "Man") + special_names = list("Face", "Man", "Belt") //Ah dude 4 strength 4 stam leather belt AHHH inherent_traits = list(TRAIT_NOBREATH, TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOGUNS,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER, TRAIT_STRONG_GRABBER) prefix = "Leather" fixed_mut_color = "624a2e" @@ -940,7 +951,7 @@ prefix = "Durathread" limbs_id = "d_golem" special_names = list("Boll","Weave") - species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES) + species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH) fixed_mut_color = null inherent_traits = list(TRAIT_NOBREATH, TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOGUNS,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER) info_text = "As a Durathread Golem, your strikes will cause those your targets to start choking, but your woven body won't withstand fire as well." @@ -955,10 +966,10 @@ say_mod = "rattles" prefix = "Bone" limbs_id = "b_golem" - special_names = list("Head", "Broth", "Fracture") + special_names = list("Head", "Broth", "Fracture", "Rattler", "Appetit") liked_food = GROSS | MEAT | RAW toxic_food = null - species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES) + species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH) inherent_biotypes = list(MOB_UNDEAD, MOB_HUMANOID) mutanttongue = /obj/item/organ/tongue/bone sexes = FALSE @@ -1006,7 +1017,7 @@ else playsound(get_turf(owner),'sound/magic/RATTLEMEBONES.ogg', 100) for(var/mob/living/L in orange(7, get_turf(owner))) - if((MOB_UNDEAD in L.mob_biotypes) || isgolem(L) || L.has_trait(TRAIT_RESISTCOLD)) + if((MOB_UNDEAD in L.mob_biotypes) || isgolem(L) || HAS_TRAIT(L, TRAIT_RESISTCOLD)) return //Do not affect our brothers to_chat(L, "A spine-chilling sound chills you to the bone!") @@ -1019,12 +1030,13 @@ prefix = "Capitalist" attack_verb = "monopoliz" limbs_id = "ca_golem" - special_names = list("John D. Rockefeller","Rich Uncle Pennybags","Commodore Vanderbilt","Entrepreneur","Mr Moneybags", "Adam Smith") - species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES) + special_names = list("John D. Rockefeller","Rich Uncle Pennybags","Commodore Vanderbilt","Entrepreneur","Mr. Moneybags", "Adam Smith") + species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH) fixed_mut_color = null inherent_traits = list(TRAIT_RESISTHEAT,TRAIT_NOBREATH,TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOFIRE,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER) info_text = "As a Capitalist Golem, your fist spreads the powerful industrializing light of capitalism." changesource_flags = MIRROR_BADMIN + random_eligible = FALSE var/last_cash = 0 var/cash_cooldown = 100 @@ -1060,14 +1072,15 @@ name = "Soviet Golem" id = "soviet golem" prefix = "Comrade" - attack_verb = "nationalis" + attack_verb = "nationaliz" limbs_id = "s_golem" special_names = list("Stalin","Lenin","Trotsky","Marx","Comrade") //comrade comrade - species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYES) + species_traits = list(NOBLOOD,NO_UNDERWEAR,NOEYESPRITES,NOFLASH) fixed_mut_color = null inherent_traits = list(TRAIT_RESISTHEAT,TRAIT_NOBREATH,TRAIT_RESISTCOLD,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOFIRE,TRAIT_RADIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER) info_text = "As a Soviet Golem, your fist spreads the bright soviet light of communism." changesource_flags = MIRROR_BADMIN + random_eligible = FALSE /datum/species/golem/soviet/on_species_gain(mob/living/carbon/C, datum/species/old_species) . = ..() diff --git a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm index 47ada1bcaf4..5168ca1e6ee 100644 --- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm @@ -589,7 +589,7 @@ /datum/species/jelly/stargazer/proc/link_mob(mob/living/M) if(QDELETED(M) || M.stat == DEAD) return FALSE - if(M.has_trait(TRAIT_MINDSHIELD)) //mindshield implant, no dice + if(HAS_TRAIT(M, TRAIT_MINDSHIELD)) //mindshield implant, no dice return FALSE if(M in linked_mobs) return FALSE diff --git a/code/modules/mob/living/carbon/human/species_types/mothmen.dm b/code/modules/mob/living/carbon/human/species_types/mothmen.dm index 6f405eff8e4..8a7f775a489 100644 --- a/code/modules/mob/living/carbon/human/species_types/mothmen.dm +++ b/code/modules/mob/living/carbon/human/species_types/mothmen.dm @@ -3,7 +3,7 @@ id = "moth" say_mod = "flutters" default_color = "00FF00" - species_traits = list(LIPS, NOEYES) + species_traits = list(LIPS, NOEYESPRITES) inherent_biotypes = list(MOB_ORGANIC, MOB_HUMANOID, MOB_BUG) mutant_bodyparts = list("moth_wings") default_features = list("moth_wings" = "Plain") @@ -11,7 +11,7 @@ attack_sound = 'sound/weapons/slash.ogg' miss_sound = 'sound/weapons/slashmiss.ogg' meat = /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/moth - liked_food = VEGETABLES | DAIRY + liked_food = VEGETABLES | DAIRY | CLOTH disliked_food = FRUIT | GROSS toxic_food = MEAT | RAW mutanteyes = /obj/item/organ/eyes/moth @@ -49,7 +49,7 @@ H.adjustToxLoss(3) H.reagents.remove_reagent(chem.id, REAGENTS_METABOLISM) -/datum/species/moth/check_weakness(obj/item/weapon, mob/living/attacker) +/datum/species/moth/check_species_weakness(obj/item/weapon, mob/living/attacker) if(istype(weapon, /obj/item/melee/flyswatter)) return 9 //flyswatters deal 10x damage to moths return 0 diff --git a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm index 9c9f63d5d89..97e05f6477f 100644 --- a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm @@ -10,7 +10,7 @@ nojumpsuit = TRUE say_mod = "poofs" //what does a mushroom sound like - species_traits = list(MUTCOLORS, NOEYES, NO_UNDERWEAR) + species_traits = list(MUTCOLORS, NOEYESPRITES,NOFLASH, NO_UNDERWEAR) inherent_traits = list(TRAIT_NOBREATH) speedmod = 1.5 //faster than golems but not by much diff --git a/code/modules/mob/living/carbon/human/species_types/plasmamen.dm b/code/modules/mob/living/carbon/human/species_types/plasmamen.dm index fc05b629178..e84e8d08d69 100644 --- a/code/modules/mob/living/carbon/human/species_types/plasmamen.dm +++ b/code/modules/mob/living/carbon/human/species_types/plasmamen.dm @@ -54,7 +54,65 @@ . = ..() /datum/species/plasmaman/before_equip_job(datum/job/J, mob/living/carbon/human/H, visualsOnly = FALSE) + var/current_job = J.title var/datum/outfit/plasmaman/O = new /datum/outfit/plasmaman + switch(current_job) + if("Chaplain") + O = new /datum/outfit/plasmaman/chaplain + + if("Curator") + O = new /datum/outfit/plasmaman/curator + + if("Janitor") + O = new /datum/outfit/plasmaman/janitor + + if("Botanist") + O = new /datum/outfit/plasmaman/botany + + if("Bartender", "Lawyer") + O = new /datum/outfit/plasmaman/bar + + if("Cook") + O = new /datum/outfit/plasmaman/chef + + if("Security Officer") + O = new /datum/outfit/plasmaman/security + + if("Detective") + O = new /datum/outfit/plasmaman/detective + + if("Warden") + O = new /datum/outfit/plasmaman/warden + + if("Cargo Technician", "Quartermaster") + O = new /datum/outfit/plasmaman/cargo + + if("Shaft Miner") + O = new /datum/outfit/plasmaman/mining + + if("Medical Doctor") + O = new /datum/outfit/plasmaman/medical + + if("Chemist") + O = new /datum/outfit/plasmaman/chemist + + if("Geneticist") + O = new /datum/outfit/plasmaman/genetics + + if("Roboticist") + O = new /datum/outfit/plasmaman/robotics + + if("Virologist") + O = new /datum/outfit/plasmaman/viro + + if("Scientist") + O = new /datum/outfit/plasmaman/science + + if("Station Engineer") + O = new /datum/outfit/plasmaman/engineering + + if("Atmospheric Technician") + O = new /datum/outfit/plasmaman/atmospherics H.equipOutfit(O, visualsOnly) H.internal = H.get_item_for_held_index(2) H.update_internals_hud_icon(1) diff --git a/code/modules/mob/living/carbon/human/species_types/podpeople.dm b/code/modules/mob/living/carbon/human/species_types/podpeople.dm index a38b89f6407..1ea6bf21fb9 100644 --- a/code/modules/mob/living/carbon/human/species_types/podpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/podpeople.dm @@ -60,6 +60,7 @@ H.easy_randmut(NEGATIVE+MINOR_NEGATIVE) else H.easy_randmut(POSITIVE) + H.randmuti() H.domutcheck() else H.adjustFireLoss(rand(5,15)) diff --git a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm index 142012b5fe9..5920f8e8ad0 100644 --- a/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/shadowpeople.dm @@ -8,7 +8,7 @@ sexes = 0 ignored_by = list(/mob/living/simple_animal/hostile/faithless) meat = /obj/item/reagent_containers/food/snacks/meat/slab/human/mutant/shadow - species_traits = list(NOBLOOD,NOEYES) + species_traits = list(NOBLOOD,NOEYESPRITES,NOFLASH) inherent_traits = list(TRAIT_RADIMMUNE,TRAIT_VIRUSIMMUNE,TRAIT_NOBREATH) changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | MIRROR_MAGIC @@ -36,7 +36,7 @@ limbs_id = "shadow" burnmod = 1.5 no_equip = list(SLOT_WEAR_MASK, SLOT_WEAR_SUIT, SLOT_GLOVES, SLOT_SHOES, SLOT_W_UNIFORM, SLOT_S_STORE) - species_traits = list(NOBLOOD,NO_UNDERWEAR,NO_DNA_COPY,NOTRANSSTING,NOEYES) + species_traits = list(NOBLOOD,NO_UNDERWEAR,NO_DNA_COPY,NOTRANSSTING,NOEYESPRITES,NOFLASH) inherent_traits = list(TRAIT_RESISTCOLD,TRAIT_NOBREATH,TRAIT_RESISTHIGHPRESSURE,TRAIT_RESISTLOWPRESSURE,TRAIT_NOGUNS,TRAIT_RADIMMUNE,TRAIT_VIRUSIMMUNE,TRAIT_PIERCEIMMUNE,TRAIT_NODISMEMBER,TRAIT_NOHUNGER) mutanteyes = /obj/item/organ/eyes/night_vision/nightmare mutant_organs = list(/obj/item/organ/heart/nightmare) @@ -49,11 +49,7 @@ . = ..() to_chat(C, "[info_text]") - C.real_name = "[pick(GLOB.nightmare_names)]" - C.name = C.real_name - if(C.mind) - C.mind.name = C.real_name - C.dna.real_name = C.real_name + C.fully_replace_character_name("[pick(GLOB.nightmare_names)]") /datum/species/shadow/nightmare/bullet_act(obj/item/projectile/P, mob/living/carbon/human/H) var/turf/T = H.loc @@ -63,7 +59,7 @@ H.visible_message("[H] dances in the shadows, evading [P]!") playsound(T, "bullet_miss", 75, 1) return BULLET_ACT_FORCE_PIERCE - return BULLET_ACT_HIT + return ..() /datum/species/shadow/nightmare/check_roundstart_eligible() return FALSE @@ -176,7 +172,7 @@ /obj/item/light_eater/Initialize() . = ..() - add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) AddComponent(/datum/component/butchering, 80, 70) /obj/item/light_eater/afterattack(atom/movable/AM, mob/user, proximity) diff --git a/code/modules/mob/living/carbon/human/species_types/snail.dm b/code/modules/mob/living/carbon/human/species_types/snail.dm new file mode 100644 index 00000000000..25bd05dbc9f --- /dev/null +++ b/code/modules/mob/living/carbon/human/species_types/snail.dm @@ -0,0 +1,63 @@ +/datum/species/snail + name = "Snailperson" + id = "snail" + offset_features = list(OFFSET_UNIFORM = list(0,0), OFFSET_ID = list(0,0), OFFSET_GLOVES = list(0,0), OFFSET_GLASSES = list(0,4), OFFSET_EARS = list(0,0), OFFSET_SHOES = list(0,0), OFFSET_S_STORE = list(0,0), OFFSET_FACEMASK = list(0,0), OFFSET_HEAD = list(0,0), OFFSET_FACE = list(0,0), OFFSET_BELT = list(0,0), OFFSET_BACK = list(0,0), OFFSET_SUIT = list(0,0), OFFSET_NECK = list(0,0)) + default_color = "336600" //vomit green + species_traits = list(MUTCOLORS, NO_UNDERWEAR) + inherent_traits = list(TRAIT_ALWAYS_CLEAN) + attack_verb = "slap" + say_mod = "slurs" + coldmod = 0.5 //snails only come out when its cold and wet + burnmod = 2 + speedmod = 6 + punchdamagehigh = 0.5 //snails are soft and squishy + siemens_coeff = 2 //snails are mostly water + changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_MAGIC | MIRROR_PRIDE | RACE_SWAP + sexes = FALSE //snails are hermaphrodites + var/shell_type = /obj/item/storage/backpack/snail + + mutanteyes = /obj/item/organ/eyes/snail + mutanttongue = /obj/item/organ/tongue/snail + exotic_blood = "lube" + +/datum/species/snail/handle_chemicals(datum/reagent/chem, mob/living/carbon/human/H) + if(chem.id == "sodiumchloride") + H.adjustFireLoss(2) + playsound(H, 'sound/weapons/sear.ogg', 30, 1) + H.reagents.remove_reagent(chem.id, REAGENTS_METABOLISM) + return 1 + +/datum/species/snail/on_species_gain(mob/living/carbon/C, datum/species/old_species, pref_load) + . = ..() + var/obj/item/storage/backpack/bag = C.get_item_by_slot(SLOT_BACK) + if(!istype(bag, /obj/item/storage/backpack/snail)) + if(C.dropItemToGround(bag)) //returns TRUE even if its null + C.equip_to_slot_or_del(new /obj/item/storage/backpack/snail(C), SLOT_BACK) + C.AddComponent(/datum/component/snailcrawl) + ADD_TRAIT(C, TRAIT_NOSLIPALL, SPECIES_TRAIT) + +/datum/species/snail/on_species_loss(mob/living/carbon/C) + . = ..() + var/datum/component/CP = C.GetComponent(/datum/component/snailcrawl) + CP.RemoveComponent() + REMOVE_TRAIT(C, TRAIT_NOSLIPALL, SPECIES_TRAIT) + var/obj/item/storage/backpack/bag = C.get_item_by_slot(SLOT_BACK) + if(istype(bag, /obj/item/storage/backpack/snail)) + bag.emptyStorage() + C.doUnEquip(bag, TRUE, no_move = TRUE) + qdel(bag) + +/obj/item/storage/backpack/snail + name = "snail shell" + desc = "Worn by snails as armor and storage compartment." + icon_state = "snailshell" + item_state = "snailshell" + lefthand_file = 'icons/mob/inhands/equipment/backpack_lefthand.dmi' + righthand_file = 'icons/mob/inhands/equipment/backpack_righthand.dmi' + armor = list("melee" = 40, "bullet" = 30, "laser" = 30, "energy" = 10, "bomb" = 25, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 50) + max_integrity = 200 + resistance_flags = FIRE_PROOF | ACID_PROOF + +/obj/item/storage/backpack/snail/Initialize() + . = ..() + ADD_TRAIT(src, TRAIT_NODROP, "snailshell") diff --git a/code/modules/mob/living/carbon/human/species_types/vampire.dm b/code/modules/mob/living/carbon/human/species_types/vampire.dm index 3f1d3afb22b..dad5b618e24 100644 --- a/code/modules/mob/living/carbon/human/species_types/vampire.dm +++ b/code/modules/mob/living/carbon/human/species_types/vampire.dm @@ -58,6 +58,11 @@ C.adjust_fire_stacks(6) C.IgniteMob() +/datum/species/vampire/check_species_weakness(obj/item/weapon, mob/living/attacker) + if(istype(weapon, /obj/item/nullrod/whip)) + return 1 //Whips deal 2x damage to vampires. Vampire killer. + return 0 + /obj/item/organ/tongue/vampire name = "vampire tongue" actions_types = list(/datum/action/item_action/organ_action/vampire) @@ -94,6 +99,10 @@ to_chat(victim, "[H] tries to bite you, but stops before touching you!") to_chat(H, "[victim] is blessed! You stop just in time to avoid catching fire.") return + if(victim?.reagents?.has_reagent("garlic")) + to_chat(victim, "[H] tries to bite you, but recoils in disgust!") + to_chat(H, "[victim] reeks of garlic! you can't bring yourself to drain such tainted blood.") + return if(!do_after(H, 30, target = victim)) return var/blood_volume_difference = BLOOD_VOLUME_MAXIMUM - H.blood_volume //How much capacity we have left to absorb blood diff --git a/code/modules/mob/living/carbon/human/species_types/zombies.dm b/code/modules/mob/living/carbon/human/species_types/zombies.dm index d341c668df1..7130a8b352c 100644 --- a/code/modules/mob/living/carbon/human/species_types/zombies.dm +++ b/code/modules/mob/living/carbon/human/species_types/zombies.dm @@ -14,7 +14,7 @@ var/static/list/spooks = list('sound/hallucinations/growl1.ogg','sound/hallucinations/growl2.ogg','sound/hallucinations/growl3.ogg','sound/hallucinations/veryfar_noise.ogg','sound/hallucinations/wail.ogg') disliked_food = NONE liked_food = GROSS | MEAT | RAW - changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | MIRROR_MAGIC | ERT_SPAWN + changesource_flags = MIRROR_BADMIN | WABBAJACK | MIRROR_PRIDE | ERT_SPAWN /datum/species/zombie/check_roundstart_eligible() if(SSevents.holidays && SSevents.holidays[HALLOWEEN]) @@ -40,7 +40,7 @@ /datum/species/zombie/infectious/spec_stun(mob/living/carbon/human/H,amount) . = min(20, amount) -/datum/species/zombie/infectious/apply_damage(damage, damagetype = BRUTE, def_zone = null, blocked, mob/living/carbon/human/H) +/datum/species/zombie/infectious/apply_damage(damage, damagetype = BRUTE, def_zone = null, blocked, mob/living/carbon/human/H, forced = FALSE) . = ..() if(.) regen_cooldown = world.time + REGENERATION_DELAY diff --git a/code/modules/mob/living/carbon/human/status_procs.dm b/code/modules/mob/living/carbon/human/status_procs.dm index 34cfbe32595..aa0b39b982d 100644 --- a/code/modules/mob/living/carbon/human/status_procs.dm +++ b/code/modules/mob/living/carbon/human/status_procs.dm @@ -15,14 +15,14 @@ amount = dna.species.spec_stun(src, amount) return ..() -/mob/living/carbon/human/Unconscious(amount, updating = 1, ignore_canunconscious = 0) +/mob/living/carbon/human/Unconscious(amount, updating = 1, ignore_canstun = 0) amount = dna.species.spec_stun(src,amount) - if(has_trait(TRAIT_HEAVY_SLEEPER)) + if(HAS_TRAIT(src, TRAIT_HEAVY_SLEEPER)) amount *= rand(1.25, 1.3) return ..() -/mob/living/carbon/human/Sleeping(amount, updating = 1, ignore_sleepimmune = 0) - if(has_trait(TRAIT_HEAVY_SLEEPER)) +/mob/living/carbon/human/Sleeping(amount, updating = 1, ignore_canstun = 0) + if(HAS_TRAIT(src, TRAIT_HEAVY_SLEEPER)) amount *= rand(1.25, 1.3) return ..() @@ -53,11 +53,9 @@ remove_language(/datum/language/beachbum) /mob/living/carbon/human/proc/adjust_hygiene(amount) - . = ..() hygiene = CLAMP(hygiene+amount, 0, HYGIENE_LEVEL_CLEAN) update_smell() /mob/living/carbon/human/proc/set_hygiene(amount) - . = ..() hygiene = CLAMP(amount, 0, HYGIENE_LEVEL_CLEAN) update_smell() diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 083b9a97ba6..a8429951a76 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -485,7 +485,7 @@ There are several things that need to be remembered: if(hygiene <= HYGIENE_LEVEL_DIRTY) var/mutable_appearance/new_smell_overlay = mutable_appearance('icons/mob/smelly.dmi', smelly_icon, -SMELL_LAYER) overlays_standing[SMELL_LAYER] = new_smell_overlay - apply_overlay(SMELL_LAYER) + apply_overlay(SMELL_LAYER) /* Does everything in relation to building the /mutable_appearance used in the mob's overlays list @@ -603,7 +603,7 @@ generate/load female uniform sprites matching all previously decided variables if(BP.dmg_overlay_type) . += "-[BP.dmg_overlay_type]" - if(has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(src, TRAIT_HUSK)) . += "-husk" /mob/living/carbon/human/load_limb_from_cache() @@ -645,7 +645,7 @@ generate/load female uniform sprites matching all previously decided variables add_overlay(HD.get_limb_icon()) update_damage_overlays() - if(HD && !(has_trait(TRAIT_HUSK))) + if(HD && !(HAS_TRAIT(src, TRAIT_HUSK))) // lipstick if(lip_style && (LIPS in dna.species.species_traits)) var/mutable_appearance/lip_overlay = mutable_appearance('icons/mob/human_face.dmi', "lips_[lip_style]", -BODY_LAYER) @@ -656,14 +656,14 @@ generate/load female uniform sprites matching all previously decided variables add_overlay(lip_overlay) // eyes - if(!(NOEYES in dna.species.species_traits)) - var/has_eyes = getorganslot(ORGAN_SLOT_EYES) + if(!(NOEYESPRITES in dna.species.species_traits)) + var/obj/item/organ/eyes/E = getorganslot(ORGAN_SLOT_EYES) var/mutable_appearance/eye_overlay - if(!has_eyes) + if(!E) eye_overlay = mutable_appearance('icons/mob/human_face.dmi', "eyes_missing", -BODY_LAYER) else - eye_overlay = mutable_appearance('icons/mob/human_face.dmi', "eyes", -BODY_LAYER) - if((EYECOLOR in dna.species.species_traits) && has_eyes) + eye_overlay = mutable_appearance('icons/mob/human_face.dmi', E.eye_icon_state, -BODY_LAYER) + if((EYECOLOR in dna.species.species_traits) && E) eye_overlay.color = "#" + eye_color if(OFFSET_FACE in dna.species.offset_features) eye_overlay.pixel_x += dna.species.offset_features[OFFSET_FACE][1] @@ -673,4 +673,4 @@ generate/load female uniform sprites matching all previously decided variables dna.species.handle_hair(src) update_inv_head() - update_inv_wear_mask() + update_inv_wear_mask() \ No newline at end of file diff --git a/code/modules/mob/living/carbon/inventory.dm b/code/modules/mob/living/carbon/inventory.dm index 44af3c008bb..30e16f6f034 100644 --- a/code/modules/mob/living/carbon/inventory.dm +++ b/code/modules/mob/living/carbon/inventory.dm @@ -85,7 +85,7 @@ return not_handled -/mob/living/carbon/doUnEquip(obj/item/I) +/mob/living/carbon/doUnEquip(obj/item/I, force, newloc, no_move, invdrop = TRUE) . = ..() //Sets the default return value to what the parent returns. if(!. || !I) //We don't want to set anything to null if the parent returned 0. return diff --git a/code/modules/mob/living/carbon/life.dm b/code/modules/mob/living/carbon/life.dm index 1e31954cb0e..dc051b0ad1b 100644 --- a/code/modules/mob/living/carbon/life.dm +++ b/code/modules/mob/living/carbon/life.dm @@ -8,28 +8,33 @@ damageoverlaytemp = 0 update_damage_hud() - if(stat != DEAD) //Reagent processing needs to come before breathing, to prevent edge cases. - handle_organs() + if(!IS_IN_STASIS(src)) - . = ..() + if(stat != DEAD) //Reagent processing needs to come before breathing, to prevent edge cases. + handle_organs() - if (QDELETED(src)) - return + . = ..() - if(.) //not dead - handle_blood() + if (QDELETED(src)) + return - if(stat != DEAD) - var/bprv = handle_bodyparts() - if(bprv & BODYPART_LIFE_UPDATE_HEALTH) - updatehealth() - update_stamina() + if(.) //not dead + handle_blood() - if(stat != DEAD) - handle_brain_damage() + if(stat != DEAD) + var/bprv = handle_bodyparts() + if(bprv & BODYPART_LIFE_UPDATE_HEALTH) + updatehealth() + update_stamina() - if(stat != DEAD) - handle_liver() + if(stat != DEAD) + handle_brain_damage() + + if(stat != DEAD) + handle_liver() + + else + . = ..() if(stat == DEAD) stop_sound_channel(CHANNEL_HEARTBEAT) @@ -72,7 +77,7 @@ var/datum/gas_mixture/breath if(!getorganslot(ORGAN_SLOT_BREATHING_TUBE)) - if(health <= HEALTH_THRESHOLD_FULLCRIT || (pulledby && pulledby.grab_state >= GRAB_KILL) || has_trait(TRAIT_MAGIC_CHOKE)) + if(health <= HEALTH_THRESHOLD_FULLCRIT || (pulledby && pulledby.grab_state >= GRAB_KILL) || HAS_TRAIT(src, TRAIT_MAGIC_CHOKE)) losebreath++ //You can't breath at all when in critical or when being choked, so you're going to miss a breath else if(health <= crit_threshold) @@ -114,7 +119,7 @@ air_update_turf() /mob/living/carbon/proc/has_smoke_protection() - if(has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(src, TRAIT_NOBREATH)) return TRUE return FALSE @@ -123,7 +128,7 @@ /mob/living/carbon/proc/check_breath(datum/gas_mixture/breath) if(status_flags & GODMODE) return - if(has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(src, TRAIT_NOBREATH)) return var/lungs = getorganslot(ORGAN_SLOT_LUNGS) @@ -370,23 +375,6 @@ if(radiation > RAD_MOB_SAFE) adjustToxLoss(log(radiation-RAD_MOB_SAFE)*RAD_TOX_COEFFICIENT) -/mob/living/carbon/handle_stomach() - set waitfor = 0 - for(var/mob/living/M in stomach_contents) - if(M.loc != src) - stomach_contents.Remove(M) - continue - if(iscarbon(M) && stat != DEAD) - if(M.stat == DEAD) - M.death(1) - stomach_contents.Remove(M) - qdel(M) - continue - if(SSmobs.times_fired%3==1) - if(!(M.status_flags & GODMODE)) - M.adjustBruteLoss(5) - adjust_nutrition(10) - /* Alcohol Poisoning Chart @@ -494,15 +482,17 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put handle_hallucinations() if(drunkenness) - drunkenness = max(drunkenness - (drunkenness * 0.04), 0) + drunkenness = max(drunkenness - (drunkenness * 0.04) - 0.01, 0) if(drunkenness >= 6) SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "drunk", /datum/mood_event/drunk) if(prob(25)) slurring += 2 jitteriness = max(jitteriness - 3, 0) - if(has_trait(TRAIT_DRUNK_HEALING)) + if(HAS_TRAIT(src, TRAIT_DRUNK_HEALING)) adjustBruteLoss(-0.12, FALSE) adjustFireLoss(-0.06, FALSE) + else + SEND_SIGNAL(src, COMSIG_CLEAR_MOOD_EVENT, "drunk") if(drunkenness >= 11 && slurring < 5) slurring += 1.2 @@ -528,20 +518,20 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put if(prob(25)) confused += 2 Dizzy(10) - if(has_trait(TRAIT_DRUNK_HEALING)) // effects stack with lower tiers + if(HAS_TRAIT(src, TRAIT_DRUNK_HEALING)) // effects stack with lower tiers adjustBruteLoss(-0.3, FALSE) adjustFireLoss(-0.15, FALSE) if(drunkenness >= 51) - if(prob(5)) - confused += 10 - vomit() + if(prob(3)) + confused += 15 + vomit() // vomiting clears toxloss, consider this a blessing Dizzy(25) if(drunkenness >= 61) if(prob(50)) blur_eyes(5) - if(has_trait(TRAIT_DRUNK_HEALING)) + if(HAS_TRAIT(src, TRAIT_DRUNK_HEALING)) adjustBruteLoss(-0.4, FALSE) adjustFireLoss(-0.2, FALSE) @@ -549,11 +539,12 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put blur_eyes(5) if(drunkenness >= 81) - adjustToxLoss(0.2) + adjustToxLoss(1) if(prob(5) && !stat) to_chat(src, "Maybe you should lie down for a bit...") if(drunkenness >= 91) + adjustToxLoss(1) adjustBrainLoss(0.4, 60) if(prob(20) && !stat) if(SSshuttle.emergency.mode == SHUTTLE_DOCKED && is_station_level(z)) //QoL mainly @@ -563,9 +554,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put Sleeping(900) if(drunkenness >= 101) - adjustToxLoss(4) //Let's be honest you shouldn't be alive by now - else - SEND_SIGNAL(src, COMSIG_CLEAR_MOOD_EVENT, "drunk") + adjustToxLoss(2) //Let's be honest you shouldn't be alive by now //used in human and monkey handle_environment() /mob/living/carbon/proc/natural_bodytemperature_stabilization() @@ -585,7 +574,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put /mob/living/carbon/proc/handle_liver() var/obj/item/organ/liver/liver = getorganslot(ORGAN_SLOT_LIVER) - if((!dna || !liver) || (NOLIVER in dna.species.species_traits)) + if((!dna && !liver) || (NOLIVER in dna.species.species_traits)) return if(liver) if(liver.damage >= liver.maxHealth) @@ -611,7 +600,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put /mob/living/carbon/proc/liver_failure() reagents.metabolize(src, can_overdose=FALSE, liverless = TRUE) - if(has_trait(TRAIT_STABLEHEART)) + if(HAS_TRAIT(src, TRAIT_STABLEHEART)) return adjustToxLoss(4, TRUE, TRUE) if(prob(30)) @@ -647,7 +636,7 @@ GLOBAL_LIST_INIT(ballmer_windows_me_msg, list("Yo man, what if, we like, uh, put return TRUE /mob/living/carbon/proc/needs_heart() - if(has_trait(TRAIT_STABLEHEART)) + if(HAS_TRAIT(src, TRAIT_STABLEHEART)) return FALSE if(dna && dna.species && (NOBLOOD in dna.species.species_traits)) //not all carbons have species! return FALSE diff --git a/code/modules/mob/living/carbon/monkey/combat.dm b/code/modules/mob/living/carbon/monkey/combat.dm index 01ee56d94e4..513c15da486 100644 --- a/code/modules/mob/living/carbon/monkey/combat.dm +++ b/code/modules/mob/living/carbon/monkey/combat.dm @@ -68,8 +68,7 @@ for(var/mob/living/carbon/monkey/M in view(7,src)) M.next_battle_screech = world.time + battle_screech_cooldown -/mob/living/carbon/monkey/proc/equip_item(var/obj/item/I) - +/mob/living/carbon/monkey/proc/equip_item(obj/item/I) if(I.loc == src) return TRUE @@ -119,7 +118,7 @@ cuff_resist(I) /mob/living/carbon/monkey/proc/should_target(var/mob/living/L) - if(has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(src, TRAIT_PACIFISM)) return FALSE if(enemies[L]) @@ -133,7 +132,7 @@ /mob/living/carbon/monkey/proc/handle_combat() if(pickupTarget) - if(restrained() || blacklistItems[pickupTarget] || pickupTarget.has_trait(TRAIT_NODROP)) + if(IsDeadOrIncap() || restrained() || blacklistItems[pickupTarget] || HAS_TRAIT(pickupTarget, TRAIT_NODROP)) pickupTarget = null else pickupTimer++ @@ -310,8 +309,9 @@ for(var/obj/item/I in M.held_items) if(I == pickupTarget) M.visible_message("[src] snatches [pickupTarget] from [M].", "[src] snatched [pickupTarget]!") - if(M.temporarilyRemoveItemFromInventory(pickupTarget) && !QDELETED(pickupTarget)) - equip_item(pickupTarget) + if(M.temporarilyRemoveItemFromInventory(pickupTarget)) + if(!QDELETED(pickupTarget) && !equip_item(pickupTarget)) + pickupTarget.forceMove(drop_location()) else M.visible_message("[src] tried to snatch [pickupTarget] from [M], but failed!", "[src] tried to grab [pickupTarget]!") pickpocketing = FALSE diff --git a/code/modules/mob/living/carbon/monkey/life.dm b/code/modules/mob/living/carbon/monkey/life.dm index c1cf4ad774b..9f7fdbe96e4 100644 --- a/code/modules/mob/living/carbon/monkey/life.dm +++ b/code/modules/mob/living/carbon/monkey/life.dm @@ -9,7 +9,7 @@ if (notransform) return - if(..()) + if(..() && !IS_IN_STASIS(src)) if(!client) if(stat == CONSCIOUS) @@ -81,7 +81,7 @@ adjust_bodytemperature(min((loc_temp - bodytemperature) / BODYTEMP_HEAT_DIVISOR, BODYTEMP_HEATING_MAX)) - if(bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !has_trait(TRAIT_RESISTHEAT)) + if(bodytemperature > BODYTEMP_HEAT_DAMAGE_LIMIT && !HAS_TRAIT(src, TRAIT_RESISTHEAT)) switch(bodytemperature) if(360 to 400) throw_alert("temp", /obj/screen/alert/hot, 1) @@ -96,7 +96,7 @@ else apply_damage(HEAT_DAMAGE_LEVEL_2, BURN) - else if(bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !has_trait(TRAIT_RESISTCOLD)) + else if(bodytemperature < BODYTEMP_COLD_DAMAGE_LIMIT && !HAS_TRAIT(src, TRAIT_RESISTCOLD)) if(!istype(loc, /obj/machinery/atmospherics/components/unary/cryo_cell)) switch(bodytemperature) if(200 to 260) diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index 2cf8e07f4fb..631dddb1571 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -71,7 +71,7 @@ /mob/living/carbon/monkey/updatehealth() . = ..() var/slow = 0 - if(!has_trait(TRAIT_IGNOREDAMAGESLOWDOWN)) + if(!HAS_TRAIT(src, TRAIT_IGNOREDAMAGESLOWDOWN)) var/health_deficiency = (maxHealth - health) if(health_deficiency >= 45) slow += (health_deficiency / 25) @@ -146,7 +146,7 @@ threatcount += 4 //trigger look_for_perp() since they're nonhuman and very likely hostile //mindshield implants imply trustworthyness - if(has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(src, TRAIT_MINDSHIELD)) threatcount -= 1 return threatcount diff --git a/code/modules/mob/living/carbon/monkey/update_icons.dm b/code/modules/mob/living/carbon/monkey/update_icons.dm index c807251af47..6311776596a 100644 --- a/code/modules/mob/living/carbon/monkey/update_icons.dm +++ b/code/modules/mob/living/carbon/monkey/update_icons.dm @@ -19,7 +19,7 @@ if(!HD) //Decapitated return - if(has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(src, TRAIT_HUSK)) return var/hair_hidden = 0 diff --git a/code/modules/mob/living/carbon/say.dm b/code/modules/mob/living/carbon/say.dm index 2c12a0d7995..bbb65518d70 100644 --- a/code/modules/mob/living/carbon/say.dm +++ b/code/modules/mob/living/carbon/say.dm @@ -40,7 +40,20 @@ . = initial(dt.flags) & TONGUELESS_SPEECH /mob/living/carbon/hear_intercept(message, atom/movable/speaker, datum/language/message_language, raw_message, radio_freq, list/spans, message_mode) + var/datum/status_effect/bugged/B = has_status_effect(STATUS_EFFECT_BUGGED) + if(B) + B.listening_in.show_message(message) for(var/T in get_traumas()) var/datum/brain_trauma/trauma = T message = trauma.on_hear(message, speaker, message_language, raw_message, radio_freq) + + if (src.mind.has_antag_datum(/datum/antagonist/traitor)) + for (var/codeword in GLOB.syndicate_code_phrase) + var/regex/codeword_match = new("([codeword])", "ig") + message = codeword_match.Replace(message, "$1") + + for (var/codeword in GLOB.syndicate_code_response) + var/regex/codeword_match = new("([codeword])", "ig") + message = codeword_match.Replace(message, "$1") + return message diff --git a/code/modules/mob/living/carbon/update_icons.dm b/code/modules/mob/living/carbon/update_icons.dm index c8830807cfa..735f4401053 100644 --- a/code/modules/mob/living/carbon/update_icons.dm +++ b/code/modules/mob/living/carbon/update_icons.dm @@ -276,7 +276,7 @@ else . += "-robotic" - if(has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(src, TRAIT_HUSK)) . += "-husk" diff --git a/code/modules/mob/living/damage_procs.dm b/code/modules/mob/living/damage_procs.dm index 3f5985540a8..95e77e5639d 100644 --- a/code/modules/mob/living/damage_procs.dm +++ b/code/modules/mob/living/damage_procs.dm @@ -8,25 +8,26 @@ Returns standard 0 if fail */ -/mob/living/proc/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = FALSE) +/mob/living/proc/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = FALSE, forced = FALSE) var/hit_percent = (100-blocked)/100 - if(!damage || (hit_percent <= 0)) + if(!damage || (!forced && hit_percent <= 0)) return 0 + var/damage_amount = forced ? damage : damage * hit_percent switch(damagetype) if(BRUTE) - adjustBruteLoss(damage * hit_percent) + adjustBruteLoss(damage_amount, forced = forced) if(BURN) - adjustFireLoss(damage * hit_percent) + adjustFireLoss(damage_amount, forced = forced) if(TOX) - adjustToxLoss(damage * hit_percent) + adjustToxLoss(damage_amount, forced = forced) if(OXY) - adjustOxyLoss(damage * hit_percent) + adjustOxyLoss(damage_amount, forced = forced) if(CLONE) - adjustCloneLoss(damage * hit_percent) + adjustCloneLoss(damage_amount, forced = forced) if(STAMINA) - adjustStaminaLoss(damage * hit_percent) + adjustStaminaLoss(damage_amount, forced = forced) if(BRAIN) - adjustBrainLoss(damage * hit_percent) + adjustBrainLoss(damage_amount) return 1 /mob/living/proc/apply_damage_type(damage = 0, damagetype = BRUTE) //like apply damage except it always uses the damage procs @@ -105,14 +106,14 @@ if(EFFECT_SLUR) slurring = max(slurring,(effect * hit_percent)) if(EFFECT_STUTTER) - if((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) // stun is usually associated with stutter + if((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) // stun is usually associated with stutter stuttering = max(stuttering,(effect * hit_percent)) if(EFFECT_EYE_BLUR) blur_eyes(effect * hit_percent) if(EFFECT_DROWSY) drowsyness = max(drowsyness,(effect * hit_percent)) if(EFFECT_JITTER) - if((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) + if((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) jitteriness = max(jitteriness,(effect * hit_percent)) if(EFFECT_PARALYZE) Paralyze(effect * hit_percent) @@ -242,10 +243,10 @@ /mob/living/proc/getStaminaLoss() return staminaloss -/mob/living/proc/adjustStaminaLoss(amount, updating_stamina = TRUE, forced = FALSE) +/mob/living/proc/adjustStaminaLoss(amount, updating_health = TRUE, forced = FALSE) return -/mob/living/proc/setStaminaLoss(amount, updating_stamina = TRUE, forced = FALSE) +/mob/living/proc/setStaminaLoss(amount, updating_health = TRUE, forced = FALSE) return // heal ONE external organ, organ gets randomly selected from damaged ones. @@ -258,7 +259,7 @@ update_stamina() // damage ONE external organ, organ gets randomly selected from damaged ones. -/mob/living/proc/take_bodypart_damage(brute = 0, burn = 0, stamina = 0, updating_health = TRUE, required_status) +/mob/living/proc/take_bodypart_damage(brute = 0, burn = 0, stamina = 0, updating_health = TRUE, required_status, check_armor = FALSE) adjustBruteLoss(brute, FALSE) //zero as argument for no instant health update adjustFireLoss(burn, FALSE) adjustStaminaLoss(stamina, FALSE) diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm index 028852e2425..0039c9f738b 100644 --- a/code/modules/mob/living/emote.dm +++ b/code/modules/mob/living/emote.dm @@ -60,7 +60,7 @@ /datum/emote/living/cough/can_run_emote(mob/user, status_check = TRUE) . = ..() - if(user.has_trait(TRAIT_SOOTHED_THROAT)) + if(HAS_TRAIT(user, TRAIT_SOOTHED_THROAT)) return FALSE /datum/emote/living/dance diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm index fc1c7a1e9d1..0d40c75d80b 100644 --- a/code/modules/mob/living/life.dm +++ b/code/modules/mob/living/life.dm @@ -1,4 +1,5 @@ -/mob/living/Life(seconds, times_fired) +/mob/living/proc/Life(seconds, times_fired) + set waitfor = FALSE set invisibility = 0 if(digitalinvis) @@ -33,44 +34,42 @@ return if(!loc) return - var/datum/gas_mixture/environment = loc.return_air() - if(stat != DEAD) - //Mutations and radiation - handle_mutations_and_radiation() + if(!IS_IN_STASIS(src)) - if(stat != DEAD) - //Breathing, if applicable - handle_breathing(times_fired) + if(stat != DEAD) + //Mutations and radiation + handle_mutations_and_radiation() - handle_diseases()// DEAD check is in the proc itself; we want it to spread even if the mob is dead, but to handle its disease-y properties only if you're not. + if(stat != DEAD) + //Breathing, if applicable + handle_breathing(times_fired) - if (QDELETED(src)) // diseases can qdel the mob via transformations - return + handle_diseases()// DEAD check is in the proc itself; we want it to spread even if the mob is dead, but to handle its disease-y properties only if you're not. - if(stat != DEAD) - //Random events (vomiting etc) - handle_random_events() + if (QDELETED(src)) // diseases can qdel the mob via transformations + return - //Handle temperature/pressure differences between body and environment - if(environment) - handle_environment(environment) + if(stat != DEAD) + //Random events (vomiting etc) + handle_random_events() + + //Handle temperature/pressure differences between body and environment + var/datum/gas_mixture/environment = loc.return_air() + if(environment) + handle_environment(environment) + + handle_gravity() + + if(stat != DEAD) + handle_traits() // eye, ear, brain damages + handle_status_effects() //all special effects, stun, knockdown, jitteryness, hallucination, sleeping, etc handle_fire() - //stuff in the stomach - handle_stomach() - - handle_gravity() - if(machine) machine.check_eye(src) - if(stat != DEAD) - handle_traits() // eye, ear, brain damages - if(stat != DEAD) - handle_status_effects() //all special effects, stun, knockdown, jitteryness, hallucination, sleeping, etc - if(stat != DEAD) return 1 @@ -115,9 +114,6 @@ var/turf/location = get_turf(src) location.hotspot_expose(700, 50, 1) -/mob/living/proc/handle_stomach() - return - //this updates all special effects: knockdown, druggy, stuttering, etc.. /mob/living/proc/handle_status_effects() if(confused) @@ -126,7 +122,7 @@ /mob/living/proc/handle_traits() //Eyes if(eye_blind) //blindness, heals slowly over time - if(!stat && !(has_trait(TRAIT_BLIND))) + if(!stat && !(HAS_TRAIT(src, TRAIT_BLIND))) eye_blind = max(eye_blind-1,0) if(client && !eye_blind) clear_alert("blind") diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index b6f369cb3b8..15c6e1ac38f 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -83,8 +83,10 @@ if(now_pushing) return TRUE + var/they_can_move = TRUE if(isliving(M)) var/mob/living/L = M + they_can_move = L.mobility_flags & MOBILITY_MOVE //Also spread diseases for(var/thing in diseases) var/datum/disease/D = thing @@ -100,7 +102,7 @@ if(L.pulledby && L.pulledby != src && L.restrained()) if(!(world.time % 5)) to_chat(src, "[L] is restrained, you cannot push past.") - return 1 + return TRUE if(L.pulling) if(ismob(L.pulling)) @@ -108,25 +110,31 @@ if(P.restrained()) if(!(world.time % 5)) to_chat(src, "[L] is restraining [P], you cannot push past.") - return 1 + return TRUE if(moving_diagonally)//no mob swap during diagonal moves. - return 1 + return TRUE if(!M.buckled && !M.has_buckled_mobs()) var/mob_swap = FALSE - //the puller can always swap with its victim if on grab intent - if(M.pulledby == src && a_intent == INTENT_GRAB) - mob_swap = TRUE - else if(M.has_trait(TRAIT_NOMOBSWAP) || has_trait(TRAIT_NOMOBSWAP)) - mob_swap = FALSE - //restrained people act if they were on 'help' intent to prevent a person being pulled from being separated from their puller - else if((M.restrained() || M.a_intent == INTENT_HELP) && (restrained() || a_intent == INTENT_HELP)) - mob_swap = TRUE + var/too_strong = (M.move_resist > move_force) //can't swap with immovable objects unless they help us + if(!they_can_move) //we have to physically move them + if(!too_strong) + mob_swap = TRUE + else + //You can swap with the person you are dragging on grab intent, and restrained people in most cases + if(M.pulledby == src && a_intent == INTENT_GRAB && !too_strong) + mob_swap = TRUE + else if( + !(HAS_TRAIT(M, TRAIT_NOMOBSWAP) || HAS_TRAIT(src, TRAIT_NOMOBSWAP))&&\ + ((M.restrained() && !too_strong) || M.a_intent == INTENT_HELP) &&\ + (restrained() || a_intent == INTENT_HELP) + ) + mob_swap = TRUE if(mob_swap) //switch our position with M if(loc && !loc.Adjacent(M.loc)) - return 1 + return TRUE now_pushing = 1 var/oldloc = loc var/oldMloc = M.loc @@ -150,21 +158,24 @@ now_pushing = 0 if(!move_failed) - return 1 + return TRUE //okay, so we didn't switch. but should we push? //not if he's not CANPUSH of course if(!(M.status_flags & CANPUSH)) - return 1 + return TRUE if(isliving(M)) var/mob/living/L = M - if(L.has_trait(TRAIT_PUSHIMMUNE)) - return 1 + if(HAS_TRAIT(L, TRAIT_PUSHIMMUNE)) + return TRUE + //If they're a human, and they're not in help intent, block pushing + if(ishuman(M) && (M.a_intent != INTENT_HELP)) + return TRUE //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 + return /mob/living/get_photo_description(obj/item/camera/camera) var/list/mob_details = list() @@ -255,8 +266,8 @@ if(ishuman(src)) var/mob/living/carbon/human/H = src if(H.dna.species.grab_sound) - sound_to_play = H.dna.species.grab_sound - if(H.has_trait(TRAIT_STRONG_GRABBER)) + sound_to_play = H.dna.species.grab_sound + if(HAS_TRAIT(H, TRAIT_STRONG_GRABBER)) sound_to_play = null playsound(src.loc, sound_to_play, 50, 1, -1) update_pull_hud_icon() @@ -265,7 +276,7 @@ var/mob/M = AM log_combat(src, M, "grabbed", addition="passive grab") - if(!supress_message && !(iscarbon(AM) && has_trait(TRAIT_STRONG_GRABBER))) + if(!supress_message && !(iscarbon(AM) && HAS_TRAIT(src, TRAIT_STRONG_GRABBER))) visible_message("[src] has grabbed [M] passively!") if(!iscarbon(src)) M.LAssailant = null @@ -286,12 +297,14 @@ if(iscarbon(L)) var/mob/living/carbon/C = L - if(src.has_trait(TRAIT_STRONG_GRABBER)) + if(HAS_TRAIT(src, TRAIT_STRONG_GRABBER)) C.grippedby(src) - + set_pull_offsets(M, state) /mob/living/proc/set_pull_offsets(mob/living/M, grab_state = GRAB_PASSIVE) + if(M.buckled) + return //don't make them change direction or offset them if they're buckled into something. var/offset = 0 switch(grab_state) if(GRAB_PASSIVE) @@ -309,11 +322,21 @@ if(SOUTH) animate(M, pixel_x = 0, pixel_y = -offset, 3) if(EAST) + if(M.lying == 270) //update the dragged dude's direction if we've turned + M.lying = 90 + M.update_transform() //force a transformation update, otherwise it'll take a few ticks for update_mobility() to do so + M.lying_prev = M.lying animate(M, pixel_x = offset, pixel_y = 0, 3) if(WEST) + if(M.lying == 90) + M.lying = 270 + M.update_transform() + M.lying_prev = M.lying animate(M, pixel_x = -offset, pixel_y = 0, 3) -/mob/living/proc/reset_pull_offsets(mob/living/M) +/mob/living/proc/reset_pull_offsets(mob/living/M, override) + if(!override && M.buckled) + return animate(M, pixel_x = 0, pixel_y = 0, 1) //mob verbs are a lot faster than object verbs @@ -342,7 +365,7 @@ /mob/living/pointed(atom/A as mob|obj|turf in view()) if(incapacitated()) return FALSE - if(has_trait(TRAIT_DEATHCOMA)) + if(HAS_TRAIT(src, TRAIT_DEATHCOMA)) return FALSE if(!..()) return FALSE @@ -359,8 +382,8 @@ to_chat(src, "You have given up life and succumbed to death.") death() -/mob/living/incapacitated(ignore_restraints = FALSE, ignore_grab = FALSE, check_immobilized = FALSE) - if(stat || IsUnconscious() || IsStun() || IsParalyzed() || (check_immobilized && IsImmobilized()) || (!ignore_restraints && restrained(ignore_grab))) +/mob/living/incapacitated(ignore_restraints = FALSE, ignore_grab = FALSE, check_immobilized = FALSE, ignore_stasis = FALSE) + if(stat || IsUnconscious() || IsStun() || IsParalyzed() || (check_immobilized && IsImmobilized()) || (!ignore_restraints && restrained(ignore_grab)) || (!ignore_stasis && IS_IN_STASIS(src))) return TRUE /mob/living/canUseStorage() @@ -514,7 +537,7 @@ SetUnconscious(0, FALSE) if(should_update_mobility) update_mobility() - + //proc used to completely heal a mob. /mob/living/proc/fully_heal(admin_revive = 0) restore_blood() @@ -529,6 +552,7 @@ bodytemperature = BODYTEMP_NORMAL set_blindness(0) set_blurriness(0) + set_dizziness(0) set_eye_damage(0) cure_nearsighted() cure_blind() @@ -538,10 +562,16 @@ ExtinguishMob() fire_stacks = 0 confused = 0 + dizziness = 0 + drowsyness = 0 + stuttering = 0 + slurring = 0 + jitteriness = 0 GET_COMPONENT(mood, /datum/component/mood) if (mood) mood.remove_temp_moods(admin_revive) update_mobility() + stop_sound_channel(CHANNEL_HEARTBEAT) //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() @@ -648,7 +678,7 @@ ..(pressure_difference, direction, pressure_resistance_prob_delta) /mob/living/can_resist() - return !((next_move > world.time) || incapacitated(ignore_restraints = TRUE)) + return !((next_move > world.time) || incapacitated(ignore_restraints = TRUE, ignore_stasis = TRUE)) /mob/living/verb/resist() set name = "Resist" @@ -661,7 +691,6 @@ SEND_SIGNAL(src, COMSIG_LIVING_RESIST, src) //resisting grabs (as if it helps anyone...) if(!restrained(ignore_grab = 1) && pulledby) - visible_message("[src] resists against [pulledby]'s grip!") log_combat(src, pulledby, "resisted grab") resist_grab() return @@ -686,18 +715,26 @@ return 1 //returning 0 means we successfully broke free /mob/living/resist_grab(moving_resist) - . = 1 - if(pulledby.grab_state) - if(prob(30/pulledby.grab_state)) + . = TRUE + if(pulledby.grab_state || resting) + var/altered_grab_state = pulledby.grab_state + if(resting && pulledby.grab_state < GRAB_KILL) //If resting, resisting out of a grab is equivalent to 1 grab state higher. wont make the grab state exceed the normal max, however + altered_grab_state++ + var/resist_chance = BASE_GRAB_RESIST_CHANCE // see defines/combat.dm + resist_chance = max(resist_chance/altered_grab_state-sqrt((getStaminaLoss()+getBruteLoss()/2)*(3-altered_grab_state)), 0) // https://i.imgur.com/6yAT90T.png for sample output values + if(prob(resist_chance)) visible_message("[src] has broken free of [pulledby]'s grip!") log_combat(pulledby, src, "broke grab") pulledby.stop_pulling() - return 0 + return FALSE + else + adjustStaminaLoss(rand(8,15))//8 is from 7.5 rounded up + visible_message("[src] struggles as they fail to break free of [pulledby]'s grip!") if(moving_resist && client) //we resisted by trying to move client.move_delay = world.time + 20 else pulledby.stop_pulling() - return 0 + return FALSE /mob/living/proc/resist_buckle() buckled.user_unbuckle_mob(src,src) @@ -745,7 +782,7 @@ // 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) - if(what.has_trait(TRAIT_NODROP)) + if(!what.canStrip(who)) to_chat(src, "You can't remove \the [what.name], it appears to be stuck!") return who.visible_message("[src] tries to remove [who]'s [what.name].", \ @@ -756,10 +793,10 @@ if(islist(where)) var/list/L = where if(what == who.get_item_for_held_index(L[2])) - if(who.dropItemToGround(what)) + if(what.doStrip(src, who)) log_combat(src, who, "stripped [what] off") if(what == who.get_item_by_slot(where)) - if(who.dropItemToGround(what)) + if(what.doStrip(src, who)) log_combat(src, who, "stripped [what] off") if(Adjacent(who)) //update inventory window @@ -771,7 +808,7 @@ // 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() - if(what && (what.has_trait(TRAIT_NODROP))) + if(what && (HAS_TRAIT(what, TRAIT_NODROP))) to_chat(src, "You can't put \the [what.name] on [who], it's stuck to your hand!") return if(what) @@ -915,7 +952,7 @@ /mob/living/proc/check_weakness(obj/item/weapon, mob/living/attacker) if(mind && mind.has_antag_datum(/datum/antagonist/devil)) return check_devil_bane_multiplier(weapon, attacker) - return 1 + return 1 //This is not a boolean, it's the multiplier for the damage the weapon does. /mob/living/proc/check_acedia() if(mind && mind.has_objective(/datum/objective/sintouched/acedia)) @@ -946,7 +983,7 @@ /mob/living/rad_act(amount) . = ..() - if(!amount || (amount < RAD_MOB_SKIN_PROTECTION) || has_trait(TRAIT_RADIMMUNE)) + if(!amount || (amount < RAD_MOB_SKIN_PROTECTION) || HAS_TRAIT(src, TRAIT_RADIMMUNE)) return amount -= RAD_BACKGROUND_RADIATION // This will always be at least 1 because of how skin protection is calculated @@ -962,7 +999,7 @@ . = ..() if(.) return - if((magic && has_trait(TRAIT_ANTIMAGIC)) || (holy && has_trait(TRAIT_HOLY))) + if((magic && HAS_TRAIT(src, TRAIT_ANTIMAGIC)) || (holy && HAS_TRAIT(src, TRAIT_HOLY))) return src /mob/living/proc/fakefireextinguish() @@ -1051,7 +1088,7 @@ /mob/living/proc/update_mobility() var/stat_softcrit = stat == SOFT_CRIT var/stat_conscious = (stat == CONSCIOUS) || stat_softcrit - var/conscious = !IsUnconscious() && stat_conscious && !has_trait(TRAIT_DEATHCOMA) + var/conscious = !IsUnconscious() && stat_conscious && !HAS_TRAIT(src, TRAIT_DEATHCOMA) var/chokehold = pulledby && pulledby.grab_state >= GRAB_NECK var/restrained = restrained() var/has_legs = get_num_legs() @@ -1060,7 +1097,7 @@ var/stun = IsStun() var/knockdown = IsKnockdown() var/ignore_legs = get_leg_ignore() - var/canmove = !IsImmobilized() && !stun && conscious && !paralyzed && !buckled && (!stat_softcrit || !pulledby) && !chokehold && !IsFrozen() && (has_arms || ignore_legs || has_legs) + var/canmove = !IsImmobilized() && !stun && conscious && !paralyzed && !buckled && (!stat_softcrit || !pulledby) && !chokehold && !IsFrozen() && !IS_IN_STASIS(src) && (has_arms || ignore_legs || has_legs) if(canmove) mobility_flags |= MOBILITY_MOVE else @@ -1068,26 +1105,28 @@ var/canstand_involuntary = conscious && !stat_softcrit && !knockdown && !chokehold && !paralyzed && (ignore_legs || has_legs) && !(buckled && buckled.buckle_lying) var/canstand = canstand_involuntary && !resting - if(canstand) + var/should_be_lying = !canstand + if(buckled) + if(buckled.buckle_lying != -1) + should_be_lying = buckled.buckle_lying + + if(should_be_lying) + mobility_flags &= ~MOBILITY_STAND + if(buckled) + if(buckled.buckle_lying != -1) + lying = buckled.buckle_lying + if(!lying) //force them on the ground + lying = pick(90, 270) + else mobility_flags |= MOBILITY_STAND lying = 0 - if(!restrained) - mobility_flags |= (MOBILITY_UI | MOBILITY_PULL) - else - mobility_flags &= ~(MOBILITY_UI | MOBILITY_PULL) + + if(should_be_lying || restrained || incapacitated()) + mobility_flags &= ~(MOBILITY_UI|MOBILITY_PULL) else - mobility_flags &= ~(MOBILITY_UI | MOBILITY_PULL) + mobility_flags |= MOBILITY_UI|MOBILITY_PULL - var/should_be_lying = (buckled && (buckled.buckle_lying != -1)) ? buckled.buckle_lying : TRUE //make lying match buckle_lying if it's not -1, else lay down - if(should_be_lying) - mobility_flags &= ~MOBILITY_STAND - if(!lying) //force them on the ground - lying = pick(90, 270) - else - mobility_flags |= MOBILITY_STAND //important to add this back, otherwise projectiles will pass through the mob while they're upright. - if(lying) //stand them back up - lying = 0 var/canitem = !paralyzed && !stun && conscious && !chokehold && !restrained && has_arms if(canitem) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 79f7e82a7ea..ab11291d74d 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -133,11 +133,11 @@ user.start_pulling(src, supress_message = supress_message) return - if(!(status_flags & CANPUSH) || has_trait(TRAIT_PUSHIMMUNE)) + if(!(status_flags & CANPUSH) || HAS_TRAIT(src, TRAIT_PUSHIMMUNE)) to_chat(user, "[src] can't be grabbed more aggressively!") return FALSE - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to risk hurting [src]!") return FALSE grippedby(user) @@ -165,7 +165,10 @@ log_combat(user, src, "attempted to strangle", addition="kill grab") 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) + return 0 + if(user.a_intent != INTENT_GRAB) + to_chat(user, "You must be on grab intent to upgrade your grab further!") return 0 user.grab_state++ switch(user.grab_state) @@ -203,7 +206,7 @@ M.Feedstop() return // can't attack while eating! - if(has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(src, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE @@ -220,7 +223,7 @@ M.visible_message("\The [M] [M.friendly] [src]!") return FALSE else - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE @@ -239,7 +242,7 @@ return FALSE if (M.a_intent == INTENT_HARM) - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE @@ -265,7 +268,7 @@ return FALSE else - if(L.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(L, TRAIT_PACIFISM)) to_chat(L, "You don't want to hurt anyone!") return @@ -290,7 +293,7 @@ grabbedby(M) return FALSE if("harm") - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt anyone!") return FALSE M.do_attack_animation(src) @@ -310,11 +313,11 @@ 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, stun = TRUE) +/mob/living/proc/electrocute_act(shock_damage, source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0, stun = TRUE) SEND_SIGNAL(src, COMSIG_LIVING_ELECTROCUTE_ACT, shock_damage) if(tesla_shock && (flags_1 & TESLA_IGNORE_1)) return FALSE - if(has_trait(TRAIT_SHOCKIMMUNE)) + if(HAS_TRAIT(src, TRAIT_SHOCKIMMUNE)) return FALSE if(shock_damage > 0) if(!illusion) @@ -384,7 +387,7 @@ //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 || !(has_trait(TRAIT_BLIND)))) + if(get_eye_protection() < intensity && (override_blindness_check || !(HAS_TRAIT(src, TRAIT_BLIND)))) overlay_fullscreen("flash", type) addtimer(CALLBACK(src, .proc/clear_fullscreen, "flash", 25), 25) return TRUE diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 4544b52941b..70fea44ed1d 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -229,6 +229,7 @@ GLOBAL_LIST_INIT(department_radio_keys, list( // Recompose message for AI hrefs, language incomprehension. message = compose_message(speaker, message_language, raw_message, radio_freq, spans, message_mode) message = hear_intercept(message, speaker, message_language, raw_message, radio_freq, spans, message_mode) + show_message(message, 2, deaf_message, deaf_type) return message @@ -269,6 +270,7 @@ GLOBAL_LIST_INIT(department_radio_keys, list( AM.Hear(eavesrendered, src, message_language, eavesdropping, , spans, message_mode) else AM.Hear(rendered, src, message_language, message, , spans, message_mode) + SEND_GLOBAL_SIGNAL(COMSIG_GLOB_LIVING_SAY_SPECIAL, src, message) //speech bubble var/list/speech_bubble_recipients = list() @@ -297,7 +299,7 @@ GLOBAL_LIST_INIT(department_radio_keys, list( return 1 /mob/living/proc/can_speak_vocal(message) //Check AFTER handling of xeno and ling channels - if(has_trait(TRAIT_MUTE)) + if(HAS_TRAIT(src, TRAIT_MUTE)) return 0 if(is_muzzled()) @@ -323,7 +325,8 @@ GLOBAL_LIST_INIT(department_radio_keys, list( return null /mob/living/proc/treat_message(message) - if(has_trait(TRAIT_UNINTELLIGIBLE_SPEECH)) + + if(HAS_TRAIT(src, TRAIT_UNINTELLIGIBLE_SPEECH)) message = unintelligize(message) if(derpspeech) @@ -388,8 +391,8 @@ GLOBAL_LIST_INIT(department_radio_keys, list( else . = ..() -/mob/living/whisper(message, bubble_type, var/list/spans = list(), sanitize = TRUE, datum/language/language = null) - say("#[message]", bubble_type, spans, sanitize, language) +/mob/living/whisper(message, bubble_type, list/spans = list(), sanitize = TRUE, datum/language/language = null, ignore_spam = FALSE, forced = null) + say("#[message]", bubble_type, spans, sanitize, language, ignore_spam, forced) /mob/living/get_language_holder(shadow=TRUE) if(mind && shadow) @@ -398,4 +401,4 @@ GLOBAL_LIST_INIT(department_radio_keys, list( if(.) return . - . = ..() \ No newline at end of file + . = ..() diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 316c4be37ab..15ed13269a5 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -14,6 +14,7 @@ /mob/living/silicon/ai name = "AI" + real_name = "AI" icon = 'icons/mob/ai.dmi' icon_state = "ai" move_resist = MOVE_FORCE_VERY_STRONG @@ -28,6 +29,7 @@ sec_hud = DATA_HUD_SECURITY_BASIC d_hud = DATA_HUD_DIAGNOSTIC_ADVANCED mob_size = MOB_SIZE_LARGE + var/battery = 200 //emergency power if the AI's APC is off var/list/network = list("ss13") var/obj/machinery/camera/current var/list/connected_robots = list() @@ -40,7 +42,6 @@ var/obj/mecha/controlled_mech //For controlled_mech a mech, to determine whether to relaymove or use the AI eye. var/radio_enabled = TRUE //Determins if a carded AI can speak with its built in radio or not. radiomod = ";" //AIs will, by default, state their laws on the internal radio. - var/obj/item/pda/ai/aiPDA var/obj/item/multitool/aiMulti var/mob/living/simple_animal/bot/Bot var/tracking = FALSE //this is 1 if the AI is currently tracking somebody, but the track has not yet been completed. @@ -93,6 +94,9 @@ var/max_multicams = 6 var/display_icon_override + var/list/cam_hotkeys = new/list(9) + var/cam_prev + /mob/living/silicon/ai/Initialize(mapload, datum/ai_laws/L, mob/target_ai) . = ..() if(!target_ai) //If there is no player/brain inside. @@ -125,7 +129,8 @@ job = "AI" create_eye() - apply_pref_name("ai") + if(client) + apply_pref_name("ai",client) set_core_display_icon() @@ -138,12 +143,12 @@ verbs += /mob/living/silicon/ai/proc/show_laws_verb aiPDA = new/obj/item/pda/ai(src) - aiPDA.owner = name + aiPDA.owner = real_name aiPDA.ownjob = "AI" - aiPDA.name = name + " (" + aiPDA.ownjob + ")" + aiPDA.name = real_name + " (" + aiPDA.ownjob + ")" aiMulti = new(src) - radio = new /obj/item/radio/headset/ai(src) + radio = new /obj/item/radio/headset/silicon/ai(src) aicamera = new/obj/item/camera/siliconcam/ai_camera(src) deploy_action.Grant(src) @@ -160,6 +165,25 @@ builtInCamera = new (src) builtInCamera.network = list("ss13") +/mob/living/silicon/ai/key_down(_key, client/user) + if(findtext(_key, "numpad")) //if it's a numpad number, we can convert it to just the number + _key = _key[7] //strings, lists, same thing really + switch(_key) + if("`", "0") + if(cam_prev) + eyeobj.setLoc(cam_prev) + return + if("1", "2", "3", "4", "5", "6", "7", "8", "9") + _key = text2num(_key) + if(client.keys_held["Ctrl"]) //do we assign a new hotkey? + cam_hotkeys[_key] = eyeobj.loc + to_chat(src, "Location saved to Camera Group [_key].") + return + if(cam_hotkeys[_key]) //if this is false, no hotkey for this slot exists. + cam_prev = eyeobj.loc + eyeobj.setLoc(cam_hotkeys[_key]) + return + return ..() /mob/living/silicon/ai/Destroy() GLOB.ai_list -= src @@ -209,6 +233,8 @@ if(statpanel("Status")) if(!stat) stat(null, text("System integrity: [(health+100)/2]%")) + if(isturf(loc)) //only show if we're "in" a core + stat(null, text("Backup Power: [battery/2]%")) stat(null, text("Connected cyborgs: [connected_robots.len]")) for(var/mob/living/silicon/robot/R in connected_robots) var/robot_status = "Nominal" @@ -258,15 +284,6 @@ viewalerts = 1 src << browse(dat, "window=aialerts&can_close=0") -/mob/living/silicon/ai/proc/ai_roster() - var/dat = "Crew RosterCrew Roster:

" - - dat += GLOB.data_core.get_manifest() - dat += "" - - src << browse(dat, "window=airoster") - onclose(src, "airoster") - /mob/living/silicon/ai/proc/ai_call_shuttle() if(control_disabled) to_chat(usr, "Wireless control is disabled!") @@ -292,7 +309,11 @@ var/turf/target = get_turf(A) if (.) return - if ((ai.z != target.z) && !is_station_level(ai)) + + if(!target) + return + + if ((ai.z != target.z) && !is_station_level(ai.z)) return FALSE if (istype(loc, /obj/item/aicard)) @@ -310,8 +331,14 @@ set name = "Toggle Floor Bolts" if(!isturf(loc)) // if their location isn't a turf return // stop - if(incapacitated()) + if(stat == DEAD) return + if(incapacitated()) + if(battery < 50) + to_chat(src, "Insufficient backup power!") + return + battery = battery - 50 + to_chat(src, "You route power from your backup battery to move the bolts.") var/is_anchored = FALSE if(move_resist == MOVE_FORCE_VERY_STRONG) move_resist = MOVE_FORCE_NORMAL @@ -785,7 +812,8 @@ to_chat(user, "No intelligence patterns detected." ) return ShutOffDoomsdayDevice() - new /obj/structure/AIcore/deactivated(loc)//Spawns a deactivated terminal at AI location. + var/obj/structure/AIcore/new_core = new /obj/structure/AIcore/deactivated(loc)//Spawns a deactivated terminal at AI location. + new_core.circuit.battery = battery ai_restore_power()//So the AI initially has power. control_disabled = TRUE //Can't control things remotely if you're stuck in a card! radio_enabled = FALSE //No talking on the built-in radio for you either! @@ -797,7 +825,7 @@ /mob/living/silicon/ai/can_buckle() return 0 -/mob/living/silicon/ai/incapacitated() +/mob/living/silicon/ai/incapacitated(ignore_restraints = FALSE, ignore_grab = FALSE, check_immobilized = FALSE) if(aiRestorePowerRoutine) return TRUE return ..() @@ -906,10 +934,10 @@ if(!istype(apc) || QDELETED(apc) || apc.stat & BROKEN) to_chat(src, "Hack aborted. The designated APC no longer exists on the power network.") - playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 50, 1) + playsound(get_turf(src), 'sound/machines/buzz-two.ogg', 50, 1, ignore_walls = FALSE) else if(apc.aidisabled) to_chat(src, "Hack aborted. \The [apc] is no longer responding to our systems.") - playsound(get_turf(src), 'sound/machines/buzz-sigh.ogg', 50, 1) + playsound(get_turf(src), 'sound/machines/buzz-sigh.ogg', 50, 1, ignore_walls = FALSE) else malf_picker.processing_time += 10 @@ -918,7 +946,7 @@ apc.locked = TRUE apc.coverlocked = TRUE - playsound(get_turf(src), 'sound/machines/ding.ogg', 50, 1) + playsound(get_turf(src), 'sound/machines/ding.ogg', 50, 1, ignore_walls = FALSE) to_chat(src, "Hack complete. \The [apc] is now under your exclusive control.") apc.update_icon() diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm index ef963075fc0..d655af4e021 100644 --- a/code/modules/mob/living/silicon/ai/death.dm +++ b/code/modules/mob/living/silicon/ai/death.dm @@ -15,6 +15,8 @@ cameraFollow = null anchored = FALSE //unbolt floorbolts + move_resist = MOVE_FORCE_NORMAL + if(eyeobj) eyeobj.setLoc(get_turf(src)) set_eyeobj_visible(FALSE) diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index 15a04235cc0..fb7aa030e09 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -28,11 +28,15 @@ // Handle power damage (oxy) if(aiRestorePowerRoutine) // Lost power - adjustOxyLoss(1) + if (!battery) + to_chat(src, "Your backup battery's output drops below usable levels. It takes only a moment longer for your systems to fail, corrupted and unusable.") + adjustOxyLoss(200) + else + battery -- else // Gain Power - if(getOxyLoss()) - adjustOxyLoss(-1) + if (battery < 200) + battery ++ if(!lacks_power()) var/area/home = get_area(src) diff --git a/code/modules/mob/living/silicon/damage_procs.dm b/code/modules/mob/living/silicon/damage_procs.dm index 1190a00645e..50fd975cc04 100644 --- a/code/modules/mob/living/silicon/damage_procs.dm +++ b/code/modules/mob/living/silicon/damage_procs.dm @@ -1,16 +1,17 @@ -/mob/living/silicon/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = FALSE) +/mob/living/silicon/apply_damage(damage = 0,damagetype = BRUTE, def_zone = null, blocked = FALSE, forced = FALSE) var/hit_percent = (100-blocked)/100 - if(!damage || (hit_percent <= 0)) + if((!damage || (!forced && hit_percent <= 0))) return 0 + var/damage_amount = forced ? damage : damage * hit_percent switch(damagetype) if(BRUTE) - adjustBruteLoss(damage * hit_percent) + adjustBruteLoss(damage_amount, forced = forced) if(BURN) - adjustFireLoss(damage * hit_percent) + adjustFireLoss(damage_amount, forced = forced) if(OXY) - if(damage < 0) //we shouldn't be taking oxygen damage through this proc, but we'll let it heal. - adjustOxyLoss(damage * hit_percent) + if(damage < 0 || forced) //we shouldn't be taking oxygen damage through this proc, but we'll let it heal. + adjustOxyLoss(damage_amount, forced = forced) return 1 @@ -29,10 +30,10 @@ /mob/living/silicon/setCloneLoss(amount, updating_health = TRUE, forced = FALSE) return FALSE -/mob/living/silicon/adjustStaminaLoss(amount, updating_stamina = 1)//immune to stamina damage. +/mob/living/silicon/adjustStaminaLoss(amount, updating_health = TRUE, forced = FALSE)//immune to stamina damage. return FALSE -/mob/living/silicon/setStaminaLoss(amount, updating_stamina = 1) +/mob/living/silicon/setStaminaLoss(amount, updating_health = TRUE) return FALSE /mob/living/silicon/adjustBrainLoss(amount) diff --git a/code/modules/mob/living/silicon/login.dm b/code/modules/mob/living/silicon/login.dm index 82c1435344b..f3ce675a04f 100644 --- a/code/modules/mob/living/silicon/login.dm +++ b/code/modules/mob/living/silicon/login.dm @@ -5,3 +5,11 @@ if(rev) rev.remove_revolutionary(TRUE) ..() + + +/mob/living/silicon/auto_deadmin_on_login() + if(!client?.holder) + return TRUE + if(CONFIG_GET(flag/auto_deadmin_silicons) || (client.prefs?.toggles & DEADMIN_POSITION_SILICON)) + return client.holder.auto_deadmin() + return ..() diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index da2960cfaf8..c2bf28280d8 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -1,291 +1,298 @@ -/mob/living/silicon/pai - name = "pAI" - icon = 'icons/mob/pai.dmi' - icon_state = "repairbot" - mouse_opacity = MOUSE_OPACITY_ICON - density = FALSE - 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 - layer = BELOW_MOB_LAYER - can_be_held = TRUE - var/network = "ss13" - var/obj/machinery/camera/current = null - - var/ram = 100 // Used as currency to purchase different abilities - var/list/software = list() - var/userDNA // The DNA string of our assigned user - var/obj/item/paicard/card // The card we inhabit - var/hacking = FALSE //Are we hacking a door? - - var/speakStatement = "states" - var/speakExclamation = "declares" - var/speakDoubleExclamation = "alarms" - var/speakQuery = "queries" - - var/obj/item/pai_cable/cable // The cable we produce and use when door or camera jacking - - var/master // Name of the one who commands us - var/master_dna // DNA string for owner verification - -// Various software-specific vars - - var/temp // General error reporting text contained here will typically be shown once and cleared - var/screen // Which screen our main window displays - var/subscreen // Which specific function of the main screen is being displayed - - var/obj/item/pda/ai/pai/pda = null - - var/secHUD = 0 // Toggles whether the Security HUD is active or not - var/medHUD = 0 // Toggles whether the Medical HUD is active or not - - var/datum/data/record/medicalActive1 // Datacore record declarations for record software - var/datum/data/record/medicalActive2 - - var/datum/data/record/securityActive1 // Could probably just combine all these into one - var/datum/data/record/securityActive2 - - var/obj/machinery/door/hackdoor // The airlock being hacked - var/hackprogress = 0 // Possible values: 0 - 100, >= 100 means the hack is complete and will be reset upon next check - - var/obj/item/integrated_signaler/signaler // AI's signaller - - var/obj/item/instrument/recorder/internal_instrument - - var/holoform = FALSE - var/canholo = TRUE - var/obj/item/card/id/access_card = null - var/chassis = "repairbot" - var/list/possible_chassis = list("cat" = TRUE, "mouse" = TRUE, "monkey" = TRUE, "corgi" = FALSE, "fox" = FALSE, "repairbot" = TRUE, "rabbit" = TRUE) //assoc value is whether it can be picked up. - var/static/item_head_icon = 'icons/mob/pai_item_head.dmi' - var/static/item_lh_icon = 'icons/mob/pai_item_lh.dmi' - var/static/item_rh_icon = 'icons/mob/pai_item_rh.dmi' - - var/emitterhealth = 20 - var/emittermaxhealth = 20 - var/emitterregen = 0.25 - var/emittercd = 50 - var/emitteroverloadcd = 100 - var/emittersemicd = FALSE - - var/overload_ventcrawl = 0 - var/overload_bulletblock = 0 //Why is this a good idea? - var/overload_maxhealth = 0 - var/silent = FALSE - var/brightness_power = 5 - -/mob/living/silicon/pai/can_unbuckle() - return FALSE - -/mob/living/silicon/pai/can_buckle() - return FALSE - -/mob/living/silicon/pai/Destroy() - QDEL_NULL(internal_instrument) - if (loc != card) - card.forceMove(drop_location()) - card.pai = null - card.cut_overlays() - card.add_overlay("pai-off") - GLOB.pai_list -= src - return ..() - -/mob/living/silicon/pai/Initialize() - var/obj/item/paicard/P = loc - START_PROCESSING(SSfastprocess, src) - GLOB.pai_list += src - make_laws() - if(!istype(P)) //when manually spawning a pai, we create a card to put it into. - var/newcardloc = P - P = new /obj/item/paicard(newcardloc) - P.setPersonality(src) - forceMove(P) - card = P - signaler = new(src) - if(!radio) - radio = new /obj/item/radio(src) - - //PDA - pda = new(src) - spawn(5) - pda.ownjob = "pAI Messenger" - pda.owner = text("[]", src) - pda.name = pda.owner + " (" + pda.ownjob + ")" - - . = ..() - - var/datum/action/innate/pai/software/SW = new - 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 - - var/datum/action/language_menu/ALM = new - SW.Grant(src) - AS.Grant(src) - AC.Grant(src) - AR.Grant(src) - AL.Grant(src) - ALM.Grant(src) - emittersemicd = TRUE - addtimer(CALLBACK(src, .proc/emittercool), 600) - -/mob/living/silicon/pai/Life() - if(hacking) - process_hack() - return ..() - -/mob/living/silicon/pai/proc/process_hack() - - if(cable && cable.machine && istype(cable.machine, /obj/machinery/door) && cable.machine == hackdoor && get_dist(src, hackdoor) <= 1) - hackprogress = CLAMP(hackprogress + 4, 0, 100) - else - temp = "Door Jack: Connection to airlock has been lost. Hack aborted." - hackprogress = 0 - hacking = FALSE - hackdoor = null - return - if(screen == "doorjack" && subscreen == 0) // Update our view, if appropriate - paiInterface() - if(hackprogress >= 100) - hackprogress = 0 - var/obj/machinery/door/D = cable.machine - D.open() - hacking = FALSE - -/mob/living/silicon/pai/make_laws() - laws = new /datum/ai_laws/pai() - return TRUE - -/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)]")) - else - stat(null, text("Systems nonfunctional")) - -/mob/living/silicon/pai/restrained(ignore_grab) - . = FALSE - -// See software.dm for Topic() - -/mob/living/silicon/pai/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE, no_tk=FALSE) - if(be_close && !in_range(M, src)) - to_chat(src, "You are too far away!") - return FALSE - return TRUE - -/mob/proc/makePAI(delold) - var/obj/item/paicard/card = new /obj/item/paicard(get_turf(src)) - var/mob/living/silicon/pai/pai = new /mob/living/silicon/pai(card) - pai.key = key - pai.name = name - card.setPersonality(pai) - if(delold) - qdel(src) - -/datum/action/innate/pai - name = "PAI Action" - icon_icon = 'icons/mob/actions/actions_silicon.dmi' - var/mob/living/silicon/pai/P - -/datum/action/innate/pai/Trigger() - if(!ispAI(owner)) - return 0 - P = owner - -/datum/action/innate/pai/software - name = "Software Interface" - button_icon_state = "pai" - background_icon_state = "bg_tech" - -/datum/action/innate/pai/software/Trigger() - ..() - P.paiInterface() - -/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 Appearance 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" - icon_icon = 'icons/mob/actions/actions_spells.dmi' - 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(!.) - add_movespeed_modifier(MOVESPEED_ID_PAI_SPACEWALK_SPEEDMOD, TRUE, 100, multiplicative_slowdown = 2) - return TRUE - remove_movespeed_modifier(MOVESPEED_ID_PAI_SPACEWALK_SPEEDMOD, TRUE) - return TRUE - -/mob/living/silicon/pai/examine(mob/user) - ..() - to_chat(user, "A personal AI in holochassis mode. Its master ID string seems to be [master].") - -/mob/living/silicon/pai/Life() - if(stat == DEAD) - return - if(cable) - if(get_dist(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) - . = ..() - -/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) +/mob/living/silicon/pai + name = "pAI" + icon = 'icons/mob/pai.dmi' + icon_state = "repairbot" + mouse_opacity = MOUSE_OPACITY_ICON + density = FALSE + hud_type = /datum/hud/pai + 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 + layer = BELOW_MOB_LAYER + can_be_held = TRUE + var/network = "ss13" + var/obj/machinery/camera/current = null + + var/ram = 100 // Used as currency to purchase different abilities + var/list/software = list() + var/userDNA // The DNA string of our assigned user + var/obj/item/paicard/card // The card we inhabit + var/hacking = FALSE //Are we hacking a door? + + var/speakStatement = "states" + var/speakExclamation = "declares" + var/speakDoubleExclamation = "alarms" + var/speakQuery = "queries" + + var/obj/item/pai_cable/cable // The cable we produce and use when door or camera jacking + + var/master // Name of the one who commands us + var/master_dna // DNA string for owner verification + +// Various software-specific vars + + var/temp // General error reporting text contained here will typically be shown once and cleared + var/screen // Which screen our main window displays + var/subscreen // Which specific function of the main screen is being displayed + + var/secHUD = 0 // Toggles whether the Security HUD is active or not + var/medHUD = 0 // Toggles whether the Medical HUD is active or not + + var/datum/data/record/medicalActive1 // Datacore record declarations for record software + var/datum/data/record/medicalActive2 + + var/datum/data/record/securityActive1 // Could probably just combine all these into one + var/datum/data/record/securityActive2 + + var/obj/machinery/door/hackdoor // The airlock being hacked + var/hackprogress = 0 // Possible values: 0 - 100, >= 100 means the hack is complete and will be reset upon next check + + var/obj/item/integrated_signaler/signaler // AI's signaller + + var/obj/item/instrument/piano_synth/internal_instrument + var/obj/machinery/newscaster //pAI Newscaster + var/obj/item/healthanalyzer/hostscan //pAI healthanalyzer + + var/encryptmod = FALSE + var/holoform = FALSE + var/canholo = TRUE + var/can_transmit = TRUE + var/can_receive = TRUE + var/obj/item/card/id/access_card = null + var/chassis = "repairbot" + var/list/possible_chassis = list("cat" = TRUE, "mouse" = TRUE, "monkey" = TRUE, "corgi" = FALSE, "fox" = FALSE, "repairbot" = TRUE, "rabbit" = TRUE) //assoc value is whether it can be picked up. + var/static/item_head_icon = 'icons/mob/pai_item_head.dmi' + var/static/item_lh_icon = 'icons/mob/pai_item_lh.dmi' + var/static/item_rh_icon = 'icons/mob/pai_item_rh.dmi' + + var/emitterhealth = 20 + var/emittermaxhealth = 20 + var/emitterregen = 0.25 + var/emittercd = 50 + var/emitteroverloadcd = 100 + var/emittersemicd = FALSE + + var/overload_ventcrawl = 0 + var/overload_bulletblock = 0 //Why is this a good idea? + var/overload_maxhealth = 0 + var/silent = FALSE + var/brightness_power = 5 + +/mob/living/silicon/pai/can_unbuckle() + return FALSE + +/mob/living/silicon/pai/can_buckle() + return FALSE + +/mob/living/silicon/pai/Destroy() + QDEL_NULL(internal_instrument) + if (loc != card) + card.forceMove(drop_location()) + card.pai = null + card.cut_overlays() + card.add_overlay("pai-off") + GLOB.pai_list -= src + return ..() + +/mob/living/silicon/pai/Initialize() + var/obj/item/paicard/P = loc + START_PROCESSING(SSfastprocess, src) + GLOB.pai_list += src + make_laws() + if(!istype(P)) //when manually spawning a pai, we create a card to put it into. + var/newcardloc = P + P = new /obj/item/paicard(newcardloc) + P.setPersonality(src) + forceMove(P) + card = P + job = "Personal AI" + signaler = new(src) + hostscan = new /obj/item/healthanalyzer(src) + if(!radio) + radio = new /obj/item/radio/headset/silicon/pai(src) + newscaster = new /obj/machinery/newscaster(src) + if(!aicamera) + aicamera = new /obj/item/camera/siliconcam/ai_camera(src) + aicamera.flash_enabled = TRUE + + //PDA + aiPDA = new/obj/item/pda/ai(src) + aiPDA.owner = real_name + aiPDA.ownjob = "pAI Messenger" + aiPDA.name = real_name + " (" + aiPDA.ownjob + ")" + + . = ..() + + emittersemicd = TRUE + addtimer(CALLBACK(src, .proc/emittercool), 600) + +/mob/living/silicon/pai/Life() + if(hacking) + process_hack() + return ..() + +/mob/living/silicon/pai/proc/process_hack() + + if(cable && cable.machine && istype(cable.machine, /obj/machinery/door) && cable.machine == hackdoor && get_dist(src, hackdoor) <= 1) + hackprogress = CLAMP(hackprogress + 4, 0, 100) + else + temp = "Door Jack: Connection to airlock has been lost. Hack aborted." + hackprogress = 0 + hacking = FALSE + hackdoor = null + return + if(screen == "doorjack" && subscreen == 0) // Update our view, if appropriate + paiInterface() + if(hackprogress >= 100) + hackprogress = 0 + var/obj/machinery/door/D = cable.machine + D.open() + hacking = FALSE + +/mob/living/silicon/pai/make_laws() + laws = new /datum/ai_laws/pai() + return TRUE + +/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)]")) + else + stat(null, text("Systems nonfunctional")) + +/mob/living/silicon/pai/restrained(ignore_grab) + . = FALSE + +// See software.dm for Topic() + +/mob/living/silicon/pai/canUseTopic(atom/movable/M, be_close=FALSE, no_dextery=FALSE, no_tk=FALSE) + if(be_close && !in_range(M, src)) + to_chat(src, "You are too far away!") + return FALSE + return TRUE + +/mob/proc/makePAI(delold) + var/obj/item/paicard/card = new /obj/item/paicard(get_turf(src)) + var/mob/living/silicon/pai/pai = new /mob/living/silicon/pai(card) + pai.key = key + pai.name = name + card.setPersonality(pai) + if(delold) + qdel(src) + +/datum/action/innate/pai + name = "PAI Action" + icon_icon = 'icons/mob/actions/actions_silicon.dmi' + var/mob/living/silicon/pai/P + +/datum/action/innate/pai/Trigger() + if(!ispAI(owner)) + return 0 + P = owner + +/datum/action/innate/pai/software + name = "Software Interface" + button_icon_state = "pai" + background_icon_state = "bg_tech" + +/datum/action/innate/pai/software/Trigger() + ..() + P.paiInterface() + +/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 Appearance 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" + icon_icon = 'icons/mob/actions/actions_spells.dmi' + 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(!.) + add_movespeed_modifier(MOVESPEED_ID_PAI_SPACEWALK_SPEEDMOD, TRUE, 100, multiplicative_slowdown = 2) + return TRUE + remove_movespeed_modifier(MOVESPEED_ID_PAI_SPACEWALK_SPEEDMOD, TRUE) + return TRUE + +/mob/living/silicon/pai/examine(mob/user) + ..() + to_chat(user, "A personal AI in holochassis mode. Its master ID string seems to be [master].") + +/mob/living/silicon/pai/Life() + if(stat == DEAD) + return + if(cable) + if(get_dist(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) + . = ..() + +/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) + +/obj/item/paicard/attackby(obj/item/W, mob/user, params) + ..() + user.set_machine(src) + if(pai.encryptmod == TRUE) + if(W.tool_behaviour == TOOL_SCREWDRIVER) + pai.radio.attackby(W, user, params) + else if(istype(W, /obj/item/encryptionkey)) + pai.radio.attackby(W, user, params) + else + to_chat(user, "Encryption Key ports not configured.") diff --git a/code/modules/mob/living/silicon/pai/pai_defense.dm b/code/modules/mob/living/silicon/pai/pai_defense.dm index 50c7c0416f0..f3be04599f0 100644 --- a/code/modules/mob/living/silicon/pai/pai_defense.dm +++ b/code/modules/mob/living/silicon/pai/pai_defense.dm @@ -81,8 +81,11 @@ /mob/living/silicon/pai/adjustCloneLoss(amount, updating_health = TRUE, forced = FALSE) return FALSE -/mob/living/silicon/pai/adjustStaminaLoss(amount) - take_holo_damage(amount & 0.25) +/mob/living/silicon/pai/adjustStaminaLoss(amount, updating_health, forced = FALSE) + if(forced) + take_holo_damage(amount) + else + take_holo_damage(amount * 0.25) /mob/living/silicon/pai/adjustBrainLoss(amount) Paralyze(amount * 0.2) @@ -114,7 +117,7 @@ /mob/living/silicon/pai/setBrainLoss() return FALSE -/mob/living/silicon/pai/setStaminaLoss() +/mob/living/silicon/pai/setStaminaLoss(amount, updating_health = TRUE) return FALSE /mob/living/silicon/pai/setToxLoss() diff --git a/code/modules/mob/living/silicon/pai/software.dm b/code/modules/mob/living/silicon/pai/software.dm index 10ecb9299b9..0a4f20096a9 100644 --- a/code/modules/mob/living/silicon/pai/software.dm +++ b/code/modules/mob/living/silicon/pai/software.dm @@ -1,5 +1,4 @@ // TODO: -// - Additional radio modules // - Potentially roll HUDs and Records into one // - Shock collar/lock system for prisoner pAIs? // - Put cable in user's hand instead of on the ground @@ -7,20 +6,30 @@ /mob/living/silicon/pai/var/list/available_software = list( + //Nightvision + //T-Ray + //radiation eyes + //chem goggs + //mesons "crew manifest" = 5, "digital messenger" = 5, - "medical records" = 15, - "security records" = 15, - //"camera jack" = 10, - "door jack" = 30, "atmosphere sensor" = 5, + "photography module" = 5, + "remote signaller" = 10, + "medical records" = 10, + "security records" = 10, + "camera zoom" = 10, + "host scan" = 10, + //"camera jack" = 10, //"heartbeat sensor" = 10, - "security HUD" = 20, + //"projection array" = 15, "medical HUD" = 20, - "universal translator" = 35, - //"projection array" = 15 - "remote signaller" = 5, - "loudness booster" = 25 + "security HUD" = 20, + "loudness booster" = 20, + "newscaster" = 20, + "door jack" = 25, + "encryption keys" = 25, + "universal translator" = 35 ) /mob/living/silicon/pai/proc/paiInterface() @@ -51,6 +60,8 @@ left_part = softwareMedicalRecord() if("securityrecord") left_part = softwareSecurityRecord() + if("encryptionkeys") + left_part = softwareEncryptionKeys() if("translator") left_part = softwareTranslator() if("atmosensor") @@ -67,6 +78,9 @@ left_part = softwareSignal() if("loudness") left_part = softwareLoudness() + if("hostscan") + left_part = softwareHostScan() + //usr << browse_rsc('windowbak.png') // This has been moved to the mob's Login() proc @@ -108,172 +122,184 @@
"} //" - usr << browse(dat, "window=pai;size=640x480;border=0;can_close=1;can_resize=1;can_minimize=1;titlebar=1") - onclose(usr, "pai") + src << browse(dat, "window=pai;size=640x480;border=0;can_close=1;can_resize=1;can_minimize=1;titlebar=1") + onclose(src, "pai") temp = null - return - - /mob/living/silicon/pai/Topic(href, href_list) - ..() + if(..()) + return var/soft = href_list["software"] var/sub = href_list["sub"] if(soft) screen = soft - if(sub) - subscreen = text2num(sub) - switch(soft) - // Purchasing new software - if("buy") - if(subscreen == 1) - var/target = href_list["buy"] - if(available_software.Find(target) && !software.Find(target)) - var/cost = available_software[target] - if(ram >= cost) - software.Add(target) - ram -= cost + if(sub) + subscreen = text2num(sub) + switch(soft) + if("buy") // Purchasing new software + if(subscreen == 1) + var/target = href_list["buy"] + if(available_software.Find(target) && !software.Find(target)) + var/cost = available_software[target] + if(ram >= cost) + software.Add(target) + ram -= cost + var/datum/hud/pai/pAIhud = hud_used + pAIhud?.update_software_buttons() + else + temp = "Insufficient RAM available." else - temp = "Insufficient RAM available." - else - temp = "Trunk \"[target]\" not found." - - // Configuring onboard radio - if("radio") - 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") - var/pID = 1 - - switch(newImage) - if("Happy") - pID = 1 - if("Cat") - pID = 2 - if("Extremely Happy") - pID = 3 - if("Face") - pID = 4 - if("Laugh") - pID = 5 - if("Off") - pID = 6 - if("Sad") - pID = 7 - if("Angry") - pID = 8 - if("What") - pID = 9 - if("Null") - pID = 10 - card.setEmotion(pID) - - if("signaller") - - if(href_list["send"]) - signaler.send_activation() - audible_message("[icon2html(src, hearers(src))] *beep* *beep* *beep*") - playsound(src, 'sound/machines/triple_beep.ogg', ASSEMBLY_BEEP_VOLUME, TRUE) - - if(href_list["freq"]) - var/new_frequency = (signaler.frequency + text2num(href_list["freq"])) - if(new_frequency < MIN_FREE_FREQ || new_frequency > MAX_FREE_FREQ) - new_frequency = sanitize_frequency(new_frequency) - signaler.set_frequency(new_frequency) - - if(href_list["code"]) - signaler.code += text2num(href_list["code"]) - signaler.code = round(signaler.code) - signaler.code = min(100, signaler.code) - signaler.code = max(1, signaler.code) + temp = "Trunk \"[target]\" not found." + if("radio") // Configuring onboard radio + radio.attack_self(src) - if("directive") - if(href_list["getdna"]) - var/mob/living/M = card.loc - var/count = 0 - while(!isliving(M)) - 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++ - if(count >= 6) + if("image") // Set pAI card display face + var/newImage = input("Select your new display image.", "Display Image", "Happy") in list("Happy", "Cat", "Extremely Happy", "Face", "Laugh", "Off", "Sad", "Angry", "What") + var/pID = 1 + + switch(newImage) + if("Happy") + pID = 1 + if("Cat") + pID = 2 + if("Extremely Happy") + pID = 3 + if("Face") + pID = 4 + if("Laugh") + pID = 5 + if("Off") + pID = 6 + if("Sad") + pID = 7 + if("Angry") + pID = 8 + if("What") + pID = 9 + if("Null") + pID = 10 + card.setEmotion(pID) + + if("news") + newscaster.ui_interact(src) + + if("camzoom") + aicamera.adjust_zoom(usr) + + if("signaller") + if(href_list["send"]) + signaler.send_activation() + audible_message("[icon2html(src, hearers(src))] *beep* *beep* *beep*") + playsound(src, 'sound/machines/triple_beep.ogg', ASSEMBLY_BEEP_VOLUME, TRUE) + + if(href_list["freq"]) + var/new_frequency = (signaler.frequency + text2num(href_list["freq"])) + if(new_frequency < MIN_FREE_FREQ || new_frequency > MAX_FREE_FREQ) + new_frequency = sanitize_frequency(new_frequency) + signaler.set_frequency(new_frequency) + + if(href_list["code"]) + signaler.code += text2num(href_list["code"]) + signaler.code = round(signaler.code) + signaler.code = min(100, signaler.code) + signaler.code = max(1, signaler.code) + + if("directive") + if(href_list["getdna"]) + if(iscarbon(card.loc)) + CheckDNA(card.loc, src) //you should only be able to check when directly in hand, muh immersions? + else to_chat(src, "You are not being carried by anyone!") - return 0 - spawn CheckDNA(M, src) + return 0 // FALSE ? If you return here you won't call paiinterface() below - if("pdamessage") - if(!isnull(pda)) - if(href_list["toggler"]) - pda.toff = !pda.toff - else if(href_list["ringer"]) - pda.silent = !pda.silent - else if(href_list["target"]) - if(silent) - return alert("Communications circuits remain uninitialized.") + if("pdamessage") + if(!isnull(aiPDA)) + if(href_list["toggler"]) + aiPDA.toff = !aiPDA.toff + else if(href_list["ringer"]) + aiPDA.silent = !aiPDA.silent + else if(href_list["target"]) + if(silent) + return alert("Communications circuits remain uninitialized.") + var/target = locate(href_list["target"]) in GLOB.PDAs + aiPDA.create_message(src, target) - var/target = locate(href_list["target"]) in GLOB.PDAs - pda.create_message(src, target) + if("medicalrecord") // Accessing medical records + if(subscreen == 1) + medicalActive1 = find_record("id", href_list["med_rec"], GLOB.data_core.general) + if(medicalActive1) + medicalActive2 = find_record("id", href_list["med_rec"], GLOB.data_core.medical) + if(!medicalActive2) + medicalActive1 = null + temp = "Unable to locate requested security record. Record may have been deleted, or never have existed." - // Accessing medical records - if("medicalrecord") - if(subscreen == 1) - medicalActive1 = find_record("id", href_list["med_rec"], GLOB.data_core.general) - if(medicalActive1) - medicalActive2 = find_record("id", href_list["med_rec"], GLOB.data_core.medical) - if(!medicalActive2) - medicalActive1 = null - temp = "Unable to locate requested security record. Record may have been deleted, or never have existed." + if("securityrecord") + if(subscreen == 1) + securityActive1 = find_record("id", href_list["sec_rec"], GLOB.data_core.general) + if(securityActive1) + securityActive2 = find_record("id", href_list["sec_rec"], GLOB.data_core.security) + if(!securityActive2) + securityActive1 = null + temp = "Unable to locate requested security record. Record may have been deleted, or never have existed." - if("securityrecord") - if(subscreen == 1) - securityActive1 = find_record("id", href_list["sec_rec"], GLOB.data_core.general) - if(securityActive1) - securityActive2 = find_record("id", href_list["sec_rec"], GLOB.data_core.security) - if(!securityActive2) - securityActive1 = null - temp = "Unable to locate requested security record. Record may have been deleted, or never have existed." - if("securityhud") - if(href_list["toggle"]) - secHUD = !secHUD - if(secHUD) - var/datum/atom_hud/sec = GLOB.huds[sec_hud] - sec.add_hud_to(src) - else - var/datum/atom_hud/sec = GLOB.huds[sec_hud] - sec.remove_hud_from(src) - if("medicalhud") - if(href_list["toggle"]) - medHUD = !medHUD - if(medHUD) - var/datum/atom_hud/med = GLOB.huds[med_hud] - med.add_hud_to(src) - else - var/datum/atom_hud/med = GLOB.huds[med_hud] - med.remove_hud_from(src) - if("translator") - if(href_list["toggle"]) - grant_all_languages(TRUE) - // this is PERMAMENT. - if("doorjack") - if(href_list["jack"]) - if(cable && cable.machine) - hackdoor = cable.machine - hackloop() - if(href_list["cancel"]) - hackdoor = null - if(href_list["cable"]) - var/turf/T = get_turf(loc) - cable = new /obj/item/pai_cable(T) - T.visible_message("A port on [src] opens to reveal [cable], which promptly falls to the floor.", "You hear the soft click of something light and hard falling to the ground.") - if("loudness") - internal_instrument.interact(src) + if("securityhud") + if(href_list["toggle"]) + secHUD = !secHUD + if(secHUD) + var/datum/atom_hud/sec = GLOB.huds[sec_hud] + sec.add_hud_to(src) + else + var/datum/atom_hud/sec = GLOB.huds[sec_hud] + sec.remove_hud_from(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 - paiInterface() // So we'll just call the update directly rather than doing some default checks - return + if("medicalhud") + if(href_list["toggle"]) + medHUD = !medHUD + if(medHUD) + var/datum/atom_hud/med = GLOB.huds[med_hud] + med.add_hud_to(src) + else + var/datum/atom_hud/med = GLOB.huds[med_hud] + med.remove_hud_from(src) + + if("hostscan") + if(href_list["toggle"]) + var/mob/living/silicon/pai/pAI = usr + pAI.hostscan.attack_self(usr) + if(href_list["toggle2"]) + var/mob/living/silicon/pai/pAI = usr + pAI.hostscan.toggle_mode() + + if("encryptionkeys") + if(href_list["toggle"]) + encryptmod = TRUE + + if("translator") + if(href_list["toggle"]) + grant_all_languages(TRUE) + // this is PERMAMENT. + + if("doorjack") + if(href_list["jack"]) + if(cable && cable.machine) + hackdoor = cable.machine + hackloop() + if(href_list["cancel"]) + hackdoor = null + if(href_list["cable"]) + var/turf/T = get_turf(loc) + cable = new /obj/item/pai_cable(T) + T.visible_message("A port on [src] opens to reveal [cable], which promptly falls to the floor.", "You hear the soft click of something light and hard falling to the ground.") + + if("loudness") + if(subscreen == 1) // Open Instrument + internal_instrument.interact(src) + if(subscreen == 2) // Change Instrument type + internal_instrument.selectInstrument() + + paiInterface() // MENUS @@ -295,6 +321,8 @@ dat += "Digital Messenger
" if(s == "crew manifest") dat += "Crew Manifest
" + if(s == "host scan") + dat += "Host Health Scan" if(s == "medical records") dat += "Medical Records
" if(s == "security records") @@ -310,6 +338,8 @@ // Advanced dat += "Advanced
" for(var/s in software) + if(s == "camera zoom") + dat += "Adjust Camera Zoom
" if(s == "atmosphere sensor") dat += "Atmospheric Sensor
" if(s == "heartbeat sensor") @@ -318,6 +348,8 @@ dat += "Facial Recognition Suite[(secHUD) ? " On" : " Off"]
" if(s == "medical HUD") dat += "Medical Analysis Suite[(medHUD) ? " On" : " Off"]
" + if(s == "encryption keys") + dat += "Channel Encryption Firmware[(encryptmod) ? " On" : " Off"]
" if(s == "universal translator") var/datum/language_holder/H = get_language_holder() dat += "Universal Translator[H.omnitongue ? " On" : " Off"]
" @@ -377,6 +409,8 @@ return dat /mob/living/silicon/pai/proc/CheckDNA(mob/living/carbon/M, mob/living/silicon/pai/P) + if(!istype(M)) + return 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].",\ @@ -469,6 +503,14 @@ . += "
\nBack
" return . +// Encryption Keys +/mob/living/silicon/pai/proc/softwareEncryptionKeys() + var/dat = {"

Encryption Key Firmware


+ When enabled, this device will be able to use up to two (2) encryption keys for departmental channel access.

+ The device is currently [encryptmod ? "en" : "dis" ]abled.
[encryptmod ? "" : "Activate Encryption Key Ports
"]"} + return dat + + // Universal Translator /mob/living/silicon/pai/proc/softwareTranslator() var/datum/language_holder/H = get_language_holder() @@ -479,7 +521,7 @@ // Security HUD /mob/living/silicon/pai/proc/facialRecognition() - var/dat = {"

Facial Recognition Suite


+ var/dat = {"

Facial Recognition Overlay


When enabled, this package will scan all viewable faces and compare them against the known criminal database, providing real-time graphical data about any detected persons of interest.

The package is currently [ (secHUD) ? "en" : "dis" ]abled.
Toggle Package
@@ -489,47 +531,24 @@ // Medical HUD /mob/living/silicon/pai/proc/medicalAnalysis() var/dat = "" - if(subscreen == 0) - dat += {"

Medical Analysis Suite


-

Visual Status Overlay


- When enabled, this package will scan all nearby crewmembers' vitals and provide real-time graphical data about their state of health.

- The suite is currently [ (medHUD) ? "en" : "dis" ]abled.
- Toggle Suite
-
- Host Bioscan
- "} - if(subscreen == 1) - dat += {"

Medical Analysis Suite


-

Host Bioscan


- "} - var/mob/living/M = card.loc - if(!isliving(M)) - while(!isliving(M)) - if(isturf(M)) - temp = "Error: No biological host found.
" - subscreen = 0 - return dat - M = M.loc - dat += {"Bioscan Results for [M]:
" - Overall Status: [M.stat > 1 ? "dead" : "[M.health]% healthy"]
- Scan Breakdown:
- Respiratory: [M.getOxyLoss() > 50 ? "" : ""][M.getOxyLoss()]
- Toxicology: [M.getToxLoss() > 50 ? "" : ""][M.getToxLoss()]
- Burns: [M.getFireLoss() > 50 ? "" : ""][M.getFireLoss()]
- Structural Integrity: [M.getBruteLoss() > 50 ? "" : ""][M.getBruteLoss()]
- Body Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)
- "} - for(var/thing in M.diseases) - var/datum/disease/D = thing - dat += {"

Infection Detected.


- Name: [D.name]
- Type: [D.spread_text]
- Stage: [D.stage]/[D.max_stages]
- Possible Cure: [D.cure_text]
- "} - dat += "Visual Status Overlay
" + dat += {"

Medical Analysis Overlay


+ When enabled, this package will scan all nearby crewmembers' vitals and provide real-time graphical data about their state of health.

+ The suite is currently [ (medHUD) ? "en" : "dis" ]abled.
+ Toggle Suite
+ "} return dat +//Health Scanner +/mob/living/silicon/pai/proc/softwareHostScan() + + var/dat = "" + dat += {"

Host Bisoscan Settings


+ + Change Scan Type
+ + Toggle Verbosity
+ "} + return dat // Atmospheric Scanner /mob/living/silicon/pai/proc/softwareAtmo() var/dat = "

Atmospheric Sensor

" @@ -615,23 +634,26 @@ var/dat = "

Digital Messenger

" dat += {"Signal/Receiver Status: - [(pda.toff) ? "\[Off\]" : "\[On\]"]
+ [(aiPDA.toff) ? "\[Off\]" : "\[On\]"]
Ringer Status: - [(pda.silent) ? "\[Off\]" : "\[On\]"]

"} + [(aiPDA.silent) ? "\[Off\]" : "\[On\]"]

"} dat += "
    " - if(!pda.toff) + if(!aiPDA.toff) for (var/obj/item/pda/P in sortNames(get_viewable_pdas())) - if (P == pda) + if (P == aiPDA) continue dat += "
  • [P]" dat += "
  • " dat += "
" dat += "

" - dat += "Messages:
[pda.tnote]" + dat += "Messages:
[aiPDA.tnote]" return dat // Loudness Booster /mob/living/silicon/pai/proc/softwareLoudness() if(!internal_instrument) internal_instrument = new(src) - return "

Sound Synthetizer

" \ No newline at end of file + var/dat = "

Sound Synthesizer

" + dat += "Open Synthesizer Interface
" + dat += "Choose Instrument Type" + return dat diff --git a/code/modules/mob/living/silicon/robot/emote.dm b/code/modules/mob/living/silicon/robot/emote.dm index 8b5e7823297..f847811110b 100644 --- a/code/modules/mob/living/silicon/robot/emote.dm +++ b/code/modules/mob/living/silicon/robot/emote.dm @@ -2,10 +2,6 @@ mob_type_allowed_typecache = list(/mob/living/silicon) emote_type = EMOTE_AUDIBLE -/datum/emote/silicon - mob_type_allowed_typecache = list(/mob/living/silicon) - emote_type = EMOTE_AUDIBLE - /datum/emote/silicon/boop key = "boop" key_third_person = "boops" diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 3b8eacc8341..38d0de5c915 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -790,24 +790,31 @@ /mob/living/silicon/robot/modules/medical set_module = /obj/item/robot_module/medical + icon_state = "medical" /mob/living/silicon/robot/modules/engineering set_module = /obj/item/robot_module/engineering + icon_state = "engineer" /mob/living/silicon/robot/modules/security set_module = /obj/item/robot_module/security + icon_state = "sec" /mob/living/silicon/robot/modules/clown set_module = /obj/item/robot_module/clown + icon_state = "clown" /mob/living/silicon/robot/modules/peacekeeper set_module = /obj/item/robot_module/peacekeeper + icon_state = "peace" /mob/living/silicon/robot/modules/miner set_module = /obj/item/robot_module/miner + icon_state = "miner" /mob/living/silicon/robot/modules/janitor set_module = /obj/item/robot_module/janitor + icon_state = "janitor" /mob/living/silicon/robot/modules/syndicate icon_state = "synd_sec" diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 2341699e9e0..ed039e4b59c 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -120,7 +120,7 @@ if(I.loc != src) I.forceMove(src) modules += I - I.add_trait(TRAIT_NODROP, CYBORG_ITEM_TRAIT) + ADD_TRAIT(I, TRAIT_NODROP, CYBORG_ITEM_TRAIT) I.mouse_opacity = MOUSE_OPACITY_OPAQUE if(nonstandard) added_modules += I @@ -146,7 +146,7 @@ if(istype(I, /obj/item/assembly/flash)) var/obj/item/assembly/flash/F = I F.times_used = 0 - F.crit_fail = 0 + F.burnt_out = FALSE F.update_icon() else if(istype(I, /obj/item/melee/baton)) var/obj/item/melee/baton/B = I @@ -390,10 +390,13 @@ /obj/item/stack/tile/plasteel/cyborg, /obj/item/soap/nanotrasen, /obj/item/storage/bag/trash/cyborg, + /obj/item/melee/flyswatter, /obj/item/extinguisher/mini, /obj/item/mop/cyborg, + /obj/item/reagent_containers/glass/bucket, + /obj/item/paint/paint_remover, /obj/item/lightreplacer/cyborg, - /obj/item/holosign_creator, + /obj/item/holosign_creator/janibarrier, /obj/item/reagent_containers/spray/cyborg_drying) emag_modules = list(/obj/item/reagent_containers/spray/cyborg_lube) ratvar_modules = list( @@ -471,8 +474,8 @@ /obj/item/hand_labeler/borg, /obj/item/razor, /obj/item/rsf, - /obj/item/instrument/violin, /obj/item/instrument/guitar, + /obj/item/instrument/piano_synth, /obj/item/reagent_containers/dropper, /obj/item/lighter, /obj/item/storage/bag/tray, diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 25fa70b061d..228d17af971 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -23,7 +23,7 @@ var/obj/item/camera/siliconcam/aicamera = null //photography hud_possible = list(ANTAG_HUD, DIAG_STAT_HUD, DIAG_HUD, DIAG_TRACK_HUD) - var/obj/item/radio/borg/radio = null //AIs dont use this but this is at the silicon level to advoid copypasta in say() + var/obj/item/radio/borg/radio = null //All silicons make use of this, with (p)AI's creating headsets var/list/alarm_types_show = list("Motion" = 0, "Fire" = 0, "Atmosphere" = 0, "Power" = 0, "Camera" = 0) var/list/alarm_types_clear = list("Motion" = 0, "Fire" = 0, "Atmosphere" = 0, "Power" = 0, "Camera" = 0) @@ -44,6 +44,7 @@ var/hack_software = FALSE //Will be able to use hacking actions var/interaction_range = 7 //wireless control range + var/obj/item/pda/aiPDA /mob/living/silicon/Initialize() . = ..() @@ -321,6 +322,11 @@ usr << browse(list, "window=laws") +/mob/living/silicon/proc/ai_roster() + var/datum/browser/popup = new(src, "airoster", "Crew Manifest", 387, 420) + popup.set_content(GLOB.data_core.get_manifest()) + popup.open() + /mob/living/silicon/proc/set_autosay() //For allowing the AI and borgs to set the radio behavior of auto announcements (state laws, arrivals). if(!radio) to_chat(src, "Radio not detected.") diff --git a/code/modules/mob/living/silicon/silicon_defense.dm b/code/modules/mob/living/silicon/silicon_defense.dm index 243f9e78eaf..24a2ff61190 100644 --- a/code/modules/mob/living/silicon/silicon_defense.dm +++ b/code/modules/mob/living/silicon/silicon_defense.dm @@ -85,7 +85,7 @@ return return ..() -/mob/living/silicon/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0, stun = TRUE) +/mob/living/silicon/electrocute_act(shock_damage, source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0, stun = TRUE) if(buckled_mobs) for(var/mob/living/M in buckled_mobs) unbuckle_mob(M) diff --git a/code/modules/mob/living/simple_animal/animal_defense.dm b/code/modules/mob/living/simple_animal/animal_defense.dm index b31f082f856..80f5de8d01d 100644 --- a/code/modules/mob/living/simple_animal/animal_defense.dm +++ b/code/modules/mob/living/simple_animal/animal_defense.dm @@ -12,7 +12,7 @@ grabbedby(M) if("harm", "disarm") - if(M.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(M, TRAIT_PACIFISM)) to_chat(M, "You don't want to hurt [src]!") return M.do_attack_animation(src, ATTACK_EFFECT_PUNCH) @@ -26,7 +26,7 @@ /mob/living/simple_animal/attack_hulk(mob/living/carbon/human/user, does_attack_animation = 0) if(user.a_intent == INTENT_HARM) - if(user.has_trait(TRAIT_PACIFISM)) + if(HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, "You don't want to hurt [src]!") return FALSE ..(user, 1) diff --git a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm index 5dea3f0c63e..117a1c33672 100644 --- a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm +++ b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm @@ -5,7 +5,7 @@ icon_state = "grievous" health = 150 maxHealth = 150 - baton_type = /obj/item/melee/transforming/energy/sword + baton_type = /obj/item/melee/transforming/energy/sword/saber base_speed = 4 //he's a fast fucker var/obj/item/weapon var/block_chance = 50 diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index 2abf7a054b2..8ebdf0ee46e 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -846,7 +846,7 @@ Pass a positive integer as an argument to override a bot's default speed. return INITIALIZE_HINT_QDEL /mob/living/simple_animal/bot/proc/topic_denied(mob/user) //Access check proc for bot topics! Remember to place in a bot's individual Topic if desired. - if(!user.canUseTopic(src)) + if(!user.canUseTopic(src, !issilicon(user))) return TRUE // 0 for access, 1 for denied. if(emagged == 2) //An emagged bot cannot be controlled by humans, silicons can if one hacked it. diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index 62d8a9eef19..9fc83576988 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -155,25 +155,21 @@ build_step++ if(7) - var/newname = "" switch(lasercolor) if("b") if(!istype(W, /obj/item/gun/energy/laser/bluetag)) return - newname = "bluetag ED-209 assembly" if("r") if(!istype(W, /obj/item/gun/energy/laser/redtag)) return - newname = "redtag ED-209 assembly" if("") - if(!istype(W, /obj/item/gun/energy/e_gun/advtaser)) + if(!istype(W, /obj/item/gun/energy/e_gun/dragnet)) return - newname = "taser ED-209 assembly" else return if(!user.temporarilyRemoveItemFromInventory(W)) return - name = newname + name = "[W.name] ED-209 assembly" to_chat(user, "You add [W] to [src].") item_state = "[lasercolor]ed209_taser" icon_state = "[lasercolor]ed209_taser" @@ -185,7 +181,7 @@ to_chat(user, "You start attaching the gun to the frame...") if(W.use_tool(src, user, 40, volume=100)) name = "armed [name]" - to_chat(user, "Taser gun attached.") + to_chat(user, "The gun is now securely fastened to the frame.") build_step++ if(9) @@ -208,6 +204,7 @@ throwforce = 10 created_name = "Floorbot" var/toolbox = /obj/item/storage/toolbox/mechanical + var/toolbox_color = "" //Blank for blue, r for red, y for yellow, etc. /obj/item/bot_assembly/floorbot/Initialize() . = ..() @@ -219,29 +216,12 @@ if(ASSEMBLY_FIRST_STEP) desc = initial(desc) name = initial(name) - icon_state = initial(icon_state) + icon_state = "[toolbox_color]toolbox_tiles" if(ASSEMBLY_SECOND_STEP) desc = "It's a toolbox with tiles sticking out the top and a sensor attached." name = "incomplete floorbot assembly" - icon_state = "toolbox_tiles_sensor" - -/obj/item/storage/toolbox/mechanical/attackby(obj/item/stack/tile/plasteel/T, mob/user, params) - if(!istype(T, /obj/item/stack/tile/plasteel)) - ..() - return - if(contents.len >= 1) - to_chat(user, "They won't fit in, as there is already stuff inside!") - return - if(T.use(10)) - var/obj/item/bot_assembly/floorbot/B = new - B.toolbox = type - user.put_in_hands(B) - to_chat(user, "You add the tiles into the empty [src.name]. They protrude from the top.") - qdel(src) - else - to_chat(user, "You need 10 floor tiles to start building a floorbot!") - return + icon_state = "[toolbox_color]toolbox_tiles_sensor" /obj/item/bot_assembly/floorbot/attackby(obj/item/W, mob/user, params) ..() @@ -259,7 +239,7 @@ if(istype(W, /obj/item/bodypart/l_arm/robot) || istype(W, /obj/item/bodypart/r_arm/robot)) if(!can_finish_build(W, user)) return - var/mob/living/simple_animal/bot/floorbot/A = new(drop_location()) + var/mob/living/simple_animal/bot/floorbot/A = new(drop_location(), toolbox_color) A.name = created_name A.robot_arm = W.type A.toolbox = toolbox @@ -284,32 +264,6 @@ if(skin) add_overlay("kit_skin_[skin]") -/obj/item/storage/firstaid/attackby(obj/item/bodypart/S, mob/user, params) - - if((!istype(S, /obj/item/bodypart/l_arm/robot)) && (!istype(S, /obj/item/bodypart/r_arm/robot))) - return ..() - - //Making a medibot! - if(contents.len >= 1) - to_chat(user, "You need to empty [src] out first!") - return - - var/obj/item/bot_assembly/medbot/A = new - if(istype(src, /obj/item/storage/firstaid/fire)) - A.skin = "ointment" - else if(istype(src, /obj/item/storage/firstaid/toxin)) - A.skin = "tox" - else if(istype(src, /obj/item/storage/firstaid/o2)) - A.skin = "o2" - else if(istype(src, /obj/item/storage/firstaid/brute)) - A.skin = "brute" - user.put_in_hands(A) - to_chat(user, "You add [S] to [src].") - A.robot_arm = S.type - A.firstaid = type - qdel(S) - qdel(src) - /obj/item/bot_assembly/medbot/attackby(obj/item/W, mob/user, params) ..() switch(build_step) @@ -505,3 +459,34 @@ to_chat(user, "You unbolt [src]'s energy swords") for(var/IS in 1 to swordamt) new /obj/item/melee/transforming/energy/sword/saber(Tsec) + + +//Firebot Assembly +/obj/item/bot_assembly/firebot + name = "incomplete firebot assembly" + desc = "A fire extinguisher with an arm attached to it." + icon_state = "firebot_arm" + created_name = "Firebot" + +/obj/item/bot_assembly/firebot/attackby(obj/item/I, mob/user, params) + ..() + switch(build_step) + if(ASSEMBLY_FIRST_STEP) + if(istype(I, /obj/item/clothing/head/hardhat/red)) + if(!user.temporarilyRemoveItemFromInventory(I)) + return + to_chat(user,"You add the [I] to [src]!") + icon_state = "firebot_helmet" + desc = "An incomplete firebot assembly with a fire helmet." + qdel(I) + build_step++ + + if(ASSEMBLY_SECOND_STEP) + if(isprox(I)) + if(!can_finish_build(I, user)) + return + to_chat(user, "You add the [I] to [src]! Beep Boop!") + var/mob/living/simple_animal/bot/firebot/F = new(drop_location()) + F.name = created_name + qdel(I) + qdel(src) diff --git a/code/modules/mob/living/simple_animal/bot/ed209bot.dm b/code/modules/mob/living/simple_animal/bot/ed209bot.dm index 007b705585d..617963b8dcb 100644 --- a/code/modules/mob/living/simple_animal/bot/ed209bot.dm +++ b/code/modules/mob/living/simple_animal/bot/ed209bot.dm @@ -237,7 +237,7 @@ Auto Patrol[]"}, targets += C if(targets.len>0) var/mob/living/carbon/t = pick(targets) - if((t.stat!=2) && (!(t.mobility_flags & MOBILITY_STAND)) && (!t.handcuffed)) //we don't shoot people who are dead, cuffed or lying down. + if(t.stat != DEAD && (t.mobility_flags & MOBILITY_STAND) && !t.handcuffed) //we don't shoot people who are dead, cuffed or lying down. shootAt(t) switch(mode) @@ -386,7 +386,7 @@ Auto Patrol[]"}, drop_part(cell_type, Tsec) if(!lasercolor) - var/obj/item/gun/energy/e_gun/advtaser/G = new (Tsec) + var/obj/item/gun/energy/e_gun/dragnet/G = new (Tsec) G.cell.charge = 0 G.update_icon() else if(lasercolor == "b") @@ -427,15 +427,15 @@ Auto Patrol[]"}, projectile = /obj/item/projectile/beam else if(!lasercolor) - shoot_sound = 'sound/weapons/taser.ogg' - projectile = /obj/item/projectile/energy/electrode + shoot_sound = 'sound/weapons/laser.ogg' + projectile = /obj/item/projectile/energy/net else if(lasercolor == "b") projectile = /obj/item/projectile/beam/lasertag/bluetag else if(lasercolor == "r") projectile = /obj/item/projectile/beam/lasertag/redtag /mob/living/simple_animal/bot/ed209/proc/shootAt(mob/target) - if(lastfired && world.time - lastfired < shot_delay) + if(world.time <= lastfired + shot_delay) return lastfired = world.time var/turf/T = loc diff --git a/code/modules/mob/living/simple_animal/bot/firebot.dm b/code/modules/mob/living/simple_animal/bot/firebot.dm new file mode 100644 index 00000000000..eb3a29d51ea --- /dev/null +++ b/code/modules/mob/living/simple_animal/bot/firebot.dm @@ -0,0 +1,326 @@ +//Firebot + +#define SPEECH_INTERVAL 300 // Time between idle speeches +#define DETECTED_VOICE_INTERVAL 300 // Time between fire detected callouts +#define FOAM_INTERVAL 50 // Time between deployment of fire fighting foam + +/mob/living/simple_animal/bot/firebot + name = "\improper Firebot" + desc = "A little fire extinguishing bot. He looks rather anxious." + icon = 'icons/mob/aibots.dmi' + icon_state = "firebot" + density = FALSE + anchored = FALSE + health = 25 + maxHealth = 25 + spacewalk = TRUE + + radio_key = /obj/item/encryptionkey/headset_eng + radio_channel = RADIO_CHANNEL_ENGINEERING + bot_type = FIRE_BOT + model = "Firebot" + bot_core = /obj/machinery/bot_core/firebot + window_id = "autoextinguisher" + window_name = "Mobile Fire Extinguisher v1.0" + path_image_color = "#FFA500" + + var/atom/target_fire + var/atom/old_target_fire + + var/obj/item/extinguisher/internal_ext + + var/last_found = 0 + + var/speech_cooldown = 0 + var/detected_cooldown = 0 + var/foam_cooldown = 0 + + var/extinguish_people = TRUE + var/extinguish_fires = TRUE + var/stationary_mode = FALSE + +/mob/living/simple_animal/bot/firebot/Initialize() + . = ..() + update_icon() + var/datum/job/engineer/J = new/datum/job/engineer + access_card.access += J.get_access() + prev_access = access_card.access + + create_extinguisher() + +/mob/living/simple_animal/bot/firebot/bot_reset() + create_extinguisher() + +/mob/living/simple_animal/bot/firebot/proc/create_extinguisher() + internal_ext = new /obj/item/extinguisher(src) + internal_ext.safety = FALSE + internal_ext.precision = TRUE + internal_ext.max_water = INFINITY + internal_ext.refill() + +/mob/living/simple_animal/bot/firebot/UnarmedAttack(atom/A) + if(!on) + return + if(internal_ext) + internal_ext.afterattack(A, src) + else + return ..() + +/mob/living/simple_animal/bot/firebot/RangedAttack(atom/A) + if(!on) + return + if(internal_ext) + internal_ext.afterattack(A, src) + else + return ..() + +/mob/living/simple_animal/bot/firebot/turn_on() + . = ..() + update_icon() + +/mob/living/simple_animal/bot/firebot/turn_off() + ..() + update_icon() + +/mob/living/simple_animal/bot/firebot/bot_reset() + ..() + target_fire = null + old_target_fire = null + ignore_list = list() + anchored = FALSE + update_icon() + +/mob/living/simple_animal/bot/firebot/proc/soft_reset() + path = list() + target_fire = null + mode = BOT_IDLE + last_found = world.time + update_icon() + +/mob/living/simple_animal/bot/firebot/set_custom_texts() + text_hack = "You corrupt [name]'s safety protocols." + text_dehack = "You detect errors in [name] and reset his programming." + text_dehack_fail = "[name] is not responding to reset commands!" + +/mob/living/simple_animal/bot/firebot/get_controls(mob/user) + var/dat + dat += hack(user) + dat += showpai(user) + dat += "Mobile Fire Extinguisher v1.0

" + dat += "Status: [on ? "On" : "Off"]
" + dat += "Maintenance panel panel is [open ? "opened" : "closed"]
" + + dat += "Behaviour controls are [locked ? "locked" : "unlocked"]
" + if(!locked || issilicon(user) || IsAdminGhost(user)) + dat += "Extinguish Fires: [extinguish_fires ? "Yes" : "No"]
" + dat += "Extinguish People: [extinguish_people ? "Yes" : "No"]
" + dat += "Patrol Station: [auto_patrol ? "Yes" : "No"]
" + dat += "Stationary Mode: [stationary_mode ? "Yes" : "No"]
" + + return dat + +/mob/living/simple_animal/bot/firebot/emag_act(mob/user) + ..() + if(emagged == 2) + if(user) + to_chat(user, "[src] buzzes and beeps.") + audible_message("[src] buzzes oddly!") + playsound(src, "sparks", 75, TRUE) + if(user) + old_target_fire = user + extinguish_fires = FALSE + extinguish_people = TRUE + + internal_ext = new /obj/item/extinguisher(src) + internal_ext.chem = "clf3" //Refill the internal extinguisher with liquid fire + internal_ext.power = 3 + internal_ext.safety = FALSE + internal_ext.precision = FALSE + internal_ext.max_water = INFINITY + internal_ext.refill() + +/mob/living/simple_animal/bot/firebot/Topic(href, href_list) + if(..()) + return TRUE + + switch(href_list["operation"]) + if("extinguish_fires") + extinguish_fires = !extinguish_fires + if("extinguish_people") + extinguish_people = !extinguish_people + if("stationary_mode") + stationary_mode = !stationary_mode + + update_controls() + update_icon() + +/mob/living/simple_animal/bot/firebot/proc/is_burning(atom/target) + if(ismob(target)) + var/mob/living/M = target + if(M.on_fire || (emagged == 2 && !M.on_fire)) + return TRUE + + else if(isturf(target)) + var/turf/open/T = target + if(T.active_hotspot) + return TRUE + + return FALSE + +/mob/living/simple_animal/bot/firebot/handle_automated_action() + if(!..()) + return + + if(IsStun() || IsParalyzed()) + old_target_fire = target_fire + target_fire = null + mode = BOT_IDLE + return + + if(prob(1) && target_fire == null) + var/list/messagevoice = list("No fires detected." = 'sound/voice/firebot/nofires.ogg', + "Only you can prevent station fires." = 'sound/voice/firebot/onlyyou.ogg', + "Temperature nominal." = 'sound/voice/firebot/tempnominal.ogg', + "Keep it cool." = 'sound/voice/firebot/keepitcool.ogg') + var/message = pick(messagevoice) + speak(message) + playsound(src, messagevoice[message], 50) + + // Couldn't reach the target, reset and try again ignoring the old one + if(frustration > 8) + old_target_fire = target_fire + soft_reset() + + // We extinguished our target or it was deleted + if(QDELETED(target_fire) || !is_burning(target_fire) || isdead(target_fire)) + target_fire = null + var/scan_range = (stationary_mode ? 1 : DEFAULT_SCAN_RANGE) + + if(extinguish_people) + target_fire = scan(/mob/living, old_target_fire, scan_range) // Scan for burning humans first + + if(target_fire == null && extinguish_fires) + target_fire = scan(/turf/open, old_target_fire, scan_range) // Scan for burning turfs second + + old_target_fire = target_fire + + // Target reached ENGAGE WATER CANNON + if(target_fire && (get_dist(src, target_fire) <= (emagged == 2 ? 1 : 2))) // Make the bot spray water from afar when not emagged + if((speech_cooldown + SPEECH_INTERVAL) < world.time) + if(ishuman(target_fire)) + speak("Stop, drop and roll!") + playsound(src, "sound/voice/firebot/stopdropnroll.ogg", 50, 0) + else + speak("Extinguishing!") + playsound(src, "sound/voice/firebot/extinguishing.ogg", 50, 0) + speech_cooldown = world.time + + flick("firebot1_use", src) + spray_water(target_fire, src) + + soft_reset() + + // Target ran away + else if(target_fire && path.len && (get_dist(target_fire,path[path.len]) > 2)) + path = list() + mode = BOT_IDLE + last_found = world.time + + else if(target_fire && stationary_mode) + soft_reset() + return + + if(target_fire && (get_dist(src, target_fire) > 2)) + + path = get_path_to(src, get_turf(target_fire), /turf/proc/Distance_cardinal, 0, 30, 1, id=access_card) + mode = BOT_MOVING + if(!path.len) + soft_reset() + + if(path.len > 0 && target_fire) + if(!bot_move(path[path.len])) + old_target_fire = target_fire + soft_reset() + return + + // We got a target but it's too far away from us + if(path.len > 8 && target_fire) + frustration++ + + if(auto_patrol && !target_fire) + if(mode == BOT_IDLE || mode == BOT_START_PATROL) + start_patrol() + + if(mode == BOT_PATROL) + bot_patrol() + + +//Look for burning people or turfs around the bot +/mob/living/simple_animal/bot/firebot/process_scan(atom/scan_target) + var/result + + if(scan_target == src) + return result + + if(is_burning(scan_target)) + if((detected_cooldown + DETECTED_VOICE_INTERVAL) < world.time) + speak("Fire detected!") + playsound(src, "sound/voice/firebot/detected.ogg", 50, 0) + detected_cooldown = world.time + result = scan_target + + return result + +/mob/living/simple_animal/bot/firebot/temperature_expose(datum/gas_mixture/air, temperature, volume) + if((temperature > T0C + 200 || temperature < BODYTEMP_COLD_DAMAGE_LIMIT) && foam_cooldown + FOAM_INTERVAL < world.time) + new /obj/effect/particle_effect/foam/firefighting(loc) + foam_cooldown = world.time + ..() + +/mob/living/simple_animal/bot/firebot/proc/spray_water(atom/target, mob/user) + if(stationary_mode) + flick("firebots_use", user) + else + flick("firebot1_use", user) + internal_ext.afterattack(target, user, null) + +/mob/living/simple_animal/bot/firebot/update_icon() + if(!on) + icon_state = "firebot0" + return + if(IsStun() || IsParalyzed()) + icon_state = "firebots1" + else if(stationary_mode) //Bot has yellow light to indicate stationary mode. + icon_state = "firebots1" + else + icon_state = "firebot1" + + +/mob/living/simple_animal/bot/firebot/explode() + on = FALSE + visible_message("[src] blows apart!") + + var/atom/Tsec = drop_location() + + new /obj/item/assembly/prox_sensor(Tsec) + new /obj/item/clothing/head/hardhat/red(Tsec) + + var/turf/T = get_turf(Tsec) + + if(isopenturf(T)) + var/turf/open/theturf = T + theturf.MakeSlippery(TURF_WET_WATER, min_wet_time = 10 SECONDS, wet_time_to_add = 5 SECONDS) + + if(prob(50)) + drop_part(robot_arm, Tsec) + + do_sparks(3, TRUE, src) + ..() + +/obj/machinery/bot_core/firebot + req_one_access = list(ACCESS_CONSTRUCTION, ACCESS_ROBOTICS) + +#undef SPEECH_INTERVAL +#undef DETECTED_VOICE_INTERVAL +#undef FOAM_INTERVAL + diff --git a/code/modules/mob/living/simple_animal/bot/floorbot.dm b/code/modules/mob/living/simple_animal/bot/floorbot.dm index fa0bd719310..8b344ddaa6a 100644 --- a/code/modules/mob/living/simple_animal/bot/floorbot.dm +++ b/code/modules/mob/living/simple_animal/bot/floorbot.dm @@ -21,17 +21,18 @@ var/process_type //Determines what to do when process_scan() receives a target. See process_scan() for details. var/targetdirection - var/replacetiles = 0 - var/placetiles = 0 + var/replacetiles = FALSE + var/placetiles = FALSE var/specialtiles = 0 var/maxtiles = 100 var/obj/item/stack/tile/tiletype - var/fixfloors = 0 - var/autotile = 0 + var/fixfloors = TRUE + var/autotile = FALSE var/max_targets = 50 var/turf/target var/oldloc = null var/toolbox = /obj/item/storage/toolbox/mechanical + var/toolbox_color = "" #define HULL_BREACH 1 #define LINE_SPACE_MODE 2 @@ -41,12 +42,16 @@ #define REPLACE_TILE 6 #define TILE_EMAG 7 -/mob/living/simple_animal/bot/floorbot/Initialize() +/mob/living/simple_animal/bot/floorbot/Initialize(mapload, new_toolbox_color) . = ..() + toolbox_color = new_toolbox_color update_icon() var/datum/job/engineer/J = new/datum/job/engineer access_card.access += J.get_access() prev_access = access_card.access + if(toolbox_color == "s") + health = 100 + maxHealth = 100 /mob/living/simple_animal/bot/floorbot/turn_on() . = ..() @@ -131,7 +136,7 @@ /mob/living/simple_animal/bot/floorbot/Topic(href, href_list) if(..()) - return 1 + return TRUE switch(href_list["operation"]) if("replace") @@ -264,9 +269,9 @@ /mob/living/simple_animal/bot/floorbot/proc/is_hull_breach(turf/t) //Ignore space tiles not considered part of a structure, also ignores shuttle docking areas. var/area/t_area = get_area(t) if(t_area && (t_area.name == "Space" || findtext(t_area.name, "huttle"))) - return 0 + return FALSE else - return 1 + return TRUE //Floorbots, having several functions, need sort out special conditions here. /mob/living/simple_animal/bot/floorbot/process_scan(scan_target) @@ -312,7 +317,7 @@ return if(isspaceturf(target_turf)) //If we are fixing an area not part of pure space, it is anchored = TRUE - icon_state = "floorbot-c" + icon_state = "[toolbox_color]floorbot-c" visible_message("[targetdirection ? "[src] begins installing a bridge plating." : "[src] begins to repair the hole."] ") mode = BOT_REPAIRING sleep(50) @@ -327,24 +332,24 @@ if(F.type != initial(tiletype.turf_type) && (F.broken || F.burnt || isplatingturf(F)) || F.type == (initial(tiletype.turf_type) && (F.broken || F.burnt))) anchored = TRUE - icon_state = "floorbot-c" + icon_state = "[toolbox_color]floorbot-c" mode = BOT_REPAIRING visible_message("[src] begins repairing the floor.") sleep(50) if(mode == BOT_REPAIRING && F && src.loc == F) - F.broken = 0 - F.burnt = 0 + F.broken = FALSE + F.burnt = FALSE F.PlaceOnTop(/turf/open/floor/plasteel) if(replacetiles && F.type != initial(tiletype.turf_type) && specialtiles && !isplatingturf(F)) anchored = TRUE - icon_state = "floorbot-c" + icon_state = "[toolbox_color]floorbot-c" mode = BOT_REPAIRING visible_message("[src] begins replacing the floor tiles.") sleep(50) if(mode == BOT_REPAIRING && F && src.loc == F) - F.broken = 0 - F.burnt = 0 + F.broken = FALSE + F.burnt = FALSE F.PlaceOnTop(initial(tiletype.turf_type)) specialtiles -= 1 if(specialtiles == 0) @@ -355,7 +360,7 @@ target = null /mob/living/simple_animal/bot/floorbot/update_icon() - icon_state = "floorbot[on]" + icon_state = "[toolbox_color]floorbot[on]" /mob/living/simple_animal/bot/floorbot/explode() diff --git a/code/modules/mob/living/simple_animal/bot/medbot.dm b/code/modules/mob/living/simple_animal/bot/medbot.dm index 75f15be2013..f01e88bda77 100644 --- a/code/modules/mob/living/simple_animal/bot/medbot.dm +++ b/code/modules/mob/living/simple_animal/bot/medbot.dm @@ -343,7 +343,7 @@ /mob/living/simple_animal/bot/medbot/proc/assess_patient(mob/living/carbon/C) //Time to see if they need medical help! - if(C.stat == DEAD || (C.has_trait(TRAIT_FAKEDEATH))) + if(C.stat == DEAD || (HAS_TRAIT(C, TRAIT_FAKEDEATH))) return FALSE //welp too late for them! if(!(loc == C.loc) && !(isturf(C.loc) && isturf(loc))) @@ -421,7 +421,7 @@ soft_reset() return - if(C.stat == DEAD || (C.has_trait(TRAIT_FAKEDEATH))) + if(C.stat == DEAD || (HAS_TRAIT(C, TRAIT_FAKEDEATH))) var/list/messagevoice = list("No! Stay with me!" = 'sound/voice/medbot/no.ogg',"Live, damnit! LIVE!" = 'sound/voice/medbot/live.ogg',"I...I've never lost a patient before. Not today, I mean." = 'sound/voice/medbot/lost.ogg') var/message = pick(messagevoice) speak(message) @@ -490,15 +490,18 @@ "[src] is trying to inject you!") var/failed = FALSE - if(do_mob(src, patient, 30)) //Is C == patient? This is so confusing + if(do_mob(src, patient, 30)) 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) var/fraction = min(injection_amount/reagent_glass.reagents.total_volume, 1) + var/reagentlist = pretty_string_from_reagent_list(reagent_glass.reagents.reagent_list) + log_combat(src, patient, "injected", "beaker source", "[reagentlist]:[injection_amount]") reagent_glass.reagents.reaction(patient, INJECT, fraction) reagent_glass.reagents.trans_to(patient,injection_amount) //Inject from beaker instead. else patient.reagents.add_reagent(reagent_id,injection_amount) + log_combat(src, patient, "injected", "internal synthesizer", "[reagent_id]:[injection_amount]") C.visible_message("[src] injects [patient] with its syringe!", \ "[src] injects you with its syringe!") else diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index 1cc39ca5835..441e36e5465 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -217,7 +217,7 @@ bot_control(action, usr) // Kill this later. . = TRUE -/mob/living/simple_animal/bot/mulebot/bot_control(command, mob/user, pda = 0) +/mob/living/simple_animal/bot/mulebot/bot_control(command, mob/user, pda = FALSE) if(pda && wires.is_cut(WIRE_RX)) // MULE wireless is controlled by wires. return diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index 313e0f1a696..567b33af970 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -107,7 +107,7 @@ /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, stun = TRUE) +/mob/living/simple_animal/hostile/construct/electrocute_act(shock_damage, source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0, stun = TRUE) return 0 /mob/living/simple_animal/hostile/construct/adjustHealth(amount, updating_health = TRUE, forced = FALSE) @@ -137,7 +137,7 @@ mob_size = MOB_SIZE_LARGE force_threshold = 10 construct_spells = list(/obj/effect/proc_holder/spell/targeted/forcewall/cult, - /obj/effect/proc_holder/spell/dumbfire/juggernaut) + /obj/effect/proc_holder/spell/targeted/projectile/dumbfire/juggernaut) runetype = /datum/action/innate/cult/create_rune/wall playstyle_string = "You are a Juggernaut. Though slow, your shell can withstand heavy punishment, \ create shield walls, rip apart enemies and walls alike, and even deflect energy weapons." @@ -341,7 +341,7 @@ /mob/living/simple_animal/hostile/construct/harvester/AttackingTarget() if(iscarbon(target)) var/mob/living/carbon/C = target - if(C.has_trait(TRAIT_NODISMEMBER)) + if(HAS_TRAIT(C, TRAIT_NODISMEMBER)) return ..() //ATTACK! var/list/parts = list() var/undismembermerable_limbs = 0 diff --git a/code/modules/mob/living/simple_animal/damage_procs.dm b/code/modules/mob/living/simple_animal/damage_procs.dm index 1031c5b7eee..eda19be7af4 100644 --- a/code/modules/mob/living/simple_animal/damage_procs.dm +++ b/code/modules/mob/living/simple_animal/damage_procs.dm @@ -37,5 +37,5 @@ else if(damage_coeff[CLONE]) . = adjustHealth(amount * damage_coeff[CLONE] * CONFIG_GET(number/damage_multiplier), updating_health, forced) -/mob/living/simple_animal/adjustStaminaLoss(amount) +/mob/living/simple_animal/adjustStaminaLoss(amount, updating_health, forced = FALSE) return diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index 3ec18d0cdf9..7ca65a11b00 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -238,6 +238,8 @@ if(M && stat != DEAD) new /obj/effect/temp_visual/heart(loc) emote("me", 1, "purrs!") + if(flags_1 & HOLOGRAM_1) + return SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, src, /datum/mood_event/pet_animal, src) else if(M && stat != DEAD) diff --git a/code/modules/mob/living/simple_animal/friendly/dog.dm b/code/modules/mob/living/simple_animal/friendly/dog.dm index 64f9314639b..412ac9e853a 100644 --- a/code/modules/mob/living/simple_animal/friendly/dog.dm +++ b/code/modules/mob/living/simple_animal/friendly/dog.dm @@ -267,6 +267,8 @@ return if(!item_to_add) user.visible_message("[user] pets [src].","You rest your hand on [src]'s head for a moment.") + if(flags_1 & HOLOGRAM_1) + return SEND_SIGNAL(user, COMSIG_ADD_MOOD_EVENT, src, /datum/mood_event/pet_animal, src) return 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 02e96a4abf0..d381377abda 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -92,7 +92,7 @@ var/obj/item/I = new default_hatmask(src) equip_to_slot_or_del(I, SLOT_HEAD) - access_card.add_trait(TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) + ADD_TRAIT(access_card, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) alert_drones(DRONE_NET_CONNECT) @@ -132,6 +132,12 @@ if(!picked) pickVisualAppearence() +/mob/living/simple_animal/drone/auto_deadmin_on_login() + if(!client?.holder) + return TRUE + if(CONFIG_GET(flag/auto_deadmin_silicons) || (client.prefs?.toggles & DEADMIN_POSITION_SILICON)) + return client.holder.auto_deadmin() + return ..() /mob/living/simple_animal/drone/death(gibbed) ..(gibbed) @@ -271,5 +277,5 @@ // 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, stun = TRUE) +/mob/living/simple_animal/drone/electrocute_act(shock_damage, source, siemens_coeff = 1, safety = 0, tesla_shock = 0, illusion = 0, stun = TRUE) return 0 //So they don't die trying to fix wiring 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 50da6151572..836cec87e8f 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 @@ -78,6 +78,7 @@ default_storage = null default_hatmask = null picked = TRUE + flavortext = null /mob/living/simple_animal/drone/polymorphed/Initialize() . = ..() 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 d3896275f73..32adaea113c 100644 --- a/code/modules/mob/living/simple_animal/friendly/farm_animals.dm +++ b/code/modules/mob/living/simple_animal/friendly/farm_animals.dm @@ -161,7 +161,7 @@ M.visible_message("[M] tips over [src].", "You tip over [src].") to_chat(src, "You are tipped over by [M]!") - Paralyze(60,ignore_canknockdown = TRUE) + Paralyze(60, ignore_canstun = TRUE) icon_state = icon_dead spawn(rand(20,50)) if(!stat && M) diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index 8638472fb4b..0d93f129160 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -25,10 +25,11 @@ var/body_color //brown, gray and white, leave blank for random gold_core_spawnable = FRIENDLY_SPAWN var/chew_probability = 1 + datum_outputs = list(/datum/outputs/squeak) /mob/living/simple_animal/mouse/Initialize() . = ..() - AddComponent(/datum/component/squeak, /datum/outputs/squeak, 100) + AddComponent(/datum/component/squeak/mouse, 100) if(!body_color) body_color = pick( list("brown","gray","white") ) icon_state = "mouse_[body_color]" @@ -125,4 +126,4 @@ return ..() /obj/item/reagent_containers/food/snacks/deadmouse/on_grind() - reagents.clear_reagents() + reagents.clear_reagents() \ 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 0a4ad713c08..6076ba4de3e 100644 --- a/code/modules/mob/living/simple_animal/guardian/guardian.dm +++ b/code/modules/mob/living/simple_animal/guardian/guardian.dm @@ -472,7 +472,7 @@ GLOBAL_LIST_EMPTY(parasites) //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("Assassin", "Chaos", "Charger", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support", "Gravitokinetic") var/random = TRUE var/allowmultiple = FALSE var/allowling = TRUE @@ -547,6 +547,9 @@ GLOBAL_LIST_EMPTY(parasites) //all currently existing/living guardians if("Dextrous") pickedtype = /mob/living/simple_animal/hostile/guardian/dextrous + if("Gravitokinetic") + pickedtype = /mob/living/simple_animal/hostile/guardian/gravitokinetic + var/list/guardians = user.hasparasites() if(guardians.len && !allowmultiple) to_chat(user, "You already have a [mob_name]!" ) @@ -575,10 +578,10 @@ GLOBAL_LIST_EMPTY(parasites) //all currently existing/living guardians random = FALSE /obj/item/guardiancreator/choose/dextrous - possible_guardians = list("Assassin", "Chaos", "Charger", "Dextrous", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support") + possible_guardians = list("Assassin", "Chaos", "Charger", "Dextrous", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support", "Gravitokinetic") /obj/item/guardiancreator/choose/wizard - possible_guardians = list("Assassin", "Chaos", "Charger", "Dextrous", "Explosive", "Lightning", "Protector", "Ranged", "Standard") + possible_guardians = list("Assassin", "Chaos", "Charger", "Dextrous", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Gravitokinetic") allowmultiple = TRUE /obj/item/guardiancreator/tech @@ -594,13 +597,13 @@ GLOBAL_LIST_EMPTY(parasites) //all currently existing/living guardians ling_failure = "The holoparasites recoil in horror. They want nothing to do with a creature like you." /obj/item/guardiancreator/tech/choose/traitor - possible_guardians = list("Assassin", "Chaos", "Charger", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support") + possible_guardians = list("Assassin", "Chaos", "Charger", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support", "Gravitokinetic") /obj/item/guardiancreator/tech/choose random = FALSE /obj/item/guardiancreator/tech/choose/dextrous - possible_guardians = list("Assassin", "Chaos", "Charger", "Dextrous", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support") + possible_guardians = list("Assassin", "Chaos", "Charger", "Dextrous", "Explosive", "Lightning", "Protector", "Ranged", "Standard", "Support", "Gravitokinetic") /obj/item/paper/guides/antag/guardian name = "Holoparasite Guide" @@ -624,6 +627,8 @@ GLOBAL_LIST_EMPTY(parasites) //all currently existing/living guardians
Standard: Devastating close combat attacks and high damage resist. Can smash through weak walls.

+ Gravitokinetic: Attacks will apply crushing gravity to the target. Can target the ground as well to slow targets advancing on you, but this will affect the user.
+
"} /obj/item/paper/guides/antag/guardian/update_icon() @@ -652,6 +657,8 @@ GLOBAL_LIST_EMPTY(parasites) //all currently existing/living guardians
Standard: Devastating close combat attacks and high damage resist. Can smash through weak walls.

+ Gravitokinetic: Attacks will apply crushing gravity to the target. Can target the ground as well to slow targets advancing on you, but this will affect the user.
+
"} 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 ff2f4532078..4078f4b041c 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm @@ -34,17 +34,17 @@ if(!istype(A)) return if(loc == summoner) - to_chat(src, "You must be manifested to create bombs!") + to_chat(src, "You must be manifested to create bombs!") return if(isobj(A) && Adjacent(A)) if(bomb_cooldown <= world.time && !stat) var/obj/guardian_bomb/B = new /obj/guardian_bomb(get_turf(A)) - to_chat(src, "Success! Bomb armed!") + to_chat(src, "Success! Bomb armed!") bomb_cooldown = world.time + 200 B.spawner = src B.disguise(A) else - to_chat(src, "Your powers are on cooldown! You must wait 20 seconds between bombs.") + to_chat(src, "Your powers are on cooldown! You must wait 20 seconds between bombs.") /obj/guardian_bomb name = "bomb" @@ -64,14 +64,14 @@ /obj/guardian_bomb/proc/disable() stored_obj.forceMove(get_turf(src)) - to_chat(spawner, "Failure! Your trap didn't catch anyone this time.") + to_chat(spawner, "Failure! Your trap didn't catch anyone this time.") qdel(src) /obj/guardian_bomb/proc/detonate(mob/living/user) if(isliving(user)) if(user != spawner && user != spawner.summoner && !spawner.hasmatchingsummoner(user)) - to_chat(user, "[src] was boobytrapped!") - to_chat(spawner, "Success! Your trap caught [user]") + to_chat(user, "[src] was boobytrapped!") + to_chat(spawner, "Success! Your trap caught [user]") var/turf/T = get_turf(src) stored_obj.forceMove(T) playsound(T,'sound/effects/explosion2.ogg', 200, 1) @@ -81,7 +81,7 @@ else to_chat(user, "[src] glows with a strange light, and you don't touch it.") -/obj/guardian_bomb/Bump(atom/A) +/obj/guardian_bomb/Bumped(atom/A) detonate(A) ..() diff --git a/code/modules/mob/living/simple_animal/guardian/types/gravitokinetic.dm b/code/modules/mob/living/simple_animal/guardian/types/gravitokinetic.dm new file mode 100644 index 00000000000..f7305975968 --- /dev/null +++ b/code/modules/mob/living/simple_animal/guardian/types/gravitokinetic.dm @@ -0,0 +1,62 @@ +//gravitokinetic +/mob/living/simple_animal/hostile/guardian/gravitokinetic + melee_damage_lower = 15 + melee_damage_upper = 15 + damage_coeff = list(BRUTE = 0.75, BURN = 0.75, TOX = 0.75, CLONE = 0.75, STAMINA = 0, OXY = 0.75) + playstyle_string = "As a gravitokinetic type, you can alt click to make the gravity on the ground stronger, and punching applies this effect to a target." + magic_fluff_string = "..And draw the Singularity, an anomalous force of terror." + tech_fluff_string = "Boot sequence complete. Gravitokinetic modules loaded. Holoparasite swarm online." + carp_fluff_string = "CARP CARP CARP! Caught one! It's a gravitokinetic carp! Now do you understand the gravity of the situation?" + var/list/gravito_targets = list() + var/gravity_power_range = 10 //how close the stand must stay to the target to keep the heavy gravity + var/datum/callback/distance_check + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/Initialize() + . = ..() + distance_check = CALLBACK(src, .proc/__distance_check) + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/AttackingTarget() + . = ..() + if(isliving(target) && target != src) + to_chat(src, "Your punch has applied heavy gravity to [target]!") + add_gravity(target, 2) + to_chat(target, "Everything feels really heavy!") + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/AltClickOn(atom/A) + if(isopenturf(A) && is_deployed() && stat != DEAD && in_range(src, A) && !incapacitated()) + var/turf/T = A + if(isspaceturf(T)) + to_chat(src, "You cannot add gravity to space!") + return + visible_message("[src] slams their fist into the [T]!", "You modify the gravity of the [T].") + do_attack_animation(T) + add_gravity(T, 4) + return + return ..() + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/Recall(forced) + . = ..() + to_chat(src, "You have released your gravitokinetic powers!") + for(var/datum/component/C in gravito_targets) + remove_gravity(C) + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/Moved(oldLoc, dir) + . = ..() + for(var/datum/component/C in gravito_targets) + if(get_dist(src, C.parent) > gravity_power_range) + remove_gravity(C) + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/proc/add_gravity(atom/A, new_gravity = 2) + var/datum/component/C = A.AddComponent(/datum/component/forced_gravity,new_gravity) + RegisterSignal(A, COMSIG_MOVABLE_MOVED, distance_check) + gravito_targets.Add(C) + playsound(src, 'sound/effects/gravhit.ogg', 100, 1) + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/proc/remove_gravity(datum/component/C) + UnregisterSignal(C.parent, COMSIG_MOVABLE_MOVED) + gravito_targets.Remove(C) + qdel(C) + +/mob/living/simple_animal/hostile/guardian/gravitokinetic/proc/__distance_check(atom/movable/AM, OldLoc, Dir, Forced) + if(get_dist(src, AM) > gravity_power_range) + remove_gravity(AM.GetComponent(/datum/component/forced_gravity)) 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 cfdf302d6bf..8633de27d7c 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -91,6 +91,8 @@ to_chat(user, "Someone else already took this spider.") return 1 key = user.key + if(directive) + log_game("[key_name(src)] took control of [name] with the objective: '[directive]'.") return 1 //nursemaids - these create webs and eggs @@ -175,14 +177,17 @@ status_flags = NONE mob_size = MOB_SIZE_LARGE gold_core_spawnable = NO_SPAWN + var/slowed_by_webs = FALSE -/mob/living/simple_animal/hostile/poison/giant_spider/tarantula/movement_delay() - var/turf/T = get_turf(src) - if(locate(/obj/structure/spider/stickyweb) in T) - speed = 2 - else - speed = 7 +/mob/living/simple_animal/hostile/poison/giant_spider/tarantula/Moved(atom/oldloc, dir) . = ..() + if(slowed_by_webs) + if(!(locate(/obj/structure/spider/stickyweb) in loc)) + remove_movespeed_modifier(MOVESPEED_ID_TARANTULA_WEB) + slowed_by_webs = FALSE + else if(locate(/obj/structure/spider/stickyweb) in loc) + add_movespeed_modifier(MOVESPEED_ID_TARANTULA_WEB, priority=100, multiplicative_slowdown=3) + slowed_by_webs = TRUE //midwives are the queen of the spiders, can send messages to all them and web faster. That rare round where you get a queen spider and turn your 'for honor' players into 'r6siege' players will be a fun one. /mob/living/simple_animal/hostile/poison/giant_spider/nurse/midwife @@ -480,12 +485,24 @@ desc = "Set a directive for your children to follow." check_flags = AB_CHECK_CONSCIOUS button_icon_state = "directive" + +/datum/action/innate/spider/set_directive/IsAvailable() + if(..()) + if(!istype(owner, /mob/living/simple_animal/hostile/poison/giant_spider)) + return FALSE + var/mob/living/simple_animal/hostile/poison/giant_spider/S = owner + if(S.playable_spider) + return FALSE + return TRUE /datum/action/innate/spider/set_directive/Activate() if(!istype(owner, /mob/living/simple_animal/hostile/poison/giant_spider/nurse)) return var/mob/living/simple_animal/hostile/poison/giant_spider/nurse/S = owner - S.directive = stripped_input(S, "Enter the new directive", "Create directive", "[S.directive]") + if(!S.playable_spider) + S.directive = stripped_input(S, "Enter the new directive", "Create directive", "[S.directive]") + message_admins("[ADMIN_LOOKUPFLW(owner)] set its directive to: '[S.directive]'.") + log_game("[key_name(owner)] set its directive to: '[S.directive]'.") /mob/living/simple_animal/hostile/poison/giant_spider/Login() . = ..() diff --git a/code/modules/mob/living/simple_animal/hostile/goose.dm b/code/modules/mob/living/simple_animal/hostile/goose.dm new file mode 100644 index 00000000000..a0a2073a790 --- /dev/null +++ b/code/modules/mob/living/simple_animal/hostile/goose.dm @@ -0,0 +1,57 @@ +/mob/living/simple_animal/hostile/retaliate/goose + name = "goose" + desc = "It's loose" + icon_state = "goose" + icon_living = "goose" + icon_dead = "goose_dead" + mob_biotypes = list(MOB_ORGANIC, MOB_BEAST) + speak_chance = 0 + turns_per_move = 5 + butcher_results = list(/obj/item/reagent_containers/food/snacks/meat = 2) + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "hits" + emote_taunt = list("hisses") + taunt_chance = 30 + speed = 0 + maxHealth = 25 + health = 25 + harm_intent_damage = 5 + melee_damage_lower = 5 + melee_damage_upper = 5 + attacktext = "pecks" + attack_sound = "goose" + speak_emote = list("honks") + faction = list("neutral") + attack_same = TRUE + gold_core_spawnable = HOSTILE_SPAWN + var/icon_resting = "goose_sit" + + +/mob/living/simple_animal/hostile/retaliate/goose/toggle_ai(togglestatus) + . = ..() + if(!key) + if(AIStatus != AI_ON) + set_resting(TRUE) + else + set_resting(FALSE) + +/mob/living/simple_animal/hostile/retaliate/goose/update_resting() + . = ..() + if(resting) + wander = FALSE + else + wander = TRUE + update_icon() + +/mob/living/simple_animal/hostile/retaliate/goose/handle_automated_movement() + . = ..() + if(prob(5)) + Retaliate() + +/mob/living/simple_animal/hostile/retaliate/goose/proc/update_icon() + if(stat != DEAD) + icon_state = resting ? icon_resting : icon_living + else + icon_state = icon_dead + diff --git a/code/modules/mob/living/simple_animal/hostile/headcrab.dm b/code/modules/mob/living/simple_animal/hostile/headcrab.dm index cf78af42ce6..9600141c1b5 100644 --- a/code/modules/mob/living/simple_animal/hostile/headcrab.dm +++ b/code/modules/mob/living/simple_animal/hostile/headcrab.dm @@ -42,7 +42,7 @@ // Changeling egg can survive in aliens! var/mob/living/carbon/C = target if(C.stat == DEAD) - if(C.has_trait(TRAIT_XENO_HOST)) + if(HAS_TRAIT(C, TRAIT_XENO_HOST)) to_chat(src, "A foreign presence repels us from this body. Perhaps we should try to infest another?") return Infect(target) @@ -65,7 +65,6 @@ /obj/item/organ/body_egg/changeling_egg/proc/Pop() var/mob/living/carbon/monkey/M = new(owner) - owner.stomach_contents += M for(var/obj/item/organ/I in src) I.Insert(M, 1) diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index f2c9a6ef96e..751d6a87c4d 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -100,7 +100,7 @@ if(!target || !isturf(target.loc) || !isturf(loc) || stat == DEAD) return var/target_dir = get_dir(src,target) - + var/static/list/cardinal_sidestep_directions = list(-90,-45,0,45,90) var/static/list/diagonal_sidestep_directions = list(-45,0,45) var/chosen_dir = 0 @@ -296,7 +296,7 @@ if(target) if(targets_from && isturf(targets_from.loc) && target.Adjacent(targets_from)) //If they're next to us, attack MeleeAction() - else + else if(rapid_melee > 1 && target_distance <= melee_queue_distance) MeleeAction(FALSE) in_melee = FALSE //If we're just preparing to strike do not enter sidestep mode @@ -444,14 +444,18 @@ /mob/living/simple_animal/hostile/proc/DestroyObjectsInDirection(direction) var/turf/T = get_step(targets_from, direction) - if(T && T.Adjacent(targets_from)) + if(QDELETED(T)) + return + if(T.Adjacent(targets_from)) if(CanSmashTurfs(T)) T.attack_animal(src) - for(var/obj/O in T) - if(O.density && environment_smash >= ENVIRONMENT_SMASH_STRUCTURES && !O.IsObscured()) - O.attack_animal(src) - return - + return + for(var/obj/O in T.contents) + if(!O.Adjacent(targets_from)) + continue + if((ismachinery(O) || isstructure(O)) && O.density && environment_smash >= ENVIRONMENT_SMASH_STRUCTURES && !O.IsObscured()) + O.attack_animal(src) + return /mob/living/simple_animal/hostile/proc/DestroyPathToTarget() if(environment_smash) diff --git a/code/modules/mob/living/simple_animal/hostile/jungle/mega_arachnid.dm b/code/modules/mob/living/simple_animal/hostile/jungle/mega_arachnid.dm index 607db5d54ff..4f2a395123e 100644 --- a/code/modules/mob/living/simple_animal/hostile/jungle/mega_arachnid.dm +++ b/code/modules/mob/living/simple_animal/hostile/jungle/mega_arachnid.dm @@ -50,7 +50,7 @@ /obj/item/projectile/mega_arachnid name = "flesh snare" - nodamage = 1 + nodamage = TRUE damage = 0 icon_state = "tentacle_end" 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 16694d6188f..f1103b32bc0 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -439,7 +439,7 @@ Difficulty: Hard ..() toggle_ai(AI_OFF) -/mob/living/simple_animal/hostile/megafauna/bubblegum/hallucination/charge() +/mob/living/simple_animal/hostile/megafauna/bubblegum/hallucination/charge(var/atom/chargeat = target, var/delay = 3, var/chargepast = 2) ..() qdel(src) @@ -493,4 +493,4 @@ Difficulty: Hard /mob/living/simple_animal/hostile/asteroid/hivelordbrood/slaughter/CanPass(atom/movable/mover, turf/target) if(istype(mover, /mob/living/simple_animal/hostile/megafauna/bubblegum)) return 1 - return 0 \ No newline at end of file + return 0 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 29a320021eb..27e736bafcc 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm @@ -1,3 +1,4 @@ +#define COLOSSUS_SLEEP(X) sleep(X); if(QDELETED(src)) return; /* COLOSSUS @@ -73,7 +74,7 @@ Difficulty: Very Hard telegraph() if(health < maxHealth/3) - double_spiral() + INVOKE_ASYNC(src, .proc/double_spiral) else visible_message("\"Judgement.\"") INVOKE_ASYNC(src, .proc/spiral_shoot, pick(TRUE, FALSE)) @@ -123,17 +124,17 @@ Difficulty: Very Hard /mob/living/simple_animal/hostile/megafauna/colossus/proc/alternating_dir_shots() dir_shots(GLOB.diagonals) - sleep(10) + COLOSSUS_SLEEP(10) dir_shots(GLOB.cardinals) - sleep(10) + COLOSSUS_SLEEP(10) dir_shots(GLOB.diagonals) - sleep(10) + COLOSSUS_SLEEP(10) dir_shots(GLOB.cardinals) /mob/living/simple_animal/hostile/megafauna/colossus/proc/double_spiral() visible_message("\"Die.\"") - sleep(10) + COLOSSUS_SLEEP(10) INVOKE_ASYNC(src, .proc/spiral_shoot) INVOKE_ASYNC(src, .proc/spiral_shoot, TRUE) @@ -151,7 +152,7 @@ Difficulty: Very Hard counter = 16 shoot_projectile(start_turf, counter * 22.5) playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 20, 1) - sleep(1) + COLOSSUS_SLEEP(1) /mob/living/simple_animal/hostile/megafauna/colossus/proc/shoot_projectile(turf/marker, set_angle) if(!isnum(set_angle) && (!marker || marker == loc)) @@ -553,7 +554,7 @@ Difficulty: Very Hard H.regenerate_limbs() H.regenerate_organs() H.revive(1,0) - H.add_trait(TRAIT_BADDNA, MAGIC_TRAIT) //Free revives, but significantly limits your options for reviving except via the crystal + ADD_TRAIT(H, TRAIT_BADDNA, MAGIC_TRAIT) //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 @@ -716,7 +717,7 @@ Difficulty: Very Hard if(isliving(A) && holder_animal) var/mob/living/L = A L.notransform = 1 - L.add_trait(TRAIT_MUTE, STASIS_MUTE) + ADD_TRAIT(L, TRAIT_MUTE, STASIS_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 @@ -726,7 +727,7 @@ Difficulty: Very Hard /obj/structure/closet/stasis/dump_contents(var/kill = 1) STOP_PROCESSING(SSobj, src) for(var/mob/living/L in src) - L.remove_trait(TRAIT_MUTE, STASIS_MUTE) + REMOVE_TRAIT(L, TRAIT_MUTE, STASIS_MUTE) L.status_flags &= ~GODMODE L.notransform = 0 if(holder_animal) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm index c969d513938..ea7b8849793 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm @@ -3,6 +3,7 @@ #define SWOOP_DAMAGEABLE 1 #define SWOOP_INVULNERABLE 2 +#define DRAKE_SLEEP(X) sleep(X); if(QDELETED(src) || stat == DEAD) return; /* @@ -132,25 +133,29 @@ Difficulty: Medium return target.visible_message("Lava starts to pool up around you!") while(amount > 0) - if(!target) + if(QDELETED(target)) break var/turf/T = pick(RANGE_TURFS(1, target)) new /obj/effect/temp_visual/lava_warning(T, 60) // longer reset time for the lava amount-- - sleep(delay) + DRAKE_SLEEP(delay) /mob/living/simple_animal/hostile/megafauna/dragon/proc/lava_swoop(var/amount = 30) INVOKE_ASYNC(src, .proc/lava_pools, amount) swoop_attack(FALSE, target, 1000) // longer cooldown until it gets reset below + if(QDELETED(src) || stat == DEAD) + return fire_cone() if(health < maxHealth*0.5) - sleep(10) + DRAKE_SLEEP(10) fire_cone() - sleep(10) + DRAKE_SLEEP(10) fire_cone() SetRecoveryTime(40) /mob/living/simple_animal/hostile/megafauna/dragon/proc/mass_fire(var/spiral_count = 12, var/range = 15, var/times = 3) + if(QDELETED(src) || stat == DEAD) + return for(var/i = 1 to times) SetRecoveryTime(50) playsound(get_turf(src),'sound/magic/fireball.ogg', 200, 1) @@ -158,7 +163,7 @@ Difficulty: Medium for(var/j = 1 to spiral_count) var/list/turfs = line_target(j * increment + i * increment / 2, range, src) INVOKE_ASYNC(src, .proc/fire_line, turfs) - sleep(25) + DRAKE_SLEEP(25) SetRecoveryTime(30) /mob/living/simple_animal/hostile/megafauna/dragon/proc/lava_arena() @@ -179,7 +184,7 @@ Difficulty: Medium T.ChangeTurf(/turf/open/floor/plating/asteroid/basalt/lava_land_surface) else indestructible_turfs += T - sleep(10) // give them a bit of time to realize what attack is actually happening + DRAKE_SLEEP(10) // give them a bit of time to realize what attack is actually happening var/list/turfs = RANGE_TURFS(2, center) while(amount > 0) @@ -203,10 +208,12 @@ Difficulty: Medium else if(!istype(T, /turf/closed/indestructible)) new /obj/effect/temp_visual/lava_safe(T) amount-- - sleep(24) + DRAKE_SLEEP(24) return 1 // attack finished completely /mob/living/simple_animal/hostile/megafauna/dragon/proc/arena_escape_enrage() // you ran somehow / teleported away from my arena attack now i'm mad fucker + if(QDELETED(src) || stat == DEAD) + return //angry but helpless SetRecoveryTime(80) visible_message("[src] starts to glow vibrantly as its wounds close up!") adjustBruteLoss(-250) // yeah you're gonna pay for that, don't run nerd @@ -214,10 +221,12 @@ Difficulty: Medium move_to_delay = move_to_delay / 2 light_range = 10 sleep(10) // run. - mass_fire(20, 15, 3) - remove_atom_colour(TEMPORARY_COLOUR_PRIORITY) - move_to_delay = initial(move_to_delay) - light_range = initial(light_range) + if(!QDELETED(src)) + if(stat != DEAD) + mass_fire(20, 15, 3) + move_to_delay = initial(move_to_delay) + remove_atom_colour(TEMPORARY_COLOUR_PRIORITY) + light_range = initial(light_range) /mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_cone(var/atom/at = target) playsound(get_turf(src),'sound/magic/fireball.ogg', 200, 1) @@ -245,6 +254,10 @@ Difficulty: Medium return (getline(src, T) - get_turf(src)) /mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_line(var/list/turfs) + dragon_fire_line(src, turfs) + +//fire line keeps going even if dragon is deleted +/proc/dragon_fire_line(var/source, var/list/turfs) var/list/hit_list = list() for(var/turf/T in turfs) if(istype(T, /turf/closed)) @@ -252,11 +265,11 @@ Difficulty: Medium new /obj/effect/hotspot(T) T.hotspot_expose(700,50,1) for(var/mob/living/L in T.contents) - if(L in hit_list || L == src) + if(L in hit_list || L == source) continue hit_list += L L.adjustFireLoss(20) - to_chat(L, "You're hit by [src]'s fire breath!") + to_chat(L, "You're hit by [source]'s fire breath!") // deals damage to mechs for(var/obj/mecha/M in T.contents) @@ -306,6 +319,7 @@ Difficulty: Medium swooping |= SWOOP_INVULNERABLE mouse_opacity = MOUSE_OPACITY_TRANSPARENT sleep(7) + //badmins please don't kill it while it's invulnerable while(target && loc != get_turf(target)) forceMove(get_step(src, get_dir(src, target))) @@ -354,6 +368,8 @@ Difficulty: Medium density = TRUE sleep(1) + if(QDELETED(src)) + return swooping &= ~SWOOP_DAMAGEABLE SetRecoveryTime(swoop_cooldown) if(!lava_success) @@ -496,7 +512,7 @@ Difficulty: Medium /mob/living/simple_animal/hostile/megafauna/dragon/lesser/grant_achievement(medaltype,scoretype) return - + /mob/living/simple_animal/hostile/megafauna/dragon/space_dragon name = "space dragon" maxHealth = 250 @@ -522,8 +538,8 @@ Difficulty: Medium var/datum/action/small_sprite/carpsprite = new/datum/action/small_sprite/spacedragon() /mob/living/simple_animal/hostile/megafauna/dragon/space_dragon/grant_achievement(medaltype,scoretype) - return - + return + /mob/living/simple_animal/hostile/megafauna/dragon/space_dragon/Initialize() carpsprite.Grant(src) mob_spell_list += new /obj/effect/proc_holder/spell/aoe_turf/repulse/spacedragon(src) @@ -538,7 +554,7 @@ Difficulty: Medium var/list/turfs = list() turfs = line_target(0, range, at) INVOKE_ASYNC(src, .proc/fire_line, turfs) - + /mob/living/simple_animal/hostile/megafauna/dragon/space_dragon/OpenFire() if(swooping) return @@ -567,3 +583,5 @@ Difficulty: Medium playsound(C.loc,'sound/effects/hit_punch.ogg', 80, 1, 1) C.spin(6,1) ..(targets, user, 60) + +/mob/living/simple_animal/hostile/megafauna/dragon/space_dragon/AltClickOn(atom/movable/A) 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 89facd23a48..ac335a90db7 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm @@ -43,7 +43,7 @@ if(internal_type && true_spawn) internal = new internal_type(src) apply_status_effect(STATUS_EFFECT_CRUSHERDAMAGETRACKING) - add_trait(TRAIT_NO_TELEPORT, MEGAFAUNA_TRAIT) + ADD_TRAIT(src, TRAIT_NO_TELEPORT, MEGAFAUNA_TRAIT) /mob/living/simple_animal/hostile/megafauna/Destroy() QDEL_NULL(internal) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/basilisk.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/basilisk.dm index 2fbcf376dde..6e15f39ae8c 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/basilisk.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/basilisk.dm @@ -40,7 +40,7 @@ icon_state = "ice_2" damage = 0 damage_type = BURN - nodamage = 1 + nodamage = TRUE flag = "energy" temperature = 50 diff --git a/code/modules/mob/living/simple_animal/hostile/netherworld.dm b/code/modules/mob/living/simple_animal/hostile/netherworld.dm index 0efc11aa388..1c6b16d7671 100644 --- a/code/modules/mob/living/simple_animal/hostile/netherworld.dm +++ b/code/modules/mob/living/simple_animal/hostile/netherworld.dm @@ -33,7 +33,7 @@ /mob/living/simple_animal/hostile/netherworld/migo/Initialize() . = ..() - migo_sounds = list('sound/items/bubblewrap.ogg', 'sound/items/change_jaws.ogg', 'sound/items/crowbar.ogg', 'sound/items/drink.ogg', 'sound/items/deconstruct.ogg', 'sound/items/carhorn.ogg', 'sound/items/change_drill.ogg', 'sound/items/dodgeball.ogg', 'sound/items/eatfood.ogg', 'sound/items/megaphone.ogg', 'sound/items/screwdriver.ogg', 'sound/items/weeoo1.ogg', 'sound/items/wirecutter.ogg', 'sound/items/welder.ogg', 'sound/items/zip.ogg', 'sound/items/rped.ogg', 'sound/items/ratchet.ogg', 'sound/items/polaroid1.ogg', 'sound/items/pshoom.ogg', 'sound/items/airhorn.ogg', 'sound/items/geiger/high1.ogg', 'sound/items/geiger/high2.ogg', 'sound/voice/beepsky/creep.ogg', 'sound/voice/beepsky/iamthelaw.ogg', 'sound/voice/ed209_20sec.ogg', 'sound/voice/hiss3.ogg', 'sound/voice/hiss6.ogg', 'sound/voice/medbot/patchedup.ogg', 'sound/voice/medbot/feelbetter.ogg', 'sound/voice/human/manlaugh1.ogg', 'sound/voice/human/womanlaugh.ogg', 'sound/weapons/sear.ogg', 'sound/ambience/antag/clockcultalr.ogg', 'sound/ambience/antag/ling_aler.ogg', 'sound/ambience/antag/tatoralert.ogg', 'sound/ambience/antag/monkey.ogg', 'sound/mecha/nominal.ogg', 'sound/mecha/weapdestr.ogg', 'sound/mecha/critdestr.ogg', 'sound/mecha/imag_enh.ogg', 'sound/effects/adminhelp.ogg', 'sound/effects/alert.ogg', 'sound/effects/attackblob.ogg', 'sound/effects/bamf.ogg', 'sound/effects/blobattack.ogg', 'sound/effects/break_stone.ogg', 'sound/effects/bubbles.ogg', 'sound/effects/bubbles2.ogg', 'sound/effects/clang.ogg', 'sound/effects/clockcult_gateway_disrupted.ogg', 'sound/effects/clownstep2.ogg', 'sound/effects/curse1.ogg', 'sound/effects/dimensional_rend.ogg', 'sound/effects/doorcreaky.ogg', 'sound/effects/empulse.ogg', 'sound/effects/explosion_distant.ogg', 'sound/effects/explosionfar.ogg', 'sound/effects/explosion1.ogg', 'sound/effects/grillehit.ogg', 'sound/effects/genetics.ogg', 'sound/effects/heart_beat.ogg', 'sound/effects/hyperspace_begin.ogg', 'sound/effects/hyperspace_end.ogg', 'sound/effects/his_grace_awaken.ogg', 'sound/effects/pai_boot.ogg', 'sound/effects/phasein.ogg', 'sound/effects/picaxe1.ogg', 'sound/effects/ratvar_reveal.ogg', 'sound/effects/sparks1.ogg', 'sound/effects/smoke.ogg', 'sound/effects/splat.ogg', 'sound/effects/snap.ogg', 'sound/effects/tendril_destroyed.ogg', 'sound/effects/supermatter.ogg', 'sound/misc/desceration-01.ogg', 'sound/misc/desceration-02.ogg', 'sound/misc/desceration-03.ogg', 'sound/misc/bloblarm.ogg', 'sound/misc/airraid.ogg', 'sound/misc/bang.ogg','sound/misc/highlander.ogg', 'sound/misc/interference.ogg', 'sound/misc/notice1.ogg', 'sound/misc/notice2.ogg', 'sound/misc/sadtrombone.ogg', 'sound/misc/slip.ogg', 'sound/misc/splort.ogg', 'sound/weapons/armbomb.ogg', 'sound/weapons/beam_sniper.ogg', 'sound/weapons/chainsawhit.ogg', 'sound/weapons/emitter.ogg', 'sound/weapons/emitter2.ogg', 'sound/weapons/blade1.ogg', 'sound/weapons/bladeslice.ogg', 'sound/weapons/blastcannon.ogg', 'sound/weapons/blaster.ogg', 'sound/weapons/bulletflyby3.ogg', 'sound/weapons/circsawhit.ogg', 'sound/weapons/cqchit2.ogg', 'sound/weapons/drill.ogg', 'sound/weapons/genhit1.ogg', 'sound/weapons/gunshot_silenced.ogg', 'sound/weapons/gunshot.ogg', 'sound/weapons/handcuffs.ogg', 'sound/weapons/homerun.ogg', 'sound/weapons/kenetic_accel.ogg', 'sound/machines/clockcult/steam_whoosh.ogg', 'sound/machines/fryer/deep_fryer_emerge.ogg', 'sound/machines/airlock.ogg', 'sound/machines/airlock_alien_prying.ogg', 'sound/machines/airlockclose.ogg', 'sound/machines/airlockforced.ogg', 'sound/machines/airlockopen.ogg', 'sound/machines/alarm.ogg', 'sound/machines/blender.ogg', 'sound/machines/boltsdown.ogg', 'sound/machines/boltsup.ogg', 'sound/machines/buzz-sigh.ogg', 'sound/machines/buzz-two.ogg', 'sound/machines/chime.ogg', 'sound/machines/cryo_warning.ogg', 'sound/machines/defib_charge.ogg', 'sound/machines/defib_failed.ogg', 'sound/machines/defib_ready.ogg', 'sound/machines/defib_zap.ogg', 'sound/machines/deniedbeep.ogg', 'sound/machines/ding.ogg', 'sound/machines/disposalflush.ogg', 'sound/machines/door_close.ogg', 'sound/machines/door_open.ogg', 'sound/machines/engine_alert1.ogg', 'sound/machines/engine_alert2.ogg', 'sound/machines/hiss.ogg', 'sound/machines/honkbot_evil_laugh.ogg', 'sound/machines/juicer.ogg', 'sound/machines/ping.ogg', 'sound/machines/signal.ogg', 'sound/machines/synth_no.ogg', 'sound/machines/synth_yes.ogg', 'sound/machines/terminal_alert.ogg', 'sound/machines/triple_beep.ogg', 'sound/machines/twobeep.ogg', 'sound/machines/ventcrawl.ogg', 'sound/machines/warning-buzzer.ogg', 'sound/ai/outbreak5.ogg', 'sound/ai/outbreak7.ogg', 'sound/ai/poweroff.ogg', 'sound/ai/radiation.ogg', 'sound/ai/shuttlecalled.ogg', 'sound/ai/shuttledock.ogg', 'sound/ai/shuttlerecalled.ogg', 'sound/ai/aimalf.ogg') //hahahaha fuck you code divers + migo_sounds = list('sound/items/bubblewrap.ogg', 'sound/items/change_jaws.ogg', 'sound/items/crowbar.ogg', 'sound/items/drink.ogg', 'sound/items/deconstruct.ogg', 'sound/items/carhorn.ogg', 'sound/items/change_drill.ogg', 'sound/items/dodgeball.ogg', 'sound/items/eatfood.ogg', 'sound/items/megaphone.ogg', 'sound/items/screwdriver.ogg', 'sound/items/weeoo1.ogg', 'sound/items/wirecutter.ogg', 'sound/items/welder.ogg', 'sound/items/zip.ogg', 'sound/items/rped.ogg', 'sound/items/ratchet.ogg', 'sound/items/polaroid1.ogg', 'sound/items/pshoom.ogg', 'sound/items/airhorn.ogg', 'sound/items/geiger/high1.ogg', 'sound/items/geiger/high2.ogg', 'sound/voice/beepsky/creep.ogg', 'sound/voice/beepsky/iamthelaw.ogg', 'sound/voice/ed209_20sec.ogg', 'sound/voice/hiss3.ogg', 'sound/voice/hiss6.ogg', 'sound/voice/medbot/patchedup.ogg', 'sound/voice/medbot/feelbetter.ogg', 'sound/voice/human/manlaugh1.ogg', 'sound/voice/human/womanlaugh.ogg', 'sound/weapons/sear.ogg', 'sound/ambience/antag/clockcultalr.ogg', 'sound/ambience/antag/ling_aler.ogg', 'sound/ambience/antag/tatoralert.ogg', 'sound/ambience/antag/monkey.ogg', 'sound/mecha/nominal.ogg', 'sound/mecha/weapdestr.ogg', 'sound/mecha/critdestr.ogg', 'sound/mecha/imag_enh.ogg', 'sound/effects/adminhelp.ogg', 'sound/effects/alert.ogg', 'sound/effects/attackblob.ogg', 'sound/effects/bamf.ogg', 'sound/effects/blobattack.ogg', 'sound/effects/break_stone.ogg', 'sound/effects/bubbles.ogg', 'sound/effects/bubbles2.ogg', 'sound/effects/clang.ogg', 'sound/effects/clockcult_gateway_disrupted.ogg', 'sound/effects/clownstep2.ogg', 'sound/effects/curse1.ogg', 'sound/effects/dimensional_rend.ogg', 'sound/effects/doorcreaky.ogg', 'sound/effects/empulse.ogg', 'sound/effects/explosion_distant.ogg', 'sound/effects/explosionfar.ogg', 'sound/effects/explosion1.ogg', 'sound/effects/grillehit.ogg', 'sound/effects/genetics.ogg', 'sound/effects/heart_beat.ogg', 'sound/effects/hyperspace_begin.ogg', 'sound/effects/hyperspace_end.ogg', 'sound/effects/his_grace_awaken.ogg', 'sound/effects/pai_boot.ogg', 'sound/effects/phasein.ogg', 'sound/effects/picaxe1.ogg', 'sound/effects/ratvar_reveal.ogg', 'sound/effects/sparks1.ogg', 'sound/effects/smoke.ogg', 'sound/effects/splat.ogg', 'sound/effects/snap.ogg', 'sound/effects/tendril_destroyed.ogg', 'sound/effects/supermatter.ogg', 'sound/misc/desceration-01.ogg', 'sound/misc/desceration-02.ogg', 'sound/misc/desceration-03.ogg', 'sound/misc/bloblarm.ogg', 'sound/misc/airraid.ogg', 'sound/misc/bang.ogg','sound/misc/highlander.ogg', 'sound/misc/interference.ogg', 'sound/misc/notice1.ogg', 'sound/misc/notice2.ogg', 'sound/misc/sadtrombone.ogg', 'sound/misc/slip.ogg', 'sound/misc/splort.ogg', 'sound/weapons/armbomb.ogg', 'sound/weapons/beam_sniper.ogg', 'sound/weapons/chainsawhit.ogg', 'sound/weapons/emitter.ogg', 'sound/weapons/emitter2.ogg', 'sound/weapons/blade1.ogg', 'sound/weapons/bladeslice.ogg', 'sound/weapons/blastcannon.ogg', 'sound/weapons/blaster.ogg', 'sound/weapons/bulletflyby3.ogg', 'sound/weapons/circsawhit.ogg', 'sound/weapons/cqchit2.ogg', 'sound/weapons/drill.ogg', 'sound/weapons/genhit1.ogg', 'sound/weapons/gunshot_silenced.ogg', 'sound/weapons/gunshot.ogg', 'sound/weapons/handcuffs.ogg', 'sound/weapons/homerun.ogg', 'sound/weapons/kenetic_accel.ogg', 'sound/machines/clockcult/steam_whoosh.ogg', 'sound/machines/fryer/deep_fryer_emerge.ogg', 'sound/machines/airlock.ogg', 'sound/machines/airlock_alien_prying.ogg', 'sound/machines/airlockclose.ogg', 'sound/machines/airlockforced.ogg', 'sound/machines/airlockopen.ogg', 'sound/machines/alarm.ogg', 'sound/machines/blender.ogg', 'sound/machines/boltsdown.ogg', 'sound/machines/boltsup.ogg', 'sound/machines/buzz-sigh.ogg', 'sound/machines/buzz-two.ogg', 'sound/machines/chime.ogg', 'sound/machines/cryo_warning.ogg', 'sound/machines/defib_charge.ogg', 'sound/machines/defib_failed.ogg', 'sound/machines/defib_ready.ogg', 'sound/machines/defib_zap.ogg', 'sound/machines/deniedbeep.ogg', 'sound/machines/ding.ogg', 'sound/machines/disposalflush.ogg', 'sound/machines/door_close.ogg', 'sound/machines/door_open.ogg', 'sound/machines/engine_alert1.ogg', 'sound/machines/engine_alert2.ogg', 'sound/machines/hiss.ogg', 'sound/machines/honkbot_evil_laugh.ogg', 'sound/machines/juicer.ogg', 'sound/machines/ping.ogg', 'sound/ambience/signal.ogg', 'sound/machines/synth_no.ogg', 'sound/machines/synth_yes.ogg', 'sound/machines/terminal_alert.ogg', 'sound/machines/triple_beep.ogg', 'sound/machines/twobeep.ogg', 'sound/machines/ventcrawl.ogg', 'sound/machines/warning-buzzer.ogg', 'sound/ai/outbreak5.ogg', 'sound/ai/outbreak7.ogg', 'sound/ai/poweroff.ogg', 'sound/ai/radiation.ogg', 'sound/ai/shuttlecalled.ogg', 'sound/ai/shuttledock.ogg', 'sound/ai/shuttlerecalled.ogg', 'sound/ai/aimalf.ogg') //hahahaha fuck you code divers /mob/living/simple_animal/hostile/netherworld/migo/say(message, bubble_type, var/list/spans = list(), sanitize = TRUE, datum/language/language = null, ignore_spam = FALSE, forced = null) ..() 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 cd978b70665..609f610c2c2 100644 --- a/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm +++ b/code/modules/mob/living/simple_animal/hostile/retaliate/clown.dm @@ -1,7 +1,7 @@ /mob/living/simple_animal/hostile/retaliate/clown name = "Clown" desc = "A denizen of clown planet." - icon = 'icons/mob/simple_human.dmi' + icon = 'icons/mob/clown_mobs.dmi' icon_state = "clown" icon_living = "clown" icon_dead = "clown_dead" @@ -32,8 +32,10 @@ minbodytemp = 270 maxbodytemp = 370 unsuitable_atmos_damage = 10 - do_footstep = TRUE + var/banana_time = 0 // If there's no time set it won't spawn. + var/banana_type = /obj/item/grown/bananapeel + var/attack_reagent /mob/living/simple_animal/hostile/retaliate/clown/handle_temperature_damage() if(bodytemperature < minbodytemp) @@ -44,3 +46,232 @@ /mob/living/simple_animal/hostile/retaliate/clown/attack_hand(mob/living/carbon/human/M) ..() playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1) + +/mob/living/simple_animal/hostile/retaliate/clown/Life() + . = ..() + if(banana_time && banana_time < world.time) + var/turf/T = get_turf(src) + var/list/adjacent = T.GetAtmosAdjacentTurfs(1) + new banana_type(pick(adjacent)) + banana_time = world.time + rand(30,60) + +/mob/living/simple_animal/hostile/retaliate/clown/AttackingTarget() + . = ..() + if(attack_reagent && . && isliving(target)) + var/mob/living/L = target + if(L.reagents) + L.reagents.add_reagent(attack_reagent, rand(1,5)) + +/mob/living/simple_animal/hostile/retaliate/clown/lube + name = "Living Lube" + desc = "A puddle of lube brought to life by the honkmother." + icon_state = "lube" + icon_living = "lube" + turns_per_move = 1 + response_help = "dips a finger into" + response_disarm = "gently scoops and pours aside" + emote_see = list("bubbles", "oozes") + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/particle_effect/foam) + +/mob/living/simple_animal/hostile/retaliate/clown/lube/Life() + . = ..() + var/turf/open/OT = get_turf(src) + if(isopenturf(OT)) + OT.MakeSlippery(TURF_WET_LUBE, 100) + +/mob/living/simple_animal/hostile/retaliate/clown/banana + name = "Clownana" + desc = "A fusion of clown and banana DNA birthed from a botany experiment gone wrong." + icon_state = "banana tree" + icon_living = "banana tree" + response_help = "pokes" + response_disarm = "peels" + response_harm = "peels" + turns_per_move = 1 + speak = list("HONK", "Honk!", "YA-HONK!!!") + emote_see = list("honks", "bites into the banana", "plucks a banana off its head", "photosynthesizes") + maxHealth = 120 + health = 120 + speed = -10 + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/item/soap, /obj/item/seeds/banana) + banana_time = 20 + +/mob/living/simple_animal/hostile/retaliate/clown/honkling + name = "Honkling" + desc = "A divine being sent by the Honkmother to spread joy. It's not dangerous, but it's a bit of a nuisance." + icon_state = "honkling" + icon_living = "honkling" + turns_per_move = 1 + speed = -10 + harm_intent_damage = 1 + melee_damage_lower = 1 + melee_damage_upper = 1 + attacktext = "cheers up" + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/item/soap, /obj/item/seeds/banana/bluespace) + banana_type = /obj/item/grown/bananapeel + attack_reagent = "laughter" + +/mob/living/simple_animal/hostile/retaliate/clown/fleshclown + name = "Fleshclown" + desc = "A being forged out of the pure essence of pranking, cursed into existence by a cruel maker." + icon_state = "fleshclown" + icon_living = "fleshclown" + response_help = "reluctantly pokes" + response_disarm = "sinks his hands into the spongy flesh of" + response_harm = "cleanses the world of" + speak = list("HONK", "Honk!", "I didn't ask for this", "I feel constant and horrible pain", "YA-HONK!!!", "this body is a merciless and unforgiving prison", "I was born out of mirthful pranking but I live in suffering") + emote_see = list("honks", "sweats", "jiggles", "contemplates its existence") + speak_chance = 5 + dextrous = TRUE + ventcrawler = VENTCRAWLER_ALWAYS + maxHealth = 140 + health = 140 + speed = -5 + melee_damage_upper = 15 + attacktext = "limply slaps" + obj_damage = 5 + loot = list(/obj/item/clothing/suit/hooded/bloated_human, /obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/item/soap) + +/mob/living/simple_animal/hostile/retaliate/clown/longface + name = "Longface" + desc = "Often found walking into the bar." + icon_state = "long face" + icon_living = "long face" + move_resist = INFINITY + turns_per_move = 10 + response_help = "tries awkwardly to hug" + response_disarm = "pushes the unwieldy frame of" + response_harm = "tries to shut up" + speak = list("YA-HONK!!!") + emote_see = list("honks", "squeaks") + speak_chance = 60 + maxHealth = 150 + health = 150 + pixel_x = -16 + speed = 10 + harm_intent_damage = 5 + melee_damage_lower = 5 + attacktext = "YA-HONKs" + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/item/soap) + +/mob/living/simple_animal/hostile/retaliate/clown/clownhulk + name = "Honk Hulk" + desc = "A cruel and fearsome clown. Don't make him angry." + icon_state = "honkhulk" + icon_living = "honkhulk" + move_resist = INFINITY + response_help = "tries desperately to appease" + response_disarm = "foolishly pushes" + response_harm = "angers" + access_card = ACCESS_THEATRE + speak = list("HONK", "Honk!", "HAUAUANK!!!", "GUUURRRRAAAHHH!!!") + emote_see = list("honks", "sweats", "grunts") + speak_chance = 5 + maxHealth = 400 + health = 400 + pixel_x = -16 + speed = 2 + harm_intent_damage = 15 + melee_damage_lower = 15 + melee_damage_upper = 20 + attacktext = "pummels" + obj_damage = 30 + environment_smash = ENVIRONMENT_SMASH_WALLS + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/item/soap) + +/mob/living/simple_animal/hostile/retaliate/clown/clownhulk/chlown + name = "Chlown" + desc = "A real lunkhead who somehow gets all the girls." + icon_state = "chlown" + icon_living = "chlown" + response_help = "submits to" + response_disarm = "tries to assert dominance over" + response_harm = "makes a weak beta attack at" + speak = list("HONK", "Honk!", "Bruh", "cheeaaaahhh?") + emote_see = list("asserts his dominance", "emasculates everyone implicitly") + maxHealth = 500 + health = 500 + speed = -2 + armour_penetration = 20 + attacktext = "steals the girlfriend of" + attack_sound = 'sound/items/airhorn2.ogg' + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/effect/particle_effect/foam, /obj/item/soap) + +/mob/living/simple_animal/hostile/retaliate/clown/clownhulk/honcmunculus + name = "Honkmunculus" + desc = "A slender wiry figure of alchemical origin." + icon_state = "honkmunculus" + icon_living = "honkmunculus" + response_help = "skeptically pokes" + response_disarm = "pushes the unwieldy frame of" + speak = list("honk") + emote_see = list("squirms", "writhes") + speak_chance = 1 + maxHealth = 200 + health = 200 + speed = -5 + harm_intent_damage = 5 + melee_damage_lower = 5 + melee_damage_upper = 10 + attacktext = "ferociously mauls" + environment_smash = ENVIRONMENT_SMASH_NONE + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/xeno/bodypartless, /obj/effect/particle_effect/foam, /obj/item/soap) + attack_reagent = "dizzysolution" + +/mob/living/simple_animal/hostile/retaliate/clown/clownhulk/destroyer + name = "The Destroyer" + desc = "An ancient being born of arcane honking." + icon_state = "destroyer" + icon_living = "destroyer" + response_disarm = "bounces off of" + response_harm = "bounces off of" + speak = list("HONK!!!", "The Honkmother is merciful, so I must act out her wrath.", "parce mihi ad beatus honkmother placet mihi ut peccata committere,", "DIE!!!") + maxHealth = 400 + health = 400 + speed = 5 + harm_intent_damage = 30 + melee_damage_lower = 20 + melee_damage_upper = 40 + armour_penetration = 30 + stat_attack = UNCONSCIOUS + attacktext = "acts out divine vengeance on" + obj_damage = 50 + environment_smash = ENVIRONMENT_SMASH_RWALLS + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/human, /obj/effect/particle_effect/foam, /obj/item/soap) + +/mob/living/simple_animal/hostile/retaliate/clown/mutant + name = "Unknown" + desc = "Kill it for its own sake." + icon_state = "mutant" + icon_living = "mutant" + move_resist = INFINITY + turns_per_move = 10 + response_help = "reluctantly sinks a finger into" + response_disarm = "squishes into" + response_harm = "squishes into" + speak = list("aaaaaahhhhuuhhhuhhhaaaaa", "AAAaaauuuaaAAAaauuhhh", "huuuuuh... hhhhuuuooooonnnnkk", "HuaUAAAnKKKK") + emote_see = list("squirms", "writhes", "pulsates", "froths", "oozes") + speak_chance = 10 + maxHealth = 130 + health = 130 + pixel_x = -16 + speed = -5 + harm_intent_damage = 10 + melee_damage_lower = 10 + melee_damage_upper = 20 + attacktext = "awkwardly flails at" + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/xeno/bodypartless, /obj/item/soap, /obj/effect/gibspawner/generic, /obj/effect/gibspawner/generic/animal, /obj/effect/gibspawner/human/bodypartless, /obj/effect/gibspawner/human) + +/mob/living/simple_animal/hostile/retaliate/clown/mutant/blob + name = "Something that was once a clown" + desc = "A grotesque bulging figure far mutated from it's original state." + icon_state = "blob" + icon_living = "blob" + speak = list("hey, buddy", "HONK!!!", "H-h-h-H-HOOOOONK!!!!", "HONKHONKHONK!!!", "HEY, BUCKO, GET BACK HERE!!!", "HOOOOOOOONK!!!") + emote_see = list("jiggles", "wobbles") + health = 130 + mob_size = MOB_SIZE_LARGE + speed = 20 + attacktext = "bounces off of" + loot = list(/obj/item/clothing/mask/gas/clown_hat, /obj/effect/gibspawner/xeno/bodypartless, /obj/effect/particle_effect/foam, /obj/item/soap, /obj/effect/gibspawner/generic, /obj/effect/gibspawner/generic/animal, /obj/effect/gibspawner/human/bodypartless, /obj/effect/gibspawner/human) + attack_reagent = "mindbreaker" diff --git a/code/modules/mob/living/simple_animal/hostile/syndicate.dm b/code/modules/mob/living/simple_animal/hostile/syndicate.dm index 160457d3d1d..4ca43aaeb8d 100644 --- a/code/modules/mob/living/simple_animal/hostile/syndicate.dm +++ b/code/modules/mob/living/simple_animal/hostile/syndicate.dm @@ -133,10 +133,9 @@ /mob/living/simple_animal/hostile/syndicate/melee/bullet_act(obj/item/projectile/Proj) if(prob(projectile_deflect_chance)) - return ..() - else visible_message("[src] blocks [Proj] with its shield!") return BULLET_ACT_BLOCK + return ..() /mob/living/simple_animal/hostile/syndicate/melee/sword/space icon_state = "syndicate_space_sword" diff --git a/code/modules/mob/living/simple_animal/hostile/tree.dm b/code/modules/mob/living/simple_animal/hostile/tree.dm index ccd1a226a0a..79fc9f91696 100644 --- a/code/modules/mob/living/simple_animal/hostile/tree.dm +++ b/code/modules/mob/living/simple_animal/hostile/tree.dm @@ -12,6 +12,7 @@ response_help = "brushes" response_disarm = "pushes" response_harm = "hits" + faction = list("plants") speed = 1 maxHealth = 250 health = 250 @@ -69,3 +70,4 @@ icon_gib = "festivus_pole" loot = list(/obj/item/stack/rods) speak_emote = list("polls") + faction = list() 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 2f07a61e9ca..497a0c3310f 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 @@ -64,6 +64,7 @@ unsuitable_atmos_damage = 0 faction = list("hostile","vines","plants") var/list/grasping = list() + var/list/tethers = list() var/max_grasps = 4 var/grasp_chance = 20 var/grasp_pull_chance = 85 @@ -75,6 +76,8 @@ var/datum/beam/B = grasping[L] if(B) qdel(B) + for(var/datum/component/tether in tethers) + tether.RemoveComponent() grasping = null return ..() @@ -96,24 +99,31 @@ step(L,get_dir(L,src)) //reel them in L.Paralyze(60) //you can't get away now~ - if(grasping.len < max_grasps) + if(length(grasping) < max_grasps) grasping: for(var/mob/living/L in view(grasp_range, src)) - if(L == src || faction_check_mob(L) || (L in grasping) || L == target) + if(L == src || faction_check_mob(L) || L in grasping || L == target) continue - for(var/t in getline(src,L)) - for(var/a in t) - var/atom/A = a - if(A.density && A != L) + for(var/turf/T in getline(src,L)) + if (T.density) + continue grasping + for(var/obj/O in T) + if(O.density) continue grasping if(prob(grasp_chance)) to_chat(L, "\The [src] has you entangled!") grasping[L] = Beam(L, "vine", time=INFINITY, maxdistance=5, beam_type=/obj/effect/ebeam/vine) - + tethers += list(L.AddComponent(/datum/component/tether, src, grasp_range+1, /obj/effect/ebeam/vine), AddComponent(/datum/component/tether, L, grasp_range+1, /obj/effect/ebeam/vine)) break //only take 1 new victim per cycle /mob/living/simple_animal/hostile/venus_human_trap/OpenFire(atom/the_target) + for(var/turf/T in getline(src,target)) + if (T.density) + return + for(var/obj/O in T) + if(O.density) + return var/dist = get_dist(src,the_target) Beam(the_target, "vine", time=dist*2, maxdistance=dist+2, beam_type=/obj/effect/ebeam/vine) the_target.attack_animal(src) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 59dc7f1b5a7..f64bbd2d00c 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -10,6 +10,7 @@ var/icon_living = "" var/icon_dead = "" //icon when the animal is dead. Don't use animated icons for this. var/icon_gib = null //We only try to show a gibbing animation if this exists. + var/flip_on_death = FALSE //Flip the sprite upside down on death. Mostly here for things lacking custom dead sprites. var/list/speak = list() var/list/speak_emote = list()// Emotes while speaking IE: Ian [emote], [text] -- Ian barks, "WOOF!". Spoken text is generated from the speak variable. @@ -82,6 +83,7 @@ var/datum/personal_crafting/handcrafting 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), AI_Z_OFF (Temporarily off due to nonpresence of players) + var/can_have_ai = TRUE //once we have become sentient, we can never go back var/shouldwakeup = FALSE //convenience var for forcibly waking up an idling AI on next check. @@ -324,6 +326,8 @@ else health = 0 icon_state = icon_dead + if(flip_on_death) + transform = transform.Turn(180) density = FALSE ..() @@ -425,15 +429,18 @@ mobility_flags = MOBILITY_FLAGS_DEFAULT else mobility_flags = NONE + if(!(mobility_flags & MOBILITY_MOVE)) + walk(src, 0) //stop mid walk + update_transform() update_action_buttons_icon() /mob/living/simple_animal/update_transform() var/matrix/ntransform = matrix(transform) //aka transform.Copy() - var/changed = 0 + var/changed = FALSE if(resize != RESIZE_DEFAULT_SIZE) - changed++ + changed = TRUE ntransform.Scale(resize) resize = RESIZE_DEFAULT_SIZE @@ -442,6 +449,7 @@ /mob/living/simple_animal/proc/sentience_act() //Called when a simple animal gains sentience via gold slime potion toggle_ai(AI_OFF) // To prevent any weirdness. + can_have_ai = FALSE /mob/living/simple_animal/update_sight() if(!client) @@ -501,7 +509,7 @@ if(istype(held_item, /obj/item/twohanded)) var/obj/item/twohanded/T = held_item if(T.wielded == 1) - to_chat(usr, "Your other hand is too busy holding the [T.name].") + to_chat(usr, "Your other hand is too busy holding [T].") return var/oindex = active_hand_index active_hand_index = hand_index @@ -556,6 +564,8 @@ LoadComponent(/datum/component/riding) /mob/living/simple_animal/proc/toggle_ai(togglestatus) + if(!can_have_ai && (togglestatus != AI_OFF)) + return if (AIStatus != togglestatus) if (togglestatus > 0 && togglestatus < 5) if (togglestatus == AI_Z_OFF || AIStatus == AI_Z_OFF) diff --git a/code/modules/mob/living/simple_animal/slime/life.dm b/code/modules/mob/living/simple_animal/slime/life.dm index c7d0e270131..65aabab813e 100644 --- a/code/modules/mob/living/simple_animal/slime/life.dm +++ b/code/modules/mob/living/simple_animal/slime/life.dm @@ -41,7 +41,7 @@ AIproc = 1 while(AIproc && stat != DEAD && (attacked || hungry || rabid || buckled)) - if(buckled) // can't eat AND have this little process at the same time + if(!(mobility_flags & MOBILITY_MOVE)) //also covers buckling. Not sure why buckled is in the while condition if we're going to immediately break, honestly break if(!Target || client) @@ -276,11 +276,10 @@ /mob/living/simple_animal/slime/proc/handle_targets() + update_mobility() if(Tempstun) if(!buckled) // not while they're eating! mobility_flags &= ~MOBILITY_MOVE - else - mobility_flags |= MOBILITY_MOVE if(attacked > 50) attacked = 50 diff --git a/code/modules/mob/living/simple_animal/slime/slime.dm b/code/modules/mob/living/simple_animal/slime/slime.dm index 33341fa4682..b04a50f6b13 100644 --- a/code/modules/mob/living/simple_animal/slime/slime.dm +++ b/code/modules/mob/living/simple_animal/slime/slime.dm @@ -150,7 +150,7 @@ /mob/living/simple_animal/slime/updatehealth() . = ..() var/mod = 0 - if(!has_trait(TRAIT_IGNOREDAMAGESLOWDOWN)) + if(!HAS_TRAIT(src, TRAIT_IGNOREDAMAGESLOWDOWN)) var/health_deficiency = (maxHealth - health) if(health_deficiency >= 45) mod += (health_deficiency / 25) diff --git a/code/modules/mob/living/status_procs.dm b/code/modules/mob/living/status_procs.dm index f1512ab0ec0..b5747b1f65e 100644 --- a/code/modules/mob/living/status_procs.dm +++ b/code/modules/mob/living/status_procs.dm @@ -17,7 +17,7 @@ /mob/living/proc/Stun(amount, updating = TRUE, ignore_canstun = FALSE) //Can't go below remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_STUN, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/stun/S = IsStun() @@ -30,7 +30,7 @@ /mob/living/proc/SetStun(amount, updating = TRUE, ignore_canstun = FALSE) //Sets remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_STUN, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/stun/S = IsStun() if(amount <= 0) if(S) @@ -47,7 +47,7 @@ /mob/living/proc/AdjustStun(amount, updating = TRUE, ignore_canstun = FALSE) //Adds to remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_STUN, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANSTUN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANSTUN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/stun/S = IsStun() @@ -71,7 +71,7 @@ /mob/living/proc/Knockdown(amount, updating = TRUE, ignore_canstun = FALSE) //Can't go below remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_KNOCKDOWN, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/knockdown/K = IsKnockdown() @@ -84,7 +84,7 @@ /mob/living/proc/SetKnockdown(amount, updating = TRUE, ignore_canstun = FALSE) //Sets remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_KNOCKDOWN, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/knockdown/K = IsKnockdown() if(amount <= 0) if(K) @@ -101,7 +101,7 @@ /mob/living/proc/AdjustKnockdown(amount, updating = TRUE, ignore_canstun = FALSE) //Adds to remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_KNOCKDOWN, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/knockdown/K = IsKnockdown() @@ -124,7 +124,7 @@ /mob/living/proc/Immobilize(amount, updating = TRUE, ignore_canstun = FALSE) //Can't go below remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_IMMOBILIZE, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/immobilized/I = IsImmobilized() @@ -137,7 +137,7 @@ /mob/living/proc/SetImmobilized(amount, updating = TRUE, ignore_canstun = FALSE) //Sets remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_IMMOBILIZE, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/immobilized/I = IsImmobilized() if(amount <= 0) if(I) @@ -154,7 +154,7 @@ /mob/living/proc/AdjustImmobilized(amount, updating = TRUE, ignore_canstun = FALSE) //Adds to remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_IMMOBILIZE, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/immobilized/I = IsImmobilized() @@ -177,7 +177,7 @@ /mob/living/proc/Paralyze(amount, updating = TRUE, ignore_canstun = FALSE) //Can't go below remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_PARALYZE, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/paralyzed/P = IsParalyzed() @@ -190,7 +190,7 @@ /mob/living/proc/SetParalyzed(amount, updating = TRUE, ignore_canstun = FALSE) //Sets remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_PARALYZE, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/paralyzed/P = IsParalyzed() if(amount <= 0) if(P) @@ -207,7 +207,7 @@ /mob/living/proc/AdjustParalyzed(amount, updating = TRUE, ignore_canstun = FALSE) //Adds to remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_PARALYZE, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANKNOCKDOWN) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANKNOCKDOWN) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) if(absorb_stun(amount, ignore_canstun)) return var/datum/status_effect/incapacitating/paralyzed/P = IsParalyzed() @@ -255,7 +255,7 @@ /mob/living/proc/Unconscious(amount, updating = TRUE, ignore_canstun = FALSE) //Can't go below remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_UNCONSCIOUS, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANUNCONSCIOUS) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANUNCONSCIOUS) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/unconscious/U = IsUnconscious() if(U) U.duration = max(world.time + amount, U.duration) @@ -266,7 +266,7 @@ /mob/living/proc/SetUnconscious(amount, updating = TRUE, ignore_canstun = FALSE) //Sets remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_UNCONSCIOUS, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANUNCONSCIOUS) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANUNCONSCIOUS) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/unconscious/U = IsUnconscious() if(amount <= 0) if(U) @@ -280,7 +280,7 @@ /mob/living/proc/AdjustUnconscious(amount, updating = TRUE, ignore_canstun = FALSE) //Adds to remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_UNCONSCIOUS, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if(((status_flags & CANUNCONSCIOUS) && !has_trait(TRAIT_STUNIMMUNE)) || ignore_canstun) + if(((status_flags & CANUNCONSCIOUS) && !HAS_TRAIT(src, TRAIT_STUNIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/unconscious/U = IsUnconscious() if(U) U.duration += amount @@ -302,7 +302,7 @@ /mob/living/proc/Sleeping(amount, updating = TRUE, ignore_canstun = FALSE) //Can't go below remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_SLEEP, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if((!has_trait(TRAIT_SLEEPIMMUNE)) || ignore_canstun) + if((!HAS_TRAIT(src, TRAIT_SLEEPIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/sleeping/S = IsSleeping() if(S) S.duration = max(world.time + amount, S.duration) @@ -313,7 +313,7 @@ /mob/living/proc/SetSleeping(amount, updating = TRUE, ignore_canstun = FALSE) //Sets remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_SLEEP, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if((!has_trait(TRAIT_SLEEPIMMUNE)) || ignore_canstun) + if((!HAS_TRAIT(src, TRAIT_SLEEPIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/sleeping/S = IsSleeping() if(amount <= 0) if(S) @@ -327,7 +327,7 @@ /mob/living/proc/AdjustSleeping(amount, updating = TRUE, ignore_canstun = FALSE) //Adds to remaining duration if(SEND_SIGNAL(src, COMSIG_LIVING_STATUS_SLEEP, amount, updating, ignore_canstun) & COMPONENT_NO_STUN) return - if((!has_trait(TRAIT_SLEEPIMMUNE)) || ignore_canstun) + if((!HAS_TRAIT(src, TRAIT_SLEEPIMMUNE)) || ignore_canstun) var/datum/status_effect/incapacitating/sleeping/S = IsSleeping() if(S) S.duration += amount @@ -375,61 +375,68 @@ return TRUE /////////////////////////////////// DISABILITIES //////////////////////////////////// -/mob/living/proc/add_quirk(quirk, spawn_effects) //separate proc due to the way these ones are handled - if(has_trait(quirk)) +/mob/living/proc/add_quirk(quirktype, spawn_effects) //separate proc due to the way these ones are handled + if(HAS_TRAIT(src, quirktype)) return - if(!SSquirks || !SSquirks.quirks[quirk]) + var/datum/quirk/T = quirktype + var/qname = initial(T.name) + if(!SSquirks || !SSquirks.quirks[qname]) return - var/datum/quirk/T = SSquirks.quirks[quirk] - new T (src, spawn_effects) + new quirktype (src, spawn_effects) return TRUE -/mob/living/proc/remove_quirk(quirk) - var/datum/quirk/T = roundstart_quirks[quirk] - if(T) - qdel(T) - return TRUE +/mob/living/proc/remove_quirk(quirktype) + for(var/datum/quirk/Q in roundstart_quirks) + if(Q.type == quirktype) + qdel(Q) + return TRUE + return FALSE -/mob/living/proc/has_quirk(quirk) - return roundstart_quirks[quirk] +/mob/living/proc/has_quirk(quirktype) + for(var/datum/quirk/Q in roundstart_quirks) + if(Q.type == quirktype) + return TRUE + return FALSE /////////////////////////////////// TRAIT PROCS //////////////////////////////////// -/mob/living/proc/cure_blind(list/sources) - remove_trait(TRAIT_BLIND, sources) - if(!has_trait(TRAIT_BLIND)) +/mob/living/proc/cure_blind(source) + REMOVE_TRAIT(src, TRAIT_BLIND, source) + if(!HAS_TRAIT(src, TRAIT_BLIND)) adjust_blindness(-1) /mob/living/proc/become_blind(source) - if(!has_trait(TRAIT_BLIND)) + if(!HAS_TRAIT(src, TRAIT_BLIND)) blind_eyes(1) - add_trait(TRAIT_BLIND, source) + ADD_TRAIT(src, TRAIT_BLIND, source) -/mob/living/proc/cure_nearsighted(list/sources) - remove_trait(TRAIT_NEARSIGHT, sources) - if(!has_trait(TRAIT_NEARSIGHT)) +/mob/living/proc/cure_nearsighted(source) + REMOVE_TRAIT(src, TRAIT_NEARSIGHT, source) + if(!HAS_TRAIT(src, TRAIT_NEARSIGHT)) clear_fullscreen("nearsighted") /mob/living/proc/become_nearsighted(source) - if(!has_trait(TRAIT_NEARSIGHT)) + if(!HAS_TRAIT(src, TRAIT_NEARSIGHT)) overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1) - add_trait(TRAIT_NEARSIGHT, source) + ADD_TRAIT(src, TRAIT_NEARSIGHT, source) -/mob/living/proc/cure_husk(list/sources) - remove_trait(TRAIT_HUSK, sources) - if(!has_trait(TRAIT_HUSK)) - remove_trait(TRAIT_DISFIGURED, "husk") +/mob/living/proc/cure_husk(source) + REMOVE_TRAIT(src, TRAIT_HUSK, source) + if(!HAS_TRAIT(src, TRAIT_HUSK)) + REMOVE_TRAIT(src, TRAIT_DISFIGURED, "husk") update_body() + return TRUE /mob/living/proc/become_husk(source) - if(!has_trait(TRAIT_HUSK)) - add_trait(TRAIT_DISFIGURED, "husk") + if(!HAS_TRAIT(src, TRAIT_HUSK)) + ADD_TRAIT(src, TRAIT_DISFIGURED, "husk") update_body() - add_trait(TRAIT_HUSK, source) + . = TRUE + ADD_TRAIT(src, TRAIT_HUSK, source) -/mob/living/proc/cure_fakedeath(list/sources) - remove_trait(TRAIT_FAKEDEATH, sources) - remove_trait(TRAIT_DEATHCOMA, sources) +/mob/living/proc/cure_fakedeath(source) + REMOVE_TRAIT(src, TRAIT_FAKEDEATH, source) + REMOVE_TRAIT(src, TRAIT_DEATHCOMA, source) if(stat != DEAD) tod = null update_stat() @@ -439,15 +446,15 @@ return if(!silent) emote("deathgasp") - add_trait(TRAIT_FAKEDEATH, source) - add_trait(TRAIT_DEATHCOMA, source) + ADD_TRAIT(src, TRAIT_FAKEDEATH, source) + ADD_TRAIT(src, TRAIT_DEATHCOMA, source) tod = station_time_timestamp() update_stat() -/mob/living/proc/unignore_slowdown(list/sources) - remove_trait(TRAIT_IGNORESLOWDOWN, sources) +/mob/living/proc/unignore_slowdown(source) + REMOVE_TRAIT(src, TRAIT_IGNORESLOWDOWN, source) update_movespeed(FALSE) /mob/living/proc/ignore_slowdown(source) - add_trait(TRAIT_IGNORESLOWDOWN, source) - update_movespeed(FALSE) \ No newline at end of file + ADD_TRAIT(src, TRAIT_IGNORESLOWDOWN, source) + update_movespeed(FALSE) diff --git a/code/modules/mob/living/taste.dm b/code/modules/mob/living/taste.dm index 534bf36c59b..fec024cebf2 100644 --- a/code/modules/mob/living/taste.dm +++ b/code/modules/mob/living/taste.dm @@ -9,7 +9,7 @@ /mob/living/carbon/get_taste_sensitivity() var/obj/item/organ/tongue/tongue = getorganslot(ORGAN_SLOT_TONGUE) - if(istype(tongue) && !has_trait(TRAIT_AGEUSIA)) + if(istype(tongue) && !HAS_TRAIT(src, TRAIT_AGEUSIA)) . = tongue.taste_sensitivity else . = 101 // can't taste anything without a tongue diff --git a/code/modules/mob/login.dm b/code/modules/mob/login.dm index 13305d39d80..0b486b498e0 100644 --- a/code/modules/mob/login.dm +++ b/code/modules/mob/login.dm @@ -47,10 +47,21 @@ if(client.player_details.player_actions.len) for(var/datum/action/A in client.player_details.player_actions) A.Grant(src) - + for(var/foo in client.player_details.post_login_callbacks) var/datum/callback/CB = foo CB.Invoke() log_played_names(client.ckey,name,real_name) + auto_deadmin_on_login() log_message("Client [key_name(src)] has taken ownership of mob [src]([src.type])", LOG_OWNERSHIP) + +/mob/proc/auto_deadmin_on_login() //return true if they're not an admin at the end. + if(!client?.holder) + return TRUE + if(CONFIG_GET(flag/auto_deadmin_players) || (client.prefs?.toggles & DEADMIN_ALWAYS)) + return client.holder.auto_deadmin() + if(mind.has_antag_datum(/datum/antagonist) && (CONFIG_GET(flag/auto_deadmin_antagonists) || client.prefs?.toggles & DEADMIN_ANTAGONIST)) + return client.holder.auto_deadmin() + if(job) + return SSjob.handle_auto_deadmin_roles(client, job) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 6a9fada2979..74022342581 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -188,9 +188,6 @@ for(var/mob/M in get_hearers_in_view(range, src)) M.show_message( message, 2, deaf_message, 1) -/mob/proc/Life() - set waitfor = FALSE - /mob/proc/get_item_by_slot(slot_id) return null @@ -710,7 +707,7 @@ return pick(protection_sources) else return src - if((magic && has_trait(TRAIT_ANTIMAGIC)) || (holy && has_trait(TRAIT_HOLY))) + if((magic && HAS_TRAIT(src, TRAIT_ANTIMAGIC)) || (holy && HAS_TRAIT(src, TRAIT_HOLY))) return src //You can buckle on mobs if you're next to them since most are dense diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 83d6dcd71a4..3cc734b8f38 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -99,8 +99,6 @@ var/list/progressbars = null //for stacking do_after bars - var/list/mousemove_intercept_objects - var/datum/click_intercept var/registered_z diff --git a/code/modules/mob/mob_helpers.dm b/code/modules/mob/mob_helpers.dm index 6eb7a6e6f63..cac9ec1f3d3 100644 --- a/code/modules/mob/mob_helpers.dm +++ b/code/modules/mob/mob_helpers.dm @@ -1,4 +1,3 @@ - // see _DEFINES/is_helpers.dm for mob type checks /mob/proc/lowest_buckled_mob() @@ -29,27 +28,10 @@ /proc/ran_zone(zone, probability = 80) - - zone = check_zone(zone) - if(prob(probability)) - return zone - - var/t = rand(1, 18) // randomly pick a different zone, or maybe the same one - switch(t) - if(1) - return BODY_ZONE_HEAD - if(2) - return BODY_ZONE_CHEST - if(3 to 6) - return BODY_ZONE_L_ARM - if(7 to 10) - return BODY_ZONE_R_ARM - if(11 to 14) - return BODY_ZONE_L_LEG - if(15 to 18) - return BODY_ZONE_R_LEG - + zone = check_zone(zone) + else + zone = pickweight(list(BODY_ZONE_HEAD = 1, BODY_ZONE_CHEST = 1, BODY_ZONE_L_ARM = 4, BODY_ZONE_R_ARM = 4, BODY_ZONE_L_LEG = 4, BODY_ZONE_R_LEG = 4)) return zone /proc/above_neck(zone) @@ -71,14 +53,14 @@ var/te = n var/t = "" n = length(n) - var/p = null - p = 1 - while(p <= n) + + for(var/p = 1 to min(n,MAX_BROADCAST_LEN)) if ((copytext(te, p, p + 1) == " " || prob(pr))) t = text("[][]", t, copytext(te, p, p + 1)) else t = text("[]*", t) - p++ + if(n > MAX_BROADCAST_LEN) + t += "..." //signals missing text return sanitize(t) /proc/slur(n) @@ -413,7 +395,7 @@ It's fairly easy to fix if dealing with single letters but not so much with comp if(affecting.heal_damage(brute_heal, burn_heal, 0, BODYPART_ROBOTIC)) H.update_damage_overlays() user.visible_message("[user] has fixed some of the [dam ? "dents on" : "burnt wires in"] [H]'s [affecting.name].", \ - "You fix some of the [dam ? "dents on" : "burnt wires in"] [H]'s [affecting.name].") + "You fix some of the [dam ? "dents on" : "burnt wires in"] [H == user ? "your" : "[H]'s"] [affecting.name].") return 1 //successful heal else to_chat(user, "[affecting] is already in good condition!") @@ -514,13 +496,27 @@ It's fairly easy to fix if dealing with single letters but not so much with comp /mob/proc/common_trait_examine() . = "" - if(has_trait(TRAIT_DISSECTED)) + if(HAS_TRAIT(src, TRAIT_DISSECTED)) . += "This body has been dissected and analyzed. It is no longer worth experimenting on.
" -/mob/has_trait(trait, list/sources, check_mind=TRUE) - . = ..(trait, sources) - if(.) - return - - if(check_mind && istype(mind)) - return mind.has_trait(trait, sources) +// Used to make sure that a player has a valid job preference setup, used to knock players out of eligibility for anything if their prefs don't make sense. +// A "valid job preference setup" in this situation means at least having one job set to low, or not having "return to lobby" enabled +// Prevents "antag rolling" by setting antag prefs on, all jobs to never, and "return to lobby if preferences not availible" +// Doing so would previously allow you to roll for antag, then send you back to lobby if you didn't get an antag role +// This also does some admin notification and logging as well +/mob/proc/has_valid_preferences() + if(!client) + return FALSE //Not sure how this would get run without the mob having a client, but let's just be safe. + if(client.prefs.joblessrole != RETURNTOLOBBY) + return TRUE + // If they have antags enabled, they're potentially doing this on purpose instead of by accident. Notify admins if so. + var/has_antags = FALSE + if(client.prefs.be_special.len > 0) + has_antags = TRUE + if(client.prefs.job_preferences.len == 0) + to_chat(src, "You have no jobs enabled, along with return to lobby if job is unavailable. This makes you ineligible for any round start role, please update your job preferences.") + if(has_antags) + log_admin("[src.ckey] just got booted back to lobby with no jobs, but antags enabled.") + message_admins("[src.ckey] just got booted back to lobby with no jobs enabled, but antag rolling enabled. Likely antag rolling abuse.") + return FALSE //This is the only case someone should actually be completely blocked from antag rolling as well + return TRUE diff --git a/code/modules/mob/status_procs.dm b/code/modules/mob/status_procs.dm index 552f5d03e6a..86fa6cf8dc5 100644 --- a/code/modules/mob/status_procs.dm +++ b/code/modules/mob/status_procs.dm @@ -15,6 +15,9 @@ /mob/proc/Dizzy(amount) dizziness = max(dizziness,amount,0) +/mob/proc/set_dizziness(amount) + dizziness = max(amount, 0) + /////////////////////////////////// EYE DAMAGE //////////////////////////////////// /mob/proc/damage_eyes(amount) @@ -51,7 +54,7 @@ blind_minimum = 1 if(isliving(src)) var/mob/living/L = src - if(L.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(L, TRAIT_BLIND)) blind_minimum = 1 eye_blind = max(eye_blind+amount, blind_minimum) if(!eye_blind) @@ -72,7 +75,7 @@ blind_minimum = 1 if(isliving(src)) var/mob/living/L = src - if(L.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(L, TRAIT_BLIND)) blind_minimum = 1 eye_blind = blind_minimum if(!eye_blind) diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 959abea8cdf..af538cac605 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/proc/monkeyize(tr_flags = (TR_KEEPITEMS | TR_KEEPVIRUS | TR_DEFAULTMSG)) +/mob/living/carbon/proc/monkeyize(tr_flags = (TR_KEEPITEMS | TR_KEEPVIRUS | TR_KEEPSTUNS | TR_KEEPREAGENTS | TR_DEFAULTMSG)) if (notransform) return //Handle items on mob @@ -123,6 +123,19 @@ qdel(G) //we lose the organs in the missing limbs qdel(BP) + //transfer stuns + if(tr_flags & TR_KEEPSTUNS) + O.Stun(AmountStun(), ignore_canstun = TRUE) + O.Knockdown(AmountKnockdown(), ignore_canstun = TRUE) + O.Immobilize(AmountImmobilized(), ignore_canstun = TRUE) + O.Paralyze(AmountParalyzed(), ignore_canstun = TRUE) + O.Unconscious(AmountUnconscious(), ignore_canstun = TRUE) + O.Sleeping(AmountSleeping(), ignore_canstun = TRUE) + + //transfer reagents + if(tr_flags & TR_KEEPREAGENTS) + reagents.trans_to(O, reagents.total_volume) + //transfer mind if we didn't yet if(mind) mind.transfer_to(O) @@ -149,7 +162,7 @@ ////////////////////////// Humanize ////////////////////////////// //Could probably be merged with monkeyize but other transformations got their own procs, too -/mob/living/carbon/proc/humanize(tr_flags = (TR_KEEPITEMS | TR_KEEPVIRUS | TR_DEFAULTMSG)) +/mob/living/carbon/proc/humanize(tr_flags = (TR_KEEPITEMS | TR_KEEPVIRUS | TR_KEEPSTUNS | TR_KEEPREAGENTS | TR_DEFAULTMSG)) if (notransform) return //Handle items on mob @@ -283,6 +296,19 @@ qdel(G) //we lose the organs in the missing limbs qdel(BP) + //transfer stuns + if(tr_flags & TR_KEEPSTUNS) + O.Stun(AmountStun(), ignore_canstun = TRUE) + O.Knockdown(AmountKnockdown(), ignore_canstun = TRUE) + O.Immobilize(AmountImmobilized(), ignore_canstun = TRUE) + O.Paralyze(AmountParalyzed(), ignore_canstun = TRUE) + O.Unconscious(AmountUnconscious(), ignore_canstun = TRUE) + O.Sleeping(AmountSleeping(), ignore_canstun = TRUE) + + //transfer reagents + if(tr_flags & TR_KEEPREAGENTS) + reagents.trans_to(O, reagents.total_volume) + if(mind) mind.transfer_to(O) var/datum/antagonist/changeling/changeling = O.mind.has_antag_datum(/datum/antagonist/changeling) diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm index b4f567158c2..c58ecca5727 100644 --- a/code/modules/modular_computers/computers/item/computer.dm +++ b/code/modules/modular_computers/computers/item/computer.dm @@ -97,7 +97,7 @@ if(issilicon(usr)) return var/obj/item/computer_hardware/card_slot/card_slot = all_components[MC_CARD] - if(usr.canUseTopic(src)) + if(usr.canUseTopic(src, BE_CLOSE)) card_slot.try_eject(null, usr) // Eject ID card from computer, if it has ID slot with card inside. @@ -108,7 +108,7 @@ if(issilicon(usr)) return var/obj/item/computer_hardware/ai_slot/ai_slot = all_components[MC_AI] - if(usr.canUseTopic(src)) + if(usr.canUseTopic(src, BE_CLOSE)) ai_slot.try_eject(null, usr,1) @@ -120,7 +120,7 @@ if(issilicon(usr)) return - if(usr.canUseTopic(src)) + if(usr.canUseTopic(src, BE_CLOSE)) var/obj/item/computer_hardware/hard_drive/portable/portable_drive = all_components[MC_SDD] if(uninstall_component(portable_drive, usr)) portable_drive.verb_pickup() @@ -130,7 +130,7 @@ if(issilicon(user)) return - if(user.canUseTopic(src)) + if(user.canUseTopic(src, BE_CLOSE)) var/obj/item/computer_hardware/card_slot/card_slot = all_components[MC_CARD] var/obj/item/computer_hardware/ai_slot/ai_slot = all_components[MC_AI] var/obj/item/computer_hardware/hard_drive/portable/portable_drive = all_components[MC_SDD] @@ -159,7 +159,7 @@ /obj/item/modular_computer/MouseDrop(obj/over_object, src_location, over_location) var/mob/M = usr - if((!istype(over_object, /obj/screen)) && usr.canUseTopic(src)) + if((!istype(over_object, /obj/screen)) && usr.canUseTopic(src, BE_CLOSE)) return attack_self(M) return ..() diff --git a/code/modules/modular_computers/computers/item/laptop.dm b/code/modules/modular_computers/computers/item/laptop.dm index 3106a9e5105..07f762353f4 100644 --- a/code/modules/modular_computers/computers/item/laptop.dm +++ b/code/modules/modular_computers/computers/item/laptop.dm @@ -77,7 +77,7 @@ return if(!isturf(loc) && !ismob(loc)) // No opening it in backpack. return - if(!user.canUseTopic(src)) + if(!user.canUseTopic(src, BE_CLOSE)) return toggle_open(user) diff --git a/code/modules/modular_computers/hardware/hard_drive.dm b/code/modules/modular_computers/hardware/hard_drive.dm index 1e3c517351b..68d99f9a081 100644 --- a/code/modules/modular_computers/hardware/hard_drive.dm +++ b/code/modules/modular_computers/hardware/hard_drive.dm @@ -157,6 +157,7 @@ max_capacity = 64 icon_state = "ssd_mini" w_class = WEIGHT_CLASS_TINY + custom_price = 15 /obj/item/computer_hardware/hard_drive/micro name = "micro solid state drive" diff --git a/code/modules/ninja/ninja_event.dm b/code/modules/ninja/ninja_event.dm index 9fd8e4baf2c..c60d6b93fd3 100644 --- a/code/modules/ninja/ninja_event.dm +++ b/code/modules/ninja/ninja_event.dm @@ -69,7 +69,7 @@ Contents: Mind.add_antag_datum(ninjadatum) if(Ninja.mind != Mind) //something has gone wrong! - throw EXCEPTION("Ninja created with incorrect mind") + CRASH("Ninja created with incorrect mind") spawned_mobs += Ninja message_admins("[ADMIN_LOOKUPFLW(Ninja)] has been made into a ninja by an event.") @@ -86,4 +86,4 @@ Contents: A.real_name = "[pick(GLOB.ninja_titles)] [pick(GLOB.ninja_names)]" A.copy_to(new_ninja) new_ninja.dna.update_dna_identity() - return new_ninja \ No newline at end of file + return new_ninja diff --git a/code/modules/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm index ad4e158ab6c..326615e53f9 100644 --- a/code/modules/ninja/suit/gloves.dm +++ b/code/modules/ninja/suit/gloves.dm @@ -77,5 +77,5 @@ /obj/item/clothing/gloves/space_ninja/examine(mob/user) ..() - if(has_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT)) + if(HAS_TRAIT_FROM(src, TRAIT_NODROP, NINJA_SUIT_TRAIT)) to_chat(user, "The energy drain mechanism is [candrain?"active":"inactive"].") 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 7a192c427c6..be51588423c 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 @@ -23,9 +23,6 @@ var/mob/living/carbon/C = energyKatana.loc C.transferItemToLoc(energyKatana, get_turf(energyKatana), TRUE) - //Somebody swollowed my sword, probably the clown doing a circus act. - if(energyKatana in C.stomach_contents) - C.stomach_contents -= energyKatana else energyKatana.forceMove(get_turf(energyKatana)) diff --git a/code/modules/ninja/suit/suit.dm b/code/modules/ninja/suit/suit.dm index 1fc20f593ac..f879df124b8 100644 --- a/code/modules/ninja/suit/suit.dm +++ b/code/modules/ninja/suit/suit.dm @@ -111,15 +111,15 @@ Contents: to_chat(H, "ERROR: 110223 UNABLE TO LOCATE HAND GEAR\nABORTING...") return FALSE affecting = H - add_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, NINJA_SUIT_TRAIT) slowdown = 0 n_hood = H.head - n_hood.add_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + ADD_TRAIT(n_hood, TRAIT_NODROP, NINJA_SUIT_TRAIT) n_shoes = H.shoes - n_shoes.add_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + ADD_TRAIT(n_shoes, TRAIT_NODROP, NINJA_SUIT_TRAIT) n_shoes.slowdown-- n_gloves = H.gloves - n_gloves.add_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + ADD_TRAIT(n_gloves, TRAIT_NODROP, NINJA_SUIT_TRAIT) return TRUE /obj/item/clothing/suit/space/space_ninja/proc/lockIcons(mob/living/carbon/human/H) @@ -131,18 +131,18 @@ Contents: //This proc allows the suit to be taken off. /obj/item/clothing/suit/space/space_ninja/proc/unlock_suit() affecting = null - remove_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + REMOVE_TRAIT(src, TRAIT_NODROP, NINJA_SUIT_TRAIT) slowdown = 1 icon_state = "s-ninja" if(n_hood)//Should be attached, might not be attached. - n_hood.remove_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + REMOVE_TRAIT(n_hood, TRAIT_NODROP, NINJA_SUIT_TRAIT) if(n_shoes) - n_shoes.remove_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + REMOVE_TRAIT(n_shoes, TRAIT_NODROP, NINJA_SUIT_TRAIT) n_shoes.slowdown++ if(n_gloves) n_gloves.icon_state = "s-ninja" n_gloves.item_state = "s-ninja" - n_gloves.remove_trait(TRAIT_NODROP, NINJA_SUIT_TRAIT) + REMOVE_TRAIT(n_gloves, TRAIT_NODROP, NINJA_SUIT_TRAIT) n_gloves.candrain = FALSE n_gloves.draining = FALSE diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm index 006151c4eb8..2f05694f22f 100644 --- a/code/modules/paperwork/contract.dm +++ b/code/modules/paperwork/contract.dm @@ -100,7 +100,7 @@ /obj/item/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!", forced = "infernal contract suicide") + H.say("OH GREAT INFERNO! I DEMAND YOU COLLECT YOUR BOUNTY IMMEDIATELY!", forced = "infernal contract suicide") 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.adjust_fire_stacks(20) H.IgniteMob() @@ -202,7 +202,7 @@ if(!user.mind.hasSoul) to_chat(user, "You do not possess a soul.") return 0 - if(user.has_trait(TRAIT_DUMB)) + if(HAS_TRAIT(user, TRAIT_DUMB)) to_chat(user, "You quickly scrawl 'your name' on the contract.") signIncorrectly() return 0 diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 4f6b4f4a8fe..f3b775f5ea1 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -87,7 +87,7 @@ return if(ishuman(usr)) var/mob/living/carbon/human/H = usr - if(H.has_trait(TRAIT_CLUMSY) && prob(25)) + if(HAS_TRAIT(H, TRAIT_CLUMSY) && prob(25)) to_chat(H, "You cut yourself on the paper! Ahhhh! Ahhhhh!") H.damageoverlaytemp = 9001 H.update_damage_hud() @@ -132,7 +132,7 @@ var/locid = 0 var/laststart = 1 var/textindex = 1 - while(1) //I know this can cause infinite loops and fuck up the whole server, but the if(istart==0) should be safe as fuck + while(locid < 15) //hey whoever decided a while(1) was a good idea here, i hate you var/istart = 0 if(links) istart = findtext(info_links, "", laststart) @@ -196,7 +196,7 @@ // Count the fields var/laststart = 1 - while(1) + while(fields < 15) var/i = findtext(t, "", laststart) if(i == 0) break @@ -208,7 +208,7 @@ /obj/item/paper/proc/reload_fields() // Useful if you made the paper programicly and want to include fields. Also runs updateinfolinks() for you. fields = 0 var/laststart = 1 - while(1) + while(fields < 15) var/i = findtext(info, "", laststart) if(i == 0) break @@ -264,6 +264,7 @@ if(!in_range(src, usr) && loc != usr && !istype(loc, /obj/item/clipboard) && loc.loc != usr && usr.get_active_held_item() != i) //Some check to see if he's allowed to write return + log_paper("[key_name(usr)] writing to paper [t]") t = parsepencode(t, i, usr, iscrayon) // Encode everything from pencode to html if(t != null) //No input from the user means nothing needs to be added @@ -312,7 +313,7 @@ to_chat(user, "You stamp the paper with your rubber stamp.") if(P.is_hot()) - if(user.has_trait(TRAIT_CLUMSY) && prob(10)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) user.visible_message("[user] accidentally ignites [user.p_them()]self!", \ "You miss the paper and accidentally light yourself on fire!") user.dropItemToGround(P) diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index 6ca63ac8637..e8e361c7586 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -83,7 +83,7 @@ update_icon() else if(P.is_hot()) - if(user.has_trait(TRAIT_CLUMSY) && prob(10)) + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(10)) user.visible_message("[user] accidentally ignites [user.p_them()]self!", \ "You miss [src] and accidentally light yourself on fire!") user.dropItemToGround(P) diff --git a/code/modules/paperwork/pen.dm b/code/modules/paperwork/pen.dm index 02e96f19737..22452ea0106 100644 --- a/code/modules/paperwork/pen.dm +++ b/code/modules/paperwork/pen.dm @@ -165,7 +165,7 @@ /obj/item/pen/sleepy/Initialize() . = ..() create_reagents(45, OPENCONTAINER) - reagents.add_reagent("chloralhydratedelayed", 20) + reagents.add_reagent("chloralhydrate", 20) reagents.add_reagent("mutetoxin", 15) reagents.add_reagent("tirizene", 10) @@ -179,11 +179,20 @@ /obj/item/pen/edagger/Initialize() . = ..() AddComponent(/datum/component/butchering, 60, 100, 0, 'sound/weapons/blade1.ogg', TRUE) + +/obj/item/pen/edagger/suicide_act(mob/user) + . = BRUTELOSS + if(on) + user.visible_message("[user] forcefully rams the pen into their mouth!") + else + user.visible_message("[user] is holding a pen up to their mouth! It looks like [user.p_theyre()] trying to commit suicide!") + attack_self(user) /obj/item/pen/edagger/attack_self(mob/living/user) if(on) on = FALSE force = initial(force) + throw_speed = initial(throw_speed) w_class = initial(w_class) name = initial(name) hitsound = initial(hitsound) @@ -194,6 +203,7 @@ else on = TRUE force = 18 + throw_speed = 4 w_class = WEIGHT_CLASS_NORMAL name = "energy dagger" hitsound = 'sound/weapons/blade1.ogg' diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm index 4e74ccc44b3..fd93413c365 100644 --- a/code/modules/paperwork/photocopier.dm +++ b/code/modules/paperwork/photocopier.dm @@ -121,26 +121,21 @@ if(isalienadult(ass) || istype(ass, /mob/living/simple_animal/hostile/alien)) //Xenos have their own asses, thanks to Pybro. temp_img = icon('icons/ass/assalien.png') else if(ishuman(ass)) //Suit checks are in check_ass - if(ass.gender == MALE) - temp_img = icon('icons/ass/assmale.png') - else if(ass.gender == FEMALE) - 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') + temp_img = icon(ass.gender == FEMALE ? 'icons/ass/assfemale.png' : 'icons/ass/assmale.png') else if(isdrone(ass)) //Drones are hot temp_img = icon('icons/ass/assdrone.png') else break - var/obj/item/photo/p = new /obj/item/photo (loc) - p.pixel_x = rand(-10, 10) - p.pixel_y = rand(-10, 10) - p.picture = new(null, "You see [ass]'s ass on the photo.", temp_img) - p.picture.psize_x = 128 - p.picture.psize_y = 128 - p.update_icon() - toner -= 5 busy = TRUE sleep(15) + var/obj/item/photo/p = new /obj/item/photo (loc) + var/datum/picture/toEmbed = new(name = "[ass]'s Ass", desc = "You see [ass]'s ass on the photo.", image = temp_img) + p.pixel_x = rand(-10, 10) + p.pixel_y = rand(-10, 10) + toEmbed.psize_x = 128 + toEmbed.psize_y = 128 + p.set_picture(toEmbed, TRUE, TRUE) + toner -= 5 busy = FALSE else break diff --git a/code/modules/photography/camera/camera.dm b/code/modules/photography/camera/camera.dm index f5269df333c..34dfdd13e97 100644 --- a/code/modules/photography/camera/camera.dm +++ b/code/modules/photography/camera/camera.dm @@ -33,6 +33,8 @@ var/picture_size_y_min = 1 var/picture_size_x_max = 4 var/picture_size_y_max = 4 + var/can_customise = TRUE + var/default_picture_name /obj/item/camera/attack_self(mob/user) if(!disk) @@ -45,14 +47,16 @@ . = ..() to_chat(user, "Alt-click to change its focusing, allowing you to set how big of an area it will capture.") -/obj/item/camera/AltClick(mob/user) - if(!user.canUseTopic(src, BE_CLOSE)) - return +/obj/item/camera/proc/adjust_zoom(mob/user) var/desired_x = input(user, "How high do you want the camera to shoot, between [picture_size_x_min] and [picture_size_x_max]?", "Zoom", picture_size_x) as num var/desired_y = input(user, "How wide do you want the camera to shoot, between [picture_size_y_min] and [picture_size_y_max]?", "Zoom", picture_size_y) as num picture_size_x = min(CLAMP(desired_x, picture_size_x_min, picture_size_x_max), CAMERA_PICTURE_SIZE_HARD_LIMIT) picture_size_y = min(CLAMP(desired_y, picture_size_y_min, picture_size_y_max), CAMERA_PICTURE_SIZE_HARD_LIMIT) +/obj/item/camera/AltClick(mob/user) + if(!user.canUseTopic(src, BE_CLOSE)) + return + adjust_zoom(user) /obj/item/camera/attack(mob/living/carbon/human/M, mob/user) return @@ -124,7 +128,7 @@ var/realcooldown = cooldown var/mob/living/carbon/human/H = user - if (H.has_trait(TRAIT_PHOTOGRAPHER)) + if (HAS_TRAIT(H, TRAIT_PHOTOGRAPHER)) realcooldown *= 0.5 addtimer(CALLBACK(src, .proc/cooldown), realcooldown) @@ -203,8 +207,10 @@ user.put_in_hands(p) pictures_left-- to_chat(user, "[pictures_left] photos left.") - var/customize = alert(user, "Do you want to customize the photo?", "Customization", "Yes", "No") - if(customize == "Yes") + var/customise = "No" + if(can_customise) + customise = alert(user, "Do you want to customize the photo?", "Customization", "Yes", "No") + if(customise == "Yes") var/name1 = stripped_input(user, "Set a name for this photo, or leave blank. 32 characters max.", "Name", max_length = 32) var/desc1 = stripped_input(user, "Set a description to add to photo, or leave blank. 128 characters max.", "Caption", max_length = 128) var/caption = stripped_input(user, "Set a caption for this photo, or leave blank. 256 characters max.", "Caption", max_length = 256) @@ -214,6 +220,10 @@ picture.picture_desc = "[desc1] - [picture.picture_desc]" if(caption) picture.caption = caption + else + if(default_picture_name) + picture.picture_name = default_picture_name + p.set_picture(picture, TRUE, TRUE) if(CONFIG_GET(flag/picture_logging_camera)) picture.log_to_file() diff --git a/code/modules/photography/photos/frame.dm b/code/modules/photography/photos/frame.dm index 34b70ffeb2d..7e42b45cc9e 100644 --- a/code/modules/photography/photos/frame.dm +++ b/code/modules/photography/photos/frame.dm @@ -46,7 +46,7 @@ /obj/item/wallframe/picture/update_icon() cut_overlays() if(displayed) - add_overlay(getFlatIcon(displayed)) + add_overlay(image(displayed)) /obj/item/wallframe/picture/after_attach(obj/O) ..() @@ -148,7 +148,7 @@ /obj/structure/sign/picture_frame/update_icon() cut_overlays() if(framed) - add_overlay(getFlatIcon(framed)) + add_overlay(image(framed)) /obj/structure/sign/picture_frame/deconstruct(disassembled = TRUE) if(!(flags_1 & NODECONSTRUCT_1)) diff --git a/code/modules/photography/photos/photo.dm b/code/modules/photography/photos/photo.dm index 48cc4f0b6b1..8ee75576bac 100644 --- a/code/modules/photography/photos/photo.dm +++ b/code/modules/photography/photos/photo.dm @@ -64,7 +64,7 @@ /obj/item/photo/examine(mob/user) ..() - if(in_range(src, user)) + if(in_range(src, user) || isobserver(user)) show(user) else to_chat(user, "You need to get closer to get a good look at this photo!") diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index c96d460ca8c..3147b428fed 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -167,12 +167,20 @@ switch(tdir) if(NORTH) + if((pixel_y != initial(pixel_y)) && (pixel_y != 23)) + log_mapping("APC: ([src]) at [AREACOORD(src)] with dir ([tdir] | [uppertext(dir2text(tdir))]) has pixel_y value ([pixel_y] - should be 23.)") pixel_y = 23 if(SOUTH) + if((pixel_y != initial(pixel_y)) && (pixel_y != -23)) + log_mapping("APC: ([src]) at [AREACOORD(src)] with dir ([tdir] | [uppertext(dir2text(tdir))]) has pixel_y value ([pixel_y] - should be -23.)") pixel_y = -23 if(EAST) + if((pixel_y != initial(pixel_x)) && (pixel_x != 24)) + log_mapping("APC: ([src]) at [AREACOORD(src)] with dir ([tdir] | [uppertext(dir2text(tdir))]) has pixel_x value ([pixel_x] - should be 24.)") pixel_x = 24 if(WEST) + if((pixel_y != initial(pixel_x)) && (pixel_x != -25)) + log_mapping("APC: ([src]) at [AREACOORD(src)] with dir ([tdir] | [uppertext(dir2text(tdir))]) has pixel_x value ([pixel_x] - should be -25.)") pixel_x = -25 if (building) area = get_area(src) @@ -569,7 +577,7 @@ 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") + CRASH("attackby on APC when it's not on a turf") return if (host_turf.intact) to_chat(user, "You must remove the floor plating in front of the APC first!") diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 433f2001c04..c2e44cc149d 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -107,12 +107,21 @@ By design, d1 is the smallest direction and d2 is the highest if(powernet) cut_cable_from_powernet() // update the powernets GLOB.cable_list -= src //remove it from global cable list + + //If we have a stored item at this point, lets just delete it, since that should be + //handled by deconstruction + if(stored) + QDEL_NULL(stored) return ..() // then go ahead and delete the cable /obj/structure/cable/deconstruct(disassembled = TRUE) if(!(flags_1 & NODECONSTRUCT_1)) - var/turf/T = loc - stored.forceMove(T) + var/turf/T = get_turf(loc) + if(T) + stored.forceMove(T) + stored = null + else + qdel(stored) qdel(src) /////////////////////////////////// @@ -537,7 +546,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai var/obj/item/bodypart/affecting = H.get_bodypart(check_zone(user.zone_selected)) if(affecting && affecting.status == BODYPART_ROBOTIC) if(user == H) - 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].") + 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 == user ? "your" : "[H]'s"] [affecting.name].") if(!do_mob(user, H, 50)) return if(item_heal_robotic(H, user, 0, 15)) @@ -640,7 +649,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai // called when cable_coil is click on an installed obj/cable // or click on a turf that already contains a "node" cable -/obj/item/stack/cable_coil/proc/cable_join(obj/structure/cable/C, mob/user, var/showerror = TRUE) +/obj/item/stack/cable_coil/proc/cable_join(obj/structure/cable/C, mob/user, var/showerror = TRUE, forceddir) var/turf/U = user.loc if(!isturf(U)) return @@ -655,14 +664,16 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai return - if(U == T) //if clicked on the turf we're standing on, try to put a cable in the direction we're facing + if(U == T && !forceddir) //if clicked on the turf we're standing on and a direction wasn't supplied, try to put a cable in the direction we're facing place_turf(T,user) return var/dirn = get_dir(C, user) + if(forceddir) + dirn = forceddir - // one end of the clicked cable is pointing towards us - if(C.d1 == dirn || C.d2 == dirn) + // one end of the clicked cable is pointing towards us and no direction was supplied + if((C.d1 == dirn || C.d2 == dirn) && !forceddir) if(!U.can_have_cabling()) //checking if it's a plating or catwalk if (showerror) to_chat(user, "You can only lay cables on catwalks and plating!") @@ -707,7 +718,7 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai return - // exisiting cable doesn't point at our position, so see if it's a stub + // exisiting cable doesn't point at our position or we have a supplied direction, so see if it's a stub else if(C.d1 == 0) // if so, make it a full cable pointing from it's old direction to our dirn var/nd1 = C.d2 // these will be the new directions diff --git a/code/modules/power/gravitygenerator.dm b/code/modules/power/gravitygenerator.dm index cc294c9d5c7..ebb6a37475c 100644 --- a/code/modules/power/gravitygenerator.dm +++ b/code/modules/power/gravitygenerator.dm @@ -28,7 +28,7 @@ GLOBAL_LIST_EMPTY(gravity_generators) // We will keep track of this by adding ne resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF var/sprite_number = 0 -/obj/machinery/gravity_generator/safe_throw_at() +/obj/machinery/gravity_generator/safe_throw_at(atom/target, range, speed, mob/thrower, spin = TRUE, diagonals_first = FALSE, datum/callback/callback, force = MOVE_FORCE_STRONG) return FALSE /obj/machinery/gravity_generator/ex_act(severity, target) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index f5c45621989..71d0aecce99 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -105,7 +105,7 @@ if(!cell_connectors) to_chat(user, "This [name] can't support a power cell!") return - if(W.has_trait(TRAIT_NODROP)) + if(HAS_TRAIT(W, TRAIT_NODROP)) to_chat(user, "[W] is stuck to your hand!") return if(cell) @@ -345,6 +345,8 @@ var/BR = brightness var/PO = bulb_power var/CO = bulb_colour + if(color) + CO = color var/area/A = get_area(src) if (A && A.fire) CO = bulb_emergency_colour @@ -383,6 +385,10 @@ removeStaticPower(static_power_used, STATIC_LIGHT) broken_sparks(start_only=TRUE) + +/obj/machinery/light/update_atom_colour() + ..() + update() /obj/machinery/light/proc/broken_sparks(start_only=FALSE) if(status == LIGHT_BROKEN && has_power()) @@ -642,7 +648,7 @@ else prot = 1 - if(prot > 0 || user.has_trait(TRAIT_RESISTHEAT) || user.has_trait(TRAIT_RESISTHEATHANDS)) + if(prot > 0 || HAS_TRAIT(user, TRAIT_RESISTHEAT) || HAS_TRAIT(user, TRAIT_RESISTHEATHANDS)) to_chat(user, "You remove the light [fitting].") else if(istype(user) && user.dna.check_mutation(TK)) to_chat(user, "You telekinetically remove the light [fitting].") @@ -820,7 +826,7 @@ /obj/item/light/Crossed(mob/living/L) . = ..() if(istype(L) && has_gravity(loc)) - if(L.has_trait(TRAIT_LIGHT_STEP)) + if(HAS_TRAIT(L, TRAIT_LIGHT_STEP)) playsound(loc, 'sound/effects/glass_step.ogg', 30, 1) else playsound(loc, 'sound/effects/glass_step.ogg', 50, 1) diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index 0b9c7d002b2..2bb013f65ed 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -1,4 +1,3 @@ - //Baseline portable generator. Has all the default handling. Not intended to be used on it's own (since it generates unlimited power). /obj/machinery/power/port_gen name = "portable generator" @@ -9,9 +8,8 @@ anchored = FALSE use_power = NO_POWER_USE - var/active = 0 + var/active = FALSE var/power_gen = 5000 - var/recent_fault = 0 var/power_output = 1 var/consumption = 0 var/base_icon = "portgen0" @@ -49,8 +47,9 @@ active = FALSE update_icon() soundloop.stop() - else if(HasFuel() && !crit_fail) + else if(HasFuel()) active = TRUE + START_PROCESSING(SSmachines, src) update_icon() soundloop.start() @@ -59,7 +58,7 @@ /obj/machinery/power/port_gen/process() if(active) - if(!HasFuel() || crit_fail || !anchored) + if(!HasFuel() || !anchored) TogglePower() return if(powernet) @@ -72,7 +71,6 @@ ..() to_chat(user, "It is[!active?"n't":""] running.") - ///////////////// // P.A.C.M.A.N // ///////////////// @@ -95,8 +93,8 @@ /obj/machinery/power/port_gen/pacman/Initialize() . = ..() - var/obj/sheet = new sheet_path(null) - sheet_name = sheet.name + var/obj/S = sheet_path + sheet_name = initial(S.name) /obj/machinery/power/port_gen/pacman/Destroy() DropFuel() @@ -120,8 +118,6 @@ to_chat(user, "The generator has [sheets] units of [sheet_name] fuel left, producing [DisplayPower(power_gen)] per cycle.") if(anchored) to_chat(user, "It is anchored to the ground.") - if(crit_fail) - to_chat(user, "The generator seems to have broken down.") if(in_range(user, src) || isobserver(user)) to_chat(user, "The status display reads: Fuel efficiency increased by [(consumption*100)-100]%.") @@ -164,12 +160,11 @@ if (current_heat > 300) overheat() qdel(src) - return /obj/machinery/power/port_gen/pacman/handleInactive() - - if (current_heat > 0) - current_heat = max(current_heat - 2, 0) + current_heat = max(current_heat - 2, 0) + if(current_heat == 0) + STOP_PROCESSING(SSmachines, src) /obj/machinery/power/port_gen/pacman/proc/overheat() explosion(src.loc, 2, 5, 2, -1) @@ -235,7 +230,7 @@ data["active"] = active data["sheet_name"] = capitalize(sheet_name) data["sheets"] = sheets - data["stack_percent"] = sheet_left * 100 + data["stack_percent"] = round(sheet_left * 100, 0.1) data["anchored"] = anchored data["connected"] = (powernet == null ? 0 : 1) diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 072a238e1c8..71575b1a98d 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -1,9 +1,9 @@ -// stored_power += (pulse_strength-RAD_COLLECTOR_EFFICIENCY)*RAD_COLLECTOR_COEFFICIENT +// stored_energy += (pulse_strength-RAD_COLLECTOR_EFFICIENCY)*RAD_COLLECTOR_COEFFICIENT #define RAD_COLLECTOR_EFFICIENCY 80 // radiation needs to be over this amount to get power #define RAD_COLLECTOR_COEFFICIENT 100 #define RAD_COLLECTOR_STORED_OUT 0.04 // (this*100)% of stored power outputted per tick. Doesn't actualy change output total, lower numbers just means collectors output for longer in absence of a source #define RAD_COLLECTOR_MINING_CONVERSION_RATE 0.00001 //This is gonna need a lot of tweaking to get right. This is the number used to calculate the conversion of watts to research points per process() -#define RAD_COLLECTOR_OUTPUT min(stored_power, (stored_power*RAD_COLLECTOR_STORED_OUT)+1000) //Produces at least 1000 watts if it has more than that stored +#define RAD_COLLECTOR_OUTPUT min(stored_energy, (stored_energy*RAD_COLLECTOR_STORED_OUT)+1000) //Produces at least 1000 watts if it has more than that stored /obj/machinery/power/rad_collector name = "Radiation Collector Array" @@ -19,7 +19,7 @@ circuit = /obj/item/circuitboard/machine/rad_collector rad_insulation = RAD_EXTREME_INSULATION var/obj/item/tank/internals/plasma/loaded_tank = null - var/stored_power = 0 + var/stored_energy = 0 var/active = 0 var/locked = FALSE var/drainratio = 1 @@ -52,7 +52,7 @@ var/power_produced = RAD_COLLECTOR_OUTPUT add_avail(power_produced) - stored_power-=power_produced + stored_energy-=power_produced else if(is_station_level(z) && SSresearch.science_tech) if(!loaded_tank.air_contents.gases[/datum/gas/tritium] || !loaded_tank.air_contents.gases[/datum/gas/oxygen]) playsound(src, 'sound/machines/ding.ogg', 50, 1) @@ -69,7 +69,7 @@ if(D) D.adjust_money(bitcoins_mined*RAD_COLLECTOR_MINING_CONVERSION_RATE) SSresearch.science_tech.add_point_type(TECHWEB_POINT_TYPE_DEFAULT, bitcoins_mined*RAD_COLLECTOR_MINING_CONVERSION_RATE) - stored_power-=bitcoins_mined + stored_energy-=bitcoins_mined /obj/machinery/power/rad_collector/interact(mob/user) if(anchored) @@ -116,7 +116,7 @@ if(!user.transferItemToLoc(W, src)) return loaded_tank = W - update_icons() + update_icon() else if(W.GetID()) if(allowed(user)) if(active) @@ -169,17 +169,23 @@ to_chat(user, "You [bitcoinmining ? "enable":"disable"] the research point production feature of [src].") return TRUE -/obj/machinery/power/rad_collector/analyzer_act(mob/living/user, obj/item/I) +/obj/machinery/power/rad_collector/return_analyzable_air() if(loaded_tank) - loaded_tank.analyzer_act(user, I) + return loaded_tank.return_analyzable_air() + else + return null /obj/machinery/power/rad_collector/examine(mob/user) . = ..() if(active) if(!bitcoinmining) - to_chat(user, "[src]'s display states that it has stored [DisplayPower(stored_power)], and processing [DisplayPower(RAD_COLLECTOR_OUTPUT)].") + // stored_energy is converted directly to watts every SSmachines.wait * 0.1 seconds. + // Therefore, its units are joules per SSmachines.wait * 0.1 seconds. + // So joules = stored_energy * SSmachines.wait * 0.1 + var/joules = stored_energy * SSmachines.wait * 0.1 + to_chat(user, "[src]'s display states that it has stored [DisplayJoules(joules)], and is processing [DisplayPower(RAD_COLLECTOR_OUTPUT)].") else - to_chat(user, "[src]'s display states that it has stored a total of [stored_power*RAD_COLLECTOR_MINING_CONVERSION_RATE], and producing [RAD_COLLECTOR_OUTPUT*RAD_COLLECTOR_MINING_CONVERSION_RATE] research points per minute.") + to_chat(user, "[src]'s display states that it has stored a total of [stored_energy*RAD_COLLECTOR_MINING_CONVERSION_RATE], and is producing [RAD_COLLECTOR_OUTPUT*RAD_COLLECTOR_MINING_CONVERSION_RATE] research points per minute.") else if(!bitcoinmining) to_chat(user,"[src]'s display displays the words: \"Power production mode. Please insert Plasma. Use a multitool to change production modes.\"") @@ -203,14 +209,14 @@ if(active) toggle_power() else - update_icons() + update_icon() /obj/machinery/power/rad_collector/rad_act(pulse_strength) . = ..() if(loaded_tank && active && pulse_strength > RAD_COLLECTOR_EFFICIENCY) - stored_power += (pulse_strength-RAD_COLLECTOR_EFFICIENCY)*RAD_COLLECTOR_COEFFICIENT + stored_energy += (pulse_strength-RAD_COLLECTOR_EFFICIENCY)*RAD_COLLECTOR_COEFFICIENT -/obj/machinery/power/rad_collector/proc/update_icons() +/obj/machinery/power/rad_collector/update_icon() cut_overlays() if(loaded_tank) add_overlay("ptank") @@ -228,7 +234,7 @@ else icon_state = "ca" flick("ca_deactive", src) - update_icons() + update_icon() return #undef RAD_COLLECTOR_EFFICIENCY diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index 11eed412e0e..2f539533330 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -456,7 +456,7 @@ /obj/item/turret_control/Initialize() . = ..() - add_trait(TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) /obj/item/turret_control/afterattack(atom/targeted_atom, mob/user, proxflag, clickparams) . = ..() diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index daf648833d8..91ea92807a4 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -125,23 +125,23 @@ to_chat(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(do_after(user, 20, target = src)) if(C.get_amount() < 10 || !C) return 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 do_sparks(5, TRUE, src) return + if(!terminal) + C.use(10) + user.visible_message(\ + "[user.name] has built a power terminal.",\ + "You build the power terminal.") - C.use(10) - user.visible_message(\ - "[user.name] has built a power terminal.",\ - "You build the power terminal.") - - //build the terminal and link it to the network - make_terminal(T) - terminal.connect_to_network() - connect_to_network() + //build the terminal and link it to the network + make_terminal(T) + terminal.connect_to_network() + connect_to_network() return //crowbarring it ! diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 92e7c7e6b5d..b4cca3bc4b9 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -304,6 +304,12 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) if(!istype(T)) //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(isclosedturf(T)) + var/turf/did_it_melt = T.Melt() + if(!isclosedturf(did_it_melt)) //In case some joker finds way to place these on indestructible walls + visible_message("[src] melts through [T]!") + return + if(power) soundloop.volume = min(40, (round(power/100)/50)+1) // 5 +1 volume per 20 power. 2500 power is max @@ -649,6 +655,13 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) else L.show_message("You hear an unearthly ringing and notice your skin is covered in fresh radiation burns.", 2) +//Do not blow up our internal radio +/obj/machinery/power/supermatter_crystal/contents_explosion(severity, target) + return + +/obj/machinery/power/supermatter_crystal/prevent_content_explosion() + return TRUE + /obj/machinery/power/supermatter_crystal/engine is_main_engine = TRUE diff --git a/code/modules/power/terminal.dm b/code/modules/power/terminal.dm index 3fa815bf998..3860d056459 100644 --- a/code/modules/power/terminal.dm +++ b/code/modules/power/terminal.dm @@ -34,17 +34,17 @@ /obj/machinery/power/proc/can_terminal_dismantle() - . = 0 + . = FALSE /obj/machinery/power/apc/can_terminal_dismantle() - . = 0 + . = FALSE if(opened) - . = 1 + . = TRUE /obj/machinery/power/smes/can_terminal_dismantle() - . = 0 + . = FALSE if(panel_open) - . = 1 + . = TRUE /obj/machinery/power/terminal/proc/dismantle(mob/living/user, obj/item/I) diff --git a/code/modules/power/tesla/coil.dm b/code/modules/power/tesla/coil.dm index 736884a4271..8d8c92567a2 100644 --- a/code/modules/power/tesla/coil.dm +++ b/code/modules/power/tesla/coil.dm @@ -13,6 +13,7 @@ circuit = /obj/item/circuitboard/machine/tesla_coil + var/tesla_flags = TESLA_MOB_DAMAGE | TESLA_OBJ_DAMAGE var/power_loss = 2 var/input_power_multiplier = 1 var/zap_cooldown = 100 @@ -102,7 +103,7 @@ var/power = (powernet.avail/2) add_load(power) playsound(src.loc, 'sound/magic/lightningshock.ogg', 100, 1, extrarange = 5) - tesla_zap(src, 10, power/(coeff/2)) + tesla_zap(src, 10, power/(coeff/2), tesla_flags) tesla_buckle_check(power/(coeff/2)) // Tesla R&D researcher diff --git a/code/modules/power/turbine.dm b/code/modules/power/turbine.dm index 8487d72afb6..21d7d2ccc01 100644 --- a/code/modules/power/turbine.dm +++ b/code/modules/power/turbine.dm @@ -41,6 +41,11 @@ var/comp_id = 0 var/efficiency +/obj/machinery/power/compressor/Destroy() + if (turbine && turbine.compressor == src) + turbine.compressor = null + turbine = null + return ..() /obj/machinery/power/turbine name = "gas turbine generator" @@ -57,6 +62,12 @@ var/lastgen var/productivity = 1 +/obj/machinery/power/turbine/Destroy() + if (compressor && compressor.turbine == src) + compressor.turbine = null + compressor = null + return ..() + /obj/machinery/computer/turbine_computer name = "gas turbine control computer" desc = "A computer to remotely control a gas turbine." @@ -137,6 +148,7 @@ // RPM function to include compression friction - be advised that too low/high of a compfriction value can make things screwy + rpm = min(rpm, (COMPFRICTION*efficiency)/2) rpm = max(0, rpm - (rpm*rpm)/(COMPFRICTION*efficiency)) diff --git a/code/modules/projectiles/ammunition/_firing.dm b/code/modules/projectiles/ammunition/_firing.dm index aa10076980e..8c0684ba74e 100644 --- a/code/modules/projectiles/ammunition/_firing.dm +++ b/code/modules/projectiles/ammunition/_firing.dm @@ -18,7 +18,7 @@ user.changeNext_move(CLICK_CD_RANGE) user.newtonian_move(get_dir(target, user)) update_icon() - return 1 + return TRUE /obj/item/ammo_casing/proc/ready_proj(atom/target, mob/living/user, quiet, zone_override = "") if (!BB) @@ -38,7 +38,7 @@ /obj/item/ammo_casing/proc/throw_proj(atom/target, turf/targloc, mob/living/user, params, spread) var/turf/curloc = get_turf(user) if (!istype(targloc) || !istype(curloc) || !BB) - return 0 + return FALSE var/firing_dir if(BB.firer) @@ -54,7 +54,7 @@ BB.preparePixelProjectile(target, user, params, spread) BB.fire(null, direct_target) BB = null - return 1 + return TRUE /obj/item/ammo_casing/proc/spread(turf/target, turf/current, distro) var/dx = abs(target.x - current.x) diff --git a/code/modules/projectiles/ammunition/caseless/_caseless.dm b/code/modules/projectiles/ammunition/caseless/_caseless.dm index 154d269cd91..a6b65f79e39 100644 --- a/code/modules/projectiles/ammunition/caseless/_caseless.dm +++ b/code/modules/projectiles/ammunition/caseless/_caseless.dm @@ -6,9 +6,10 @@ /obj/item/ammo_casing/caseless/fire_casing(atom/target, mob/living/user, params, distro, quiet, zone_override, spread) if (..()) //successfully firing moveToNullspace() - return 1 + QDEL_NULL(src) + return TRUE else - return 0 + return FALSE /obj/item/ammo_casing/caseless/update_icon() ..() diff --git a/code/modules/projectiles/ammunition/caseless/rocket.dm b/code/modules/projectiles/ammunition/caseless/rocket.dm index cdd7c7eaa4c..bc693d96bc8 100644 --- a/code/modules/projectiles/ammunition/caseless/rocket.dm +++ b/code/modules/projectiles/ammunition/caseless/rocket.dm @@ -1,16 +1,17 @@ - -/obj/item/ammo_casing/caseless/a84mm - desc = "A 84mm HE rocket." - caliber = "84mm" - icon_state = "84mm-hedp" - projectile_type = /obj/item/projectile/bullet/a84mm - -/obj/item/ammo_casing/caseless/srm8 - desc = "A 84mm HE rocket." +/obj/item/ammo_casing/caseless/rocket + name = "\improper PM-9HE" + desc = "An 84mm High Explosive rocket. Fire at people and pray." caliber = "84mm" icon_state = "srm-8" projectile_type = /obj/item/projectile/bullet/a84mm_he +/obj/item/ammo_casing/caseless/rocket/hedp + name = "\improper PM-9HEDP" + desc = "An 84mm High Explosive Dual Purpose rocket. Pointy end toward mechs." + caliber = "84mm" + icon_state = "84mm-hedp" + projectile_type = /obj/item/projectile/bullet/a84mm + /obj/item/ammo_casing/caseless/a75 desc = "A .75 bullet casing." caliber = "75" diff --git a/code/modules/projectiles/ammunition/energy/laser.dm b/code/modules/projectiles/ammunition/energy/laser.dm index 089c79effd4..47455e9754f 100644 --- a/code/modules/projectiles/ammunition/energy/laser.dm +++ b/code/modules/projectiles/ammunition/energy/laser.dm @@ -13,7 +13,7 @@ select_name = "kill" /obj/item/ammo_casing/energy/laser/hos - e_cost = 100 + e_cost = 120 /obj/item/ammo_casing/energy/laser/practice projectile_type = /obj/item/projectile/beam/practice diff --git a/code/modules/projectiles/ammunition/energy/portal.dm b/code/modules/projectiles/ammunition/energy/portal.dm index c4998a88434..dcb8b5e1e0b 100644 --- a/code/modules/projectiles/ammunition/energy/portal.dm +++ b/code/modules/projectiles/ammunition/energy/portal.dm @@ -1,9 +1,10 @@ /obj/item/ammo_casing/energy/wormhole projectile_type = /obj/item/projectile/beam/wormhole e_cost = 0 + harmful = FALSE fire_sound = 'sound/weapons/pulse3.ogg' - var/obj/item/gun/energy/wormhole_projector/gun = null select_name = "blue" + var/obj/item/gun/energy/wormhole_projector/gun /obj/item/ammo_casing/energy/wormhole/orange projectile_type = /obj/item/projectile/beam/wormhole/orange diff --git a/code/modules/projectiles/ammunition/energy/stun.dm b/code/modules/projectiles/ammunition/energy/stun.dm index 9b24571d127..1b4f0b9b519 100644 --- a/code/modules/projectiles/ammunition/energy/stun.dm +++ b/code/modules/projectiles/ammunition/energy/stun.dm @@ -13,7 +13,7 @@ e_cost = 100 /obj/item/ammo_casing/energy/electrode/hos - e_cost = 200 + e_cost = 400 /obj/item/ammo_casing/energy/electrode/old e_cost = 1000 @@ -24,3 +24,6 @@ e_cost = 50 fire_sound = 'sound/weapons/taser2.ogg' harmful = FALSE + +/obj/item/ammo_casing/energy/disabler/hos + e_cost = 60 diff --git a/code/modules/projectiles/ammunition/special/magic.dm b/code/modules/projectiles/ammunition/special/magic.dm index d1f583a5ac8..8df17a9c925 100644 --- a/code/modules/projectiles/ammunition/special/magic.dm +++ b/code/modules/projectiles/ammunition/special/magic.dm @@ -47,3 +47,21 @@ /obj/item/ammo_casing/magic/locker projectile_type = /obj/item/projectile/magic/locker + +/obj/item/ammo_casing/magic/flying + projectile_type = /obj/item/projectile/magic/flying + +/obj/item/ammo_casing/magic/bounty + projectile_type = /obj/item/projectile/magic/bounty + +/obj/item/ammo_casing/magic/antimagic + projectile_type = /obj/item/projectile/magic/antimagic + +/obj/item/ammo_casing/magic/sapping + projectile_type = /obj/item/projectile/magic/sapping + +/obj/item/ammo_casing/magic/necropotence + projectile_type = /obj/item/projectile/magic/necropotence + +/obj/item/ammo_casing/magic/wipe + projectile_type = /obj/item/projectile/magic/wipe diff --git a/code/modules/projectiles/boxes_magazines/_box_magazine.dm b/code/modules/projectiles/boxes_magazines/_box_magazine.dm index bc3fc9b1e16..fdefd897931 100644 --- a/code/modules/projectiles/boxes_magazines/_box_magazine.dm +++ b/code/modules/projectiles/boxes_magazines/_box_magazine.dm @@ -98,7 +98,6 @@ playsound(src, 'sound/weapons/bulletinsert.ogg', 60, TRUE) A.update_icon() update_icon() - return num_loaded /obj/item/ammo_box/attack_self(mob/user) @@ -132,6 +131,12 @@ boolets++ return boolets +/obj/item/ammo_box/magazine/proc/ammo_list(drop_list = FALSE) + var/list/L = stored_ammo.Copy() + if(drop_list) + stored_ammo.Cut() + return L + /obj/item/ammo_box/magazine/proc/empty_magazine() var/turf_mag = get_turf(src) for(var/obj/item/ammo in stored_ammo) diff --git a/code/modules/projectiles/boxes_magazines/external/pistol.dm b/code/modules/projectiles/boxes_magazines/external/pistol.dm index d70b20c65c7..a65e88768c1 100644 --- a/code/modules/projectiles/boxes_magazines/external/pistol.dm +++ b/code/modules/projectiles/boxes_magazines/external/pistol.dm @@ -34,7 +34,10 @@ /obj/item/ammo_box/magazine/m45/update_icon() ..() - icon_state = "45-[ammo_count() ? "8" : "0"]" + if (ammo_count() >= 8) + icon_state = "45-8" + else + icon_state = "45-[ammo_count()]" /obj/item/ammo_box/magazine/pistolm9mm name = "pistol magazine (9mm)" diff --git a/code/modules/projectiles/boxes_magazines/external/rifle.dm b/code/modules/projectiles/boxes_magazines/external/rifle.dm index 96e7d377eae..bca5e0a1e81 100644 --- a/code/modules/projectiles/boxes_magazines/external/rifle.dm +++ b/code/modules/projectiles/boxes_magazines/external/rifle.dm @@ -7,6 +7,7 @@ max_ammo = 10 /obj/item/ammo_box/magazine/m10mm/rifle/update_icon() + ..() if(ammo_count()) icon_state = "75-8" else diff --git a/code/modules/projectiles/boxes_magazines/external/sniper.dm b/code/modules/projectiles/boxes_magazines/external/sniper.dm index 67c6257bac0..b73bb170a0c 100644 --- a/code/modules/projectiles/boxes_magazines/external/sniper.dm +++ b/code/modules/projectiles/boxes_magazines/external/sniper.dm @@ -6,6 +6,7 @@ caliber = ".50" /obj/item/ammo_box/magazine/sniper_rounds/update_icon() + ..() if(ammo_count()) icon_state = "[initial(icon_state)]-ammo" else diff --git a/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm b/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm index 5d674c40017..408431a79cf 100644 --- a/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm +++ b/code/modules/projectiles/boxes_magazines/internal/_cylinder.dm @@ -22,6 +22,16 @@ for(var/i in 1 to rand(0, max_ammo*2)) rotate() +/obj/item/ammo_box/magazine/internal/cylinder/ammo_list(drop_list = FALSE) + var/list/L = list() + for(var/i=1 to stored_ammo.len) + var/obj/item/ammo_casing/bullet = stored_ammo[i] + if(bullet) + L.Add(bullet) + if(drop_list)//We have to maintain the list size, to emulate a cylinder + stored_ammo[i] = null + return L + /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 FALSE diff --git a/code/modules/projectiles/boxes_magazines/internal/grenade.dm b/code/modules/projectiles/boxes_magazines/internal/grenade.dm index 8a585c4c3f5..79a005ee8a9 100644 --- a/code/modules/projectiles/boxes_magazines/internal/grenade.dm +++ b/code/modules/projectiles/boxes_magazines/internal/grenade.dm @@ -10,21 +10,8 @@ caliber = "40mm" max_ammo = 1 -/obj/item/ammo_box/magazine/rocket - name = "84mm HE rocket" - desc = "A 84mm rocket." - icon_state = "srm-8" - ammo_type = /obj/item/ammo_casing/caseless/srm8 +/obj/item/ammo_box/magazine/internal/rocketlauncher + name = "rocket launcher internal magazine" + ammo_type = /obj/item/ammo_casing/caseless/rocket caliber = "84mm" max_ammo = 1 - w_class = WEIGHT_CLASS_NORMAL - -/obj/item/ammo_box/magazine/rocket/update_icon() - ..() - desc = initial(desc) - -/obj/item/ammo_box/magazine/rocket/hedp - name = "84mm HEDP rocket" - icon_state = "84mm-hedp" - ammo_type = /obj/item/ammo_casing/caseless/a84mm - diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 4cf5d6ef6c4..59847ef3e19 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -78,11 +78,16 @@ build_zooming() /obj/item/gun/Destroy() - QDEL_NULL(pin) - QDEL_NULL(gun_light) - QDEL_NULL(bayonet) - QDEL_NULL(chambered) - QDEL_NULL(azoom) + if(pin) + QDEL_NULL(pin) + if(gun_light) + QDEL_NULL(gun_light) + if(bayonet) + QDEL_NULL(bayonet) + if(chambered) //Not all guns are chambered (EMP'ed energy guns etc) + QDEL_NULL(chambered) + if(azoom) + QDEL_NULL(azoom) return ..() /obj/item/gun/handle_atom_del(atom/A) @@ -185,20 +190,19 @@ if(!can_trigger_gun(L)) return - if(!can_shoot()) //Just because you can pull the trigger doesn't mean it can shoot. - shoot_with_empty_chamber(user) - return - if(flag) if(user.zone_selected == BODY_ZONE_PRECISE_MOUTH) handle_suicide(user, target, params) return + if(!can_shoot()) //Just because you can pull the trigger doesn't mean it can shoot. + shoot_with_empty_chamber(user) + return //Exclude lasertag guns from the TRAIT_CLUMSY check. if(clumsy_check) if(istype(user)) - if (user.has_trait(TRAIT_CLUMSY) && prob(40)) + if (HAS_TRAIT(user, TRAIT_CLUMSY) && prob(40)) to_chat(user, "You shoot yourself in the foot with [src]!") var/shot_leg = pick(BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) process_fire(user, user, FALSE, params, shot_leg) @@ -206,7 +210,7 @@ return if(weapon_weight == WEAPON_HEAVY && user.get_inactive_held_item()) - to_chat(user, "You need both hands free to fire [src]!") + to_chat(user, "You need both hands free to fire \the [src]!") return //DUAL (or more!) WIELDING @@ -254,7 +258,7 @@ firing_burst = FALSE return FALSE if(chambered && chambered.BB) - if(user.has_trait(TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. + if(HAS_TRAIT(user, TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. if(chambered.harmful) // Is the bullet chambered harmful? to_chat(user, " [src] is lethally chambered! You don't want to risk harming anyone...") return @@ -262,7 +266,7 @@ sprd = round((rand() - 0.5) * DUALWIELD_PENALTY_EXTRA_MULTIPLIER * (randomized_gun_spread + randomized_bonus_spread)) else //Smart spread sprd = round((((rand_spr/burst_size) * iteration) - (0.5 + (rand_spr * 0.25))) * (randomized_gun_spread + randomized_bonus_spread)) - + before_firing(target,user) if(!chambered.fire_casing(target, user, params, ,suppressed, zone_override, sprd)) shoot_with_empty_chamber(user) firing_burst = FALSE @@ -293,7 +297,7 @@ var/rand_spr = rand() if(spread) randomized_gun_spread = rand(0,spread) - if(user.has_trait(TRAIT_POOR_AIM)) //nice shootin' tex + if(HAS_TRAIT(user, TRAIT_POOR_AIM)) //nice shootin' tex bonus_spread += 25 var/randomized_bonus_spread = rand(0, bonus_spread) @@ -303,11 +307,12 @@ addtimer(CALLBACK(src, .proc/process_burst, user, target, message, params, zone_override, sprd, randomized_gun_spread, randomized_bonus_spread, rand_spr, i), fire_delay * (i - 1)) else if(chambered) - if(user.has_trait(TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. + if(HAS_TRAIT(user, TRAIT_PACIFISM)) // If the user has the pacifist trait, then they won't be able to fire [src] if the round chambered inside of [src] is lethal. if(chambered.harmful) // Is the bullet chambered harmful? to_chat(user, " [src] is lethally chambered! You don't want to risk harming anyone...") return sprd = round((rand() - 0.5) * DUALWIELD_PENALTY_EXTRA_MULTIPLIER * (randomized_gun_spread + randomized_bonus_spread)) + before_firing(target,user) if(!chambered.fire_casing(target, user, params, , suppressed, zone_override, sprd)) shoot_with_empty_chamber(user) return @@ -532,6 +537,10 @@ qdel(pin) pin = new /obj/item/firing_pin +//Happens before the actual projectile creation +/obj/item/gun/proc/before_firing(atom/target,mob/user) + return + ///////////// // ZOOMING // ///////////// diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm index 8e40755dd77..bda2b7e6835 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/ballistic.dm @@ -53,7 +53,7 @@ var/cartridge_wording = "bullet" var/rack_delay = 5 var/recent_rack = 0 - var/tac_reloads = FALSE //Snowflake mechanic no more. + var/tac_reloads = TRUE //Snowflake mechanic no more. /obj/item/gun/ballistic/Initialize() . = ..() @@ -117,24 +117,24 @@ chambered = null else if(empty_chamber) chambered = null - if (chamber_next_round) + if (chamber_next_round && (magazine?.max_ammo > 1)) chamber_round() -/obj/item/gun/ballistic/proc/chamber_round() +/obj/item/gun/ballistic/proc/chamber_round(keep_bullet = FALSE) if (chambered || !magazine) return if (magazine.ammo_count()) - chambered = magazine.get_round((bolt_type == BOLT_TYPE_NO_BOLT)) + chambered = magazine.get_round(keep_bullet || bolt_type == BOLT_TYPE_NO_BOLT) if (bolt_type != BOLT_TYPE_OPEN) chambered.forceMove(src) - + /obj/item/gun/ballistic/proc/rack(mob/user = null) if (bolt_type == BOLT_TYPE_NO_BOLT) //If there's no bolt, nothing to rack return if (bolt_type == BOLT_TYPE_OPEN) if(!bolt_locked) //If it's an open bolt, racking again would do nothing if (user) - to_chat(user, "\The [src] is already ready to fire!") + to_chat(user, "\The [src]'s [bolt_wording] is already cocked!") return bolt_locked = FALSE if (user) @@ -156,13 +156,16 @@ update_icon() /obj/item/gun/ballistic/proc/insert_magazine(mob/user, obj/item/ammo_box/magazine/AM, display_message = TRUE) + if(!istype(AM, mag_type)) + to_chat(user, "\The [AM] doesn't seem to fit into \the [src]...") + return FALSE if(user.transferItemToLoc(AM, src)) magazine = AM if (display_message) to_chat(user, "You load a new [magazine_wording] into \the [src].") playsound(src, load_empty_sound, load_sound_volume, load_sound_vary) if (bolt_type == BOLT_TYPE_OPEN && !bolt_locked) - chamber_round() + chamber_round(TRUE) update_icon() return TRUE else @@ -179,12 +182,15 @@ magazine.forceMove(drop_location()) var/obj/item/ammo_box/magazine/old_mag = magazine if (tac_load) - insert_magazine(user, tac_load, FALSE) - to_chat(user, "You perform a tactical reload on \the [src].") + if (insert_magazine(user, tac_load, FALSE)) + to_chat(user, "You perform a tactical reload on \the [src].") + else + to_chat(user, "You dropped the old [magazine_wording], but the new one doesn't fit. How embarassing.") + magazine = null + else + magazine = null user.put_in_hands(old_mag) old_mag.update_icon() - if (!tac_load) - magazine = null if (display_message) to_chat(user, "You pull the [magazine_wording] out of \the [src].") update_icon() @@ -198,14 +204,14 @@ return if (!internal_magazine && istype(A, /obj/item/ammo_box/magazine)) var/obj/item/ammo_box/magazine/AM = A - if (!magazine && istype(AM, mag_type)) + if (!magazine) insert_magazine(user, AM) - else if (magazine) - if(tac_reloads) + else + if (tac_reloads) eject_magazine(user, FALSE, AM) else to_chat(user, "There's already a [magazine_wording] in \the [src].") - return + return if (istype(A, /obj/item/ammo_casing) || istype(A, /obj/item/ammo_box)) if (bolt_type == BOLT_TYPE_NO_BOLT || internal_magazine) if (chambered && !chambered.BB) @@ -300,17 +306,16 @@ eject_magazine(user) return if(bolt_type == BOLT_TYPE_NO_BOLT) + chambered = null var/num_unloaded = 0 - while (get_ammo() > 0) - var/obj/item/ammo_casing/CB - CB = magazine.get_round(FALSE) - chambered = null + for(var/obj/item/ammo_casing/CB in get_ammo_list(FALSE, TRUE)) CB.forceMove(drop_location()) CB.bounce_away(FALSE, NONE) num_unloaded++ if (num_unloaded) to_chat(user, "You unload [num_unloaded] [cartridge_wording]\s from [src].") playsound(user, eject_sound, eject_sound_volume, eject_sound_vary) + update_icon() else to_chat(user, "[src] is empty!") return @@ -320,13 +325,13 @@ if (recent_rack > world.time) return recent_rack = world.time + rack_delay - rack(user) + rack(user) return /obj/item/gun/ballistic/examine(mob/user) ..() - var/count_chambered = !((bolt_type == BOLT_TYPE_NO_BOLT) || (bolt_type == BOLT_TYPE_OPEN)) + var/count_chambered = !(bolt_type == BOLT_TYPE_NO_BOLT || bolt_type == BOLT_TYPE_OPEN) to_chat(user, "It has [get_ammo(count_chambered)] round\s remaining.") if (!chambered) to_chat(user, "It does not seem to have a round chambered.") @@ -343,6 +348,15 @@ boolets += magazine.ammo_count() return boolets +/obj/item/gun/ballistic/proc/get_ammo_list(countchambered = TRUE, drop_all = FALSE) + var/list/rounds = list() + if(chambered && countchambered) + rounds.Add(chambered) + if(drop_all) + chambered = null + rounds.Add(magazine.ammo_list(drop_all)) + return rounds + #define BRAINS_BLOWN_THROW_RANGE 3 #define BRAINS_BLOWN_THROW_SPEED 1 /obj/item/gun/ballistic/suicide_act(mob/user) diff --git a/code/modules/projectiles/guns/ballistic/automatic.dm b/code/modules/projectiles/guns/ballistic/automatic.dm index 48b3a567019..6d1e13b5a9d 100644 --- a/code/modules/projectiles/guns/ballistic/automatic.dm +++ b/code/modules/projectiles/guns/ballistic/automatic.dm @@ -19,7 +19,6 @@ pin = null bolt_type = BOLT_TYPE_LOCKING mag_display = TRUE - tac_reloads = TRUE /obj/item/gun/ballistic/automatic/proto/unrestricted pin = /obj/item/firing_pin @@ -70,7 +69,6 @@ mag_display = TRUE mag_display_ammo = TRUE empty_indicator = TRUE - tac_reloads = TRUE /obj/item/gun/ballistic/automatic/c20r/unrestricted pin = /obj/item/firing_pin @@ -226,6 +224,7 @@ bolt_type = BOLT_TYPE_OPEN mag_display = TRUE mag_display_ammo = TRUE + tac_reloads = FALSE fire_sound = 'sound/weapons/rifleshot.ogg' rack_sound = 'sound/weapons/chunkyrack.ogg' @@ -250,7 +249,7 @@ update_icon() -/obj/item/gun/ballistic/automatic/l6_saw/update_icon() +/obj/item/gun/ballistic/automatic/l6_saw/update_icon() . = ..() add_overlay("l6_door_[cover_open ? "open" : "closed"]") diff --git a/code/modules/projectiles/guns/ballistic/laser_gatling.dm b/code/modules/projectiles/guns/ballistic/laser_gatling.dm index 49ced8ff399..4f194a5e5fd 100644 --- a/code/modules/projectiles/guns/ballistic/laser_gatling.dm +++ b/code/modules/projectiles/guns/ballistic/laser_gatling.dm @@ -109,6 +109,7 @@ weapon_weight = WEAPON_HEAVY fire_sound = 'sound/weapons/laser.ogg' mag_type = /obj/item/ammo_box/magazine/internal/minigun + tac_reloads = FALSE casing_ejector = FALSE item_flags = NEEDS_PERMIT | SLOWS_WHILE_IN_HAND var/obj/item/minigunpack/ammo_pack diff --git a/code/modules/projectiles/guns/ballistic/launchers.dm b/code/modules/projectiles/guns/ballistic/launchers.dm index f0c77a52a09..300644cae87 100644 --- a/code/modules/projectiles/guns/ballistic/launchers.dm +++ b/code/modules/projectiles/guns/ballistic/launchers.dm @@ -43,11 +43,11 @@ casing_ejector = FALSE /obj/item/gun/ballistic/rocketlauncher - name = "rocket propelled grenade launcher" - desc = "A reusable rocket propelled grenade launcher." + name = "\improper PML-9" + desc = "A reusable rocket propelled grenade launcher. The words \"NT this way\" and an arrow have been written near the barrel." icon_state = "rocketlauncher" item_state = "rocketlauncher" - mag_type = /obj/item/ammo_box/magazine/rocket + mag_type = /obj/item/ammo_box/magazine/internal/rocketlauncher fire_sound = 'sound/weapons/rocketlaunch.ogg' w_class = WEIGHT_CLASS_BULKY can_suppress = FALSE @@ -57,55 +57,21 @@ casing_ejector = FALSE weapon_weight = WEAPON_HEAVY bolt_type = BOLT_TYPE_NO_BOLT - magazine_wording = "rocket" + internal_magazine = TRUE + cartridge_wording = "rocket" empty_indicator = TRUE - -/obj/item/gun/ballistic/rocketlauncher/handle_atom_del(atom/A) - if(A == chambered) - chambered = null - if(!QDELETED(magazine)) - QDEL_NULL(magazine) - if(A == magazine) - magazine = null - if(!QDELETED(chambered)) - QDEL_NULL(chambered) - update_icon() - return ..() - -/obj/item/gun/ballistic/rocketlauncher/can_shoot() - return chambered?.BB + tac_reloads = FALSE /obj/item/gun/ballistic/rocketlauncher/unrestricted pin = /obj/item/firing_pin -/obj/item/gun/ballistic/rocketlauncher/process_chamber() - if(chambered) - chambered = null - if(magazine) - QDEL_NULL(magazine) - update_icon() +/obj/item/gun/ballistic/rocketlauncher/afterattack() + . = ..() + magazine.get_round(FALSE) //Hack to clear the mag after it's fired /obj/item/gun/ballistic/rocketlauncher/attack_self_tk(mob/user) return //too difficult to remove the rocket with TK -/obj/item/gun/ballistic/rocketlauncher/attack_self(mob/living/user) - if(magazine) - if(chambered) - chambered.forceMove(magazine) - magazine.stored_ammo.Insert(1, chambered) - chambered = null - else - stack_trace("Removed [magazine] from [src] without a chambered round") - magazine.forceMove(drop_location()) - if(user.is_holding(src)) - user.put_in_hands(magazine) - playsound(src, 'sound/weapons/gun_magazine_remove_full.ogg', 70, TRUE) - to_chat(user, "You work the [magazine] out from [src].") - magazine = null - else - to_chat(user, "There's no rocket in [src].") - update_icon() - /obj/item/gun/ballistic/rocketlauncher/suicide_act(mob/living/user) user.visible_message("[user] aims [src] at the ground! It looks like [user.p_theyre()] performing a sick rocket jump!", \ "You aim [src] at the ground to perform a bisnasty rocket jump...") @@ -134,4 +100,3 @@ - \ No newline at end of file diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm index 19f78f70948..cb19df8c8f5 100644 --- a/code/modules/projectiles/guns/ballistic/revolver.dm +++ b/code/modules/projectiles/guns/ballistic/revolver.dm @@ -12,18 +12,19 @@ casing_ejector = FALSE internal_magazine = TRUE bolt_type = BOLT_TYPE_NO_BOLT + tac_reloads = FALSE var/spin_delay = 10 var/recent_spin = 0 -/obj/item/gun/ballistic/revolver/chamber_round(spin = 1) - if(spin) - chambered = magazine.get_round(1) +/obj/item/gun/ballistic/revolver/chamber_round(spin_cylinder = TRUE) + if(spin_cylinder) + chambered = magazine.get_round(TRUE) else chambered = magazine.stored_ammo[1] /obj/item/gun/ballistic/revolver/shoot_with_empty_chamber(mob/living/user as mob|obj) ..() - chamber_round(1) + chamber_round(TRUE) /obj/item/gun/ballistic/revolver/AltClick(mob/user) ..() @@ -38,7 +39,7 @@ if(M.stat || !in_range(M,src)) return - + if (recent_spin > world.time) return recent_spin = world.time + spin_delay @@ -54,7 +55,7 @@ . = istype(C) if(.) C.spin() - chamber_round(0) + chamber_round(FALSE) /obj/item/gun/ballistic/revolver/get_ammo(countchambered = FALSE, countempties = TRUE) var/boolets = 0 //mature var names for mature people @@ -72,17 +73,21 @@ to_chat(user, "It can be spun with alt+click") /obj/item/gun/ballistic/revolver/detective - name = "\improper .38 Mars Special" - desc = "A cheap Martian knock-off of a classic law enforcement firearm. Uses .38-special rounds." + name = "\improper Colt Detective Special" + desc = "A classic, if not outdated, law enforcement firearm. Uses .38-special rounds." fire_sound = 'sound/weapons/revolver38shot.ogg' icon_state = "detective" mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rev38 obj_flags = UNIQUE_RENAME unique_reskin = list("Default" = "detective", - "Leopard Spots" = "detective_leopard", - "Black Panther" = "detective_panther", + "Fitz Special" = "detective_fitz", + "Police Positive Special" = "detective_police", + "Blued Steel" = "detective_blued", + "Stainless Steel" = "detective_stainless", "Gold Trim" = "detective_gold", - "The Peacemaker" = "detective_peacemaker" + "Leopard Spots" = "detective_leopard", + "The Peacemaker" = "detective_peacemaker", + "Black Panther" = "detective_panther" ) /obj/item/gun/ballistic/revolver/detective/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0) @@ -157,20 +162,24 @@ /obj/item/gun/ballistic/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." + icon_state = "russianrevolver" mag_type = /obj/item/ammo_box/magazine/internal/cylinder/rus357 var/spun = FALSE +/obj/item/gun/ballistic/revolver/russian/do_spin() + ..() + spun = TRUE + /obj/item/gun/ballistic/revolver/russian/attackby(obj/item/A, mob/user, params) ..() if(get_ammo() > 0) spin() - spun = TRUE update_icon() A.update_icon() return /obj/item/gun/ballistic/revolver/russian/attack_self(mob/user) - if(!spun && can_shoot()) + if(!spun) spin() spun = TRUE return @@ -195,7 +204,7 @@ if(ishuman(user)) var/mob/living/carbon/human/H = user if(!spun) - to_chat(user, "You need to spin the revolver's chamber first!") + to_chat(user, "You need to spin \the [src]'s chamber first!") return spun = FALSE @@ -216,6 +225,11 @@ user.visible_message("*click*") playsound(src, dry_fire_sound, 30, TRUE) +/obj/item/gun/ballistic/revolver/russian/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0) + add_fingerprint(user) + playsound(src, dry_fire_sound, 30, TRUE) + user.visible_message("[user.name] tries to fire \the [src] at the same time, but only succeeds at looking like an idiot.", "\The [src]'s anti-combat mechanism prevents you from firing it at the same time!") + /obj/item/gun/ballistic/revolver/russian/proc/shoot_self(mob/living/carbon/human/user, affecting = BODY_ZONE_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!") @@ -236,7 +250,7 @@ clumsy_check = 0 /obj/item/gun/ballistic/revolver/reverse/can_trigger_gun(mob/living/user) - if((user.has_trait(TRAIT_CLUMSY)) || (user.mind && user.mind.assigned_role == "Clown")) + if((HAS_TRAIT(user, TRAIT_CLUMSY)) || (user.mind && user.mind.assigned_role == "Clown")) return ..() if(process_fire(user, user, FALSE, null, BODY_ZONE_HEAD)) user.visible_message("[user] somehow manages to shoot [user.p_them()]self in the face!", "You somehow shoot yourself in the face! How the hell?!") diff --git a/code/modules/projectiles/guns/ballistic/rifle.dm b/code/modules/projectiles/guns/ballistic/rifle.dm index 2bd902a371c..605221cd301 100644 --- a/code/modules/projectiles/guns/ballistic/rifle.dm +++ b/code/modules/projectiles/guns/ballistic/rifle.dm @@ -1,47 +1,48 @@ /obj/item/gun/ballistic/rifle - name = "Bolt Rifle" - desc = "Some kind of bolt action rifle. You get the feeling you shouldn't have this." - icon_state = "moistnugget" - icon_state = "moistnugget" - mag_type = /obj/item/ammo_box/magazine/internal/boltaction - bolt_wording = "bolt" - bolt_type = BOLT_TYPE_STANDARD - semi_auto = FALSE - internal_magazine = TRUE - fire_sound = "sound/weapons/rifleshot.ogg" - fire_sound_volume = 80 - vary_fire_sound = FALSE - rack_sound = "sound/weapons/mosinboltout.ogg" - bolt_drop_sound = "sound/weapons/mosinboltin.ogg" + name = "Bolt Rifle" + desc = "Some kind of bolt action rifle. You get the feeling you shouldn't have this." + icon_state = "moistnugget" + icon_state = "moistnugget" + mag_type = /obj/item/ammo_box/magazine/internal/boltaction + bolt_wording = "bolt" + bolt_type = BOLT_TYPE_STANDARD + semi_auto = FALSE + internal_magazine = TRUE + fire_sound = "sound/weapons/rifleshot.ogg" + fire_sound_volume = 80 + vary_fire_sound = FALSE + rack_sound = "sound/weapons/mosinboltout.ogg" + bolt_drop_sound = "sound/weapons/mosinboltin.ogg" + tac_reloads = FALSE obj/item/gun/ballistic/rifle/update_icon() - ..() - add_overlay("[icon_state]_bolt[bolt_locked ? "_locked" : ""]") + ..() + add_overlay("[icon_state]_bolt[bolt_locked ? "_locked" : ""]") obj/item/gun/ballistic/rifle/rack(mob/user = null) - if (bolt_locked == FALSE) - to_chat(user, "You open the bolt of \the [src]") - playsound(src, rack_sound, rack_sound_volume, rack_sound_vary) - process_chamber(FALSE, FALSE, FALSE) - bolt_locked = TRUE - update_icon() - return - drop_bolt(user) + if (bolt_locked == FALSE) + to_chat(user, "You open the bolt of \the [src]") + playsound(src, rack_sound, rack_sound_volume, rack_sound_vary) + process_chamber(FALSE, FALSE, FALSE) + bolt_locked = TRUE + update_icon() + return + drop_bolt(user) obj/item/gun/ballistic/rifle/can_shoot() - if (bolt_locked) - return FALSE - . = ..() + if (bolt_locked) + return FALSE + return ..() obj/item/gun/ballistic/rifle/attackby(obj/item/A, mob/user, params) - if (!bolt_locked) - to_chat(user, "The bolt is closed!") - return - . = ..() + if (!bolt_locked) + to_chat(user, "The bolt is closed!") + return + return ..() /obj/item/gun/ballistic/rifle/examine(mob/user) - ..() - to_chat(user, "The bolt is [bolt_locked ? "open" : "closed"].") + ..() + to_chat(user, "The bolt is [bolt_locked ? "open" : "closed"].") /////////////////////// // BOLT ACTION RIFLE // @@ -78,7 +79,7 @@ obj/item/gun/ballistic/rifle/attackby(obj/item/A, mob/user, params) mag_type = /obj/item/ammo_box/magazine/internal/boltaction/enchanted/arcane_barrage /obj/item/gun/ballistic/rifle/boltaction/enchanted/dropped() - ..() + . = ..() guns_left = 0 /obj/item/gun/ballistic/rifle/boltaction/enchanted/proc/discard_gun(mob/user) diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm index 8117769a597..e845bc3b04b 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/ballistic/shotgun.dm @@ -19,6 +19,7 @@ casing_ejector = FALSE bolt_wording = "pump" cartridge_wording = "shell" + tac_reloads = FALSE /obj/item/gun/ballistic/shotgun/blow_up(mob/user) . = 0 diff --git a/code/modules/projectiles/guns/ballistic/toy.dm b/code/modules/projectiles/guns/ballistic/toy.dm index ddad95468a8..bbf909452b7 100644 --- a/code/modules/projectiles/guns/ballistic/toy.dm +++ b/code/modules/projectiles/guns/ballistic/toy.dm @@ -24,6 +24,7 @@ name = "foam force pistol" desc = "A small, easily concealable toy handgun. Ages 8 and up." icon_state = "pistol" + bolt_type = BOLT_TYPE_LOCKING w_class = WEIGHT_CLASS_SMALL mag_type = /obj/item/ammo_box/magazine/toy/pistol fire_sound = 'sound/weapons/gunshot.ogg' @@ -31,10 +32,6 @@ fire_delay = 0 actions_types = list() -/obj/item/gun/ballistic/automatic/toy/pistol/update_icon() - ..() - icon_state = "[initial(icon_state)][chambered ? "" : "-e"][suppressed ? "-suppressed" : ""]" - /obj/item/gun/ballistic/automatic/toy/pistol/riot mag_type = /obj/item/ammo_box/magazine/toy/pistol/riot diff --git a/code/modules/projectiles/guns/energy.dm b/code/modules/projectiles/guns/energy.dm index aebb5db9566..47fcb0979ad 100644 --- a/code/modules/projectiles/guns/energy.dm +++ b/code/modules/projectiles/guns/energy.dm @@ -9,7 +9,7 @@ var/modifystate = 0 var/list/ammo_type = list(/obj/item/ammo_casing/energy) var/select = 1 //The state of the select fire switch. Determines from the ammo_type list what kind of shot is fired next. - var/can_charge = 1 //Can it be charged in a recharger? + var/can_charge = TRUE //Can it be charged in a recharger? var/automatic_charge_overlays = TRUE //Do we handle overlays with base update_icon()? var/charge_sections = 4 ammo_x_offset = 2 @@ -18,7 +18,7 @@ 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 + var/use_cyborg_cell = FALSE //whether the gun's cell drains the cyborg user's cell to recharge var/dead_cell = FALSE //set to true so the gun is given an empty cell /obj/item/gun/energy/emp_act(severity) @@ -57,7 +57,8 @@ fire_delay = shot.delay /obj/item/gun/energy/Destroy() - QDEL_NULL(cell) + if (cell) + QDEL_NULL(cell) STOP_PROCESSING(SSobj, src) return ..() diff --git a/code/modules/projectiles/guns/energy/dueling.dm b/code/modules/projectiles/guns/energy/dueling.dm new file mode 100644 index 00000000000..267d7c3e37e --- /dev/null +++ b/code/modules/projectiles/guns/energy/dueling.dm @@ -0,0 +1,346 @@ +#define DUEL_IDLE 1 +#define DUEL_PREPARATION 2 +#define DUEL_READY 3 +#define DUEL_COUNTDOWN 4 +#define DUEL_FIRING 5 + +//paper rock scissors +#define DUEL_SETTING_A "wide" +#define DUEL_SETTING_B "cone" +#define DUEL_SETTING_C "pinpoint" + +/datum/duel + var/obj/item/gun/energy/dueling/gun_A + var/obj/item/gun/energy/dueling/gun_B + var/state = DUEL_IDLE + var/required_distance = 5 + var/list/confirmations = list() + var/list/fired = list() + var/countdown_length = 10 + var/countdown_step = 0 + +/datum/duel/proc/try_begin() + //Check if both guns are held and if so begin. + var/mob/living/A = get_duelist(gun_A) + var/mob/living/B = get_duelist(gun_B) + if(!A || !B) + message_duelists("To begin the duel, both participants need to be holding paired dueling pistols.") + return + begin() + +/datum/duel/proc/begin() + state = DUEL_PREPARATION + confirmations.Cut() + fired.Cut() + countdown_step = countdown_length + + message_duelists("Set your gun setting and move [required_distance] steps away from your opponent.") + + START_PROCESSING(SSobj,src) + +/datum/duel/proc/get_duelist(obj/gun) + var/mob/living/G = gun.loc + if(!istype(G) || !G.is_holding(gun)) + return null + return G + +/datum/duel/proc/message_duelists(message) + var/mob/living/LA = get_duelist(gun_A) + if(LA) + to_chat(LA,message) + var/mob/living/LB = get_duelist(gun_B) + if(LB) + to_chat(LB,message) + +/datum/duel/proc/other_gun(obj/item/gun/energy/dueling/G) + return G == gun_A ? gun_B : gun_A + +/datum/duel/proc/end() + message_duelists("Duel finished. Re-engaging safety.") + STOP_PROCESSING(SSobj,src) + state = DUEL_IDLE + +/datum/duel/process() + switch(state) + if(DUEL_PREPARATION) + if(check_positioning()) + confirm_positioning() + else if (!get_duelist(gun_A) && !get_duelist(gun_B)) + end() + if(DUEL_READY) + if(!check_positioning()) + back_to_prep() + else if(confirmations.len == 2) + confirm_ready() + if(DUEL_COUNTDOWN) + if(!check_positioning()) + back_to_prep() + else + countdown_step() + if(DUEL_FIRING) + if(check_fired()) + end() + + +/datum/duel/proc/back_to_prep() + message_duelists("Positions invalid. Please move to valid positions [required_distance] steps aways from each other to continue.") + state = DUEL_PREPARATION + confirmations.Cut() + countdown_step = countdown_length + +/datum/duel/proc/confirm_positioning() + message_duelists("Position confirmed. Confirm readiness by pulling the trigger once.") + state = DUEL_READY + +/datum/duel/proc/confirm_ready() + message_duelists("Readiness confirmed. Starting countdown. Commence firing at zero mark.") + state = DUEL_COUNTDOWN + +/datum/duel/proc/countdown_step() + countdown_step-- + if(countdown_step == 0) + state = DUEL_FIRING + message_duelists("Fire!") + else + message_duelists("[countdown_step]!") + +/datum/duel/proc/check_fired() + if(fired.len == 2) + return TRUE + //Let's say if gun was dropped/stowed the user is finished + if(!get_duelist(gun_A)) + return TRUE + if(!get_duelist(gun_B)) + return TRUE + return FALSE + +/datum/duel/proc/check_positioning() + var/mob/living/A = get_duelist(gun_A) + var/mob/living/B = get_duelist(gun_B) + if(!A || !B) + return FALSE + if(!isturf(A.loc) || !isturf(B.loc)) + return FALSE + if(get_dist(A,B) != required_distance) + return FALSE + for(var/turf/T in getline(get_turf(A),get_turf(B))) + if(is_blocked_turf(T,TRUE)) + return FALSE + return TRUE + +/obj/item/gun/energy/dueling + name = "dueling pistol" + desc = "High-tech dueling pistol. Launches chaff and projectile according to preset settings." + icon_state = "dueling_pistol" + item_state = "gun" + ammo_x_offset = 2 + w_class = WEIGHT_CLASS_SMALL + ammo_type = list(/obj/item/ammo_casing/energy/duel) + automatic_charge_overlays = FALSE + var/unlocked = FALSE + var/setting = DUEL_SETTING_A + var/datum/duel/duel + var/mutable_appearance/setting_overlay + +/obj/item/gun/energy/dueling/Initialize() + . = ..() + setting_overlay = mutable_appearance(icon,setting_iconstate()) + add_overlay(setting_overlay) + +/obj/item/gun/energy/dueling/proc/setting_iconstate() + switch(setting) + if(DUEL_SETTING_A) + return "duel_red" + if(DUEL_SETTING_B) + return "duel_green" + if(DUEL_SETTING_C) + return "duel_blue" + return "duel_red" + +/obj/item/gun/energy/dueling/attack_self(mob/living/user) + . = ..() + if(duel.state == DUEL_IDLE) + duel.try_begin() + else + toggle_setting(user) + +/obj/item/gun/energy/dueling/proc/toggle_setting(mob/living/user) + switch(setting) + if(DUEL_SETTING_A) + setting = DUEL_SETTING_B + if(DUEL_SETTING_B) + setting = DUEL_SETTING_C + if(DUEL_SETTING_C) + setting = DUEL_SETTING_A + to_chat(user,"You switch [src] setting to [setting] mode.") + update_icon() + +/obj/item/gun/energy/dueling/update_icon(force_update) + . = ..() + if(setting_overlay) + cut_overlay(setting_overlay) + setting_overlay.icon_state = setting_iconstate() + add_overlay(setting_overlay) + +/obj/item/gun/energy/dueling/Destroy() + . = ..() + if(duel.gun_A == src) + duel.gun_A = null + if(duel.gun_B == src) + duel.gun_B = null + duel = null + +/obj/item/gun/energy/dueling/can_trigger_gun(mob/living/user) + . = ..() + switch(duel.state) + if(DUEL_FIRING) + return . && !duel.fired[src] + if(DUEL_READY) + return . + else + to_chat(user,"[src] is locked. Wait for FIRE signal before shooting.") + return FALSE + +/obj/item/gun/energy/dueling/proc/is_duelist(mob/living/L) + if(!istype(L)) + return FALSE + if(!L.is_holding(duel.other_gun(src))) + return FALSE + return TRUE + +/obj/item/gun/energy/dueling/process_fire(atom/target, mob/living/user, message, params, zone_override, bonus_spread) + if(duel.state == DUEL_READY) + duel.confirmations[src] = TRUE + to_chat(user,"You confirm your readiness.") + return + else if(!is_duelist(target)) //I kinda want to leave this out just to see someone shoot a bystander or missing. + to_chat(user,"[src] safety system prevents shooting anyone but your designated opponent.") + return + else + duel.fired[src] = TRUE + . = ..() + +/obj/item/gun/energy/dueling/before_firing(target,user) + var/obj/item/ammo_casing/energy/duel/D = chambered + D.setting = setting + +/obj/effect/temp_visual/dueling_chaff + icon = 'icons/effects/effects.dmi' + icon_state = "shield-old" + duration = 30 + var/setting + +/obj/effect/temp_visual/dueling_chaff/update_icon() + . = ..() + switch(setting) + if(DUEL_SETTING_A) + color = "red" + if(DUEL_SETTING_B) + color = "green" + if(DUEL_SETTING_C) + color = "blue" + +//Casing + +/obj/item/ammo_casing/energy/duel + e_cost = 0 + projectile_type = /obj/item/projectile/energy/duel + var/setting + +/obj/item/ammo_casing/energy/duel/ready_proj(atom/target, mob/living/user, quiet, zone_override) + . = ..() + var/obj/item/projectile/energy/duel/D = BB + D.setting = setting + D.update_icon() + +/obj/item/ammo_casing/energy/duel/fire_casing(atom/target, mob/living/user, params, distro, quiet, zone_override, spread) + . = ..() + var/obj/effect/temp_visual/dueling_chaff/C = new(get_turf(user)) + C.setting = setting + C.update_icon() + +//Projectile + +/obj/item/projectile/energy/duel + name = "dueling beam" + icon_state = "declone" + reflectable = FALSE + homing = TRUE + var/setting + +/obj/item/projectile/energy/duel/update_icon() + . = ..() + switch(setting) + if(DUEL_SETTING_A) + color = "red" + if(DUEL_SETTING_B) + color = "green" + if(DUEL_SETTING_C) + color = "blue" + +/obj/item/projectile/energy/duel/on_hit(atom/target, blocked) + . = ..() + var/turf/T = get_turf(target) + var/obj/effect/temp_visual/dueling_chaff/C = locate() in T + if(C) + var/counter_setting + switch(setting) + if(DUEL_SETTING_A) + counter_setting = DUEL_SETTING_B + if(DUEL_SETTING_B) + counter_setting = DUEL_SETTING_C + if(DUEL_SETTING_C) + counter_setting = DUEL_SETTING_A + if(C.setting == counter_setting) + return BULLET_ACT_BLOCK + + var/mob/living/L = target + if(!istype(target)) + return BULLET_ACT_BLOCK + + var/obj/item/bodypart/B = L.get_bodypart(BODY_ZONE_HEAD) + B.dismember() + qdel(B) + +//Storage case. +/obj/item/storage/lockbox/dueling + name = "dueling pistol case" + desc = "Let's solve this like gentlespacemen." + icon_state = "medalbox+l" + item_state = "syringe_kit" + lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi' + righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi' + w_class = WEIGHT_CLASS_NORMAL + req_access = list(ACCESS_CAPTAIN) + icon_locked = "medalbox+l" + icon_closed = "medalbox" + icon_broken = "medalbox+b" + +/obj/item/storage/lockbox/dueling/ComponentInitialize() + . = ..() + GET_COMPONENT(STR, /datum/component/storage) + STR.max_w_class = WEIGHT_CLASS_SMALL + STR.max_items = 2 + STR.can_hold = typecacheof(list(/obj/item/gun/energy/dueling)) + +/obj/item/storage/lockbox/dueling/update_icon() + cut_overlays() + var/locked = SEND_SIGNAL(src, COMSIG_IS_STORAGE_LOCKED) + if(locked) + icon_state = "medalbox+l" + else + icon_state = "medalbox" + if(open) + icon_state += "open" + if(broken) + icon_state += "+b" + +/obj/item/storage/lockbox/dueling/PopulateContents() + . = ..() + var/obj/item/gun/energy/dueling/gun_A = new(src) + var/obj/item/gun/energy/dueling/gun_B = new(src) + var/datum/duel/D = new + gun_A.duel = D + gun_B.duel = D + D.gun_A = gun_A + D.gun_B = gun_B diff --git a/code/modules/projectiles/guns/energy/energy_gun.dm b/code/modules/projectiles/guns/energy/energy_gun.dm index 976733246c4..c0c4d23a6b6 100644 --- a/code/modules/projectiles/guns/energy/energy_gun.dm +++ b/code/modules/projectiles/guns/energy/energy_gun.dm @@ -12,7 +12,7 @@ /obj/item/gun/energy/e_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." + desc = "A small, pistol-sized energy gun with a built-in flashlight. It has two settings: disable and kill." icon_state = "mini" item_state = "gun" w_class = WEIGHT_CLASS_SMALL @@ -53,9 +53,10 @@ /obj/item/gun/energy/e_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." + cell_type = /obj/item/stock_parts/cell{charge = 1200; maxcharge = 1200} icon_state = "hoslaser" 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_type = list(/obj/item/ammo_casing/energy/electrode/hos, /obj/item/ammo_casing/energy/laser/hos, /obj/item/ammo_casing/energy/disabler/hos) ammo_x_offset = 4 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF @@ -95,10 +96,11 @@ item_state = "nucgun" charge_delay = 5 pin = null - can_charge = 0 + can_charge = FALSE 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) + ammo_type = list(/obj/item/ammo_casing/energy/laser, /obj/item/ammo_casing/energy/disabler) selfcharge = 1 + var/reactor_overloaded var/fail_tick = 0 var/fail_chance = 0 @@ -123,7 +125,7 @@ if(201 to INFINITY) SSobj.processing.Remove(src) M.rad_act(80) - crit_fail = 1 + reactor_overloaded = TRUE to_chat(M, "Your [name]'s reactor overloads!") /obj/item/gun/energy/e_gun/nuclear/emp_act(severity) @@ -134,7 +136,7 @@ /obj/item/gun/energy/e_gun/nuclear/update_icon() ..() - if(crit_fail) + if(reactor_overloaded) add_overlay("[icon_state]_fail_3") else switch(fail_tick) diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index 6e8174b3566..66e47514ed0 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -47,9 +47,9 @@ ammo_type = list(/obj/item/ammo_casing/energy/laser/scatter, /obj/item/ammo_casing/energy/laser) /obj/item/gun/energy/laser/cyborg - can_charge = 0 + can_charge = FALSE desc = "An energy-based laser gun that draws power from the cyborg's internal energy cell directly. So this is what freedom looks like?" - use_cyborg_cell = 1 + use_cyborg_cell = TRUE /obj/item/gun/energy/laser/cyborg/emp_act() return diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 193a23f8212..ae8f7118a42 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -124,7 +124,7 @@ attack_verb = list("attacked", "slashed", "cut", "sliced") force = 12 sharpness = IS_SHARP - can_charge = 0 + can_charge = FALSE heat = 3800 usesound = list('sound/items/welder.ogg', 'sound/items/welder2.ogg') @@ -283,12 +283,12 @@ /obj/item/gun/energy/printer name = "cyborg lmg" desc = "An LMG that fires 3D-printed flechettes. They are slowly resupplied using the cyborg's internal power source." - icon_state = "l6closed0" + icon_state = "l6_cyborg" icon = 'icons/obj/guns/projectile.dmi' cell_type = "/obj/item/stock_parts/cell/secborg" ammo_type = list(/obj/item/ammo_casing/energy/c3dbullet) - can_charge = 0 - use_cyborg_cell = 1 + can_charge = FALSE + use_cyborg_cell = TRUE /obj/item/gun/energy/printer/update_icon() return diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 96d263c6c58..a80bb49f4e1 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -27,8 +27,8 @@ 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 = FALSE - can_charge = 0 - use_cyborg_cell = 1 + can_charge = FALSE + use_cyborg_cell = TRUE /obj/item/gun/energy/disabler name = "disabler" @@ -36,10 +36,13 @@ icon_state = "disabler" item_state = null ammo_type = list(/obj/item/ammo_casing/energy/disabler) - ammo_x_offset = 3 + ammo_x_offset = 2 + can_flashlight = TRUE + flight_x_offset = 15 + flight_y_offset = 10 /obj/item/gun/energy/disabler/cyborg 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 + can_charge = FALSE + use_cyborg_cell = TRUE diff --git a/code/modules/projectiles/guns/magic.dm b/code/modules/projectiles/guns/magic.dm index 5a15a74b7eb..90d00fb730c 100644 --- a/code/modules/projectiles/guns/magic.dm +++ b/code/modules/projectiles/guns/magic.dm @@ -14,7 +14,7 @@ var/charges = 0 var/recharge_rate = 4 var/charge_tick = 0 - var/can_charge = 1 + var/can_charge = TRUE var/ammo_type var/no_den_usage clumsy_check = 0 @@ -24,15 +24,17 @@ lefthand_file = 'icons/mob/inhands/items_lefthand.dmi' //not really a gun and some toys use these inhands righthand_file = 'icons/mob/inhands/items_righthand.dmi' -/obj/item/gun/magic/afterattack(atom/target, mob/living/user, flag) +/obj/item/gun/magic/process_fire(atom/target, mob/living/user, message, params, zone_override, bonus_spread) if(no_den_usage) var/area/A = get_area(user) if(istype(A, /area/wizard_station)) + add_fingerprint(user) to_chat(user, "You know better than to violate the security of The Den, best wait until you leave to use [src].") return else no_den_usage = 0 if(checks_antimagic && user.anti_magic_check(TRUE, FALSE, major = FALSE, self = TRUE)) + add_fingerprint(user) to_chat(user, "Something is interfering with [src].") return . = ..() diff --git a/code/modules/projectiles/guns/magic/staff.dm b/code/modules/projectiles/guns/magic/staff.dm index 14b2ff0c1a1..6812e1d0478 100644 --- a/code/modules/projectiles/guns/magic/staff.dm +++ b/code/modules/projectiles/guns/magic/staff.dm @@ -43,7 +43,9 @@ no_den_usage = 1 var/allowed_projectile_types = list(/obj/item/projectile/magic/change, /obj/item/projectile/magic/animate, /obj/item/projectile/magic/resurrection, /obj/item/projectile/magic/death, /obj/item/projectile/magic/teleport, /obj/item/projectile/magic/door, /obj/item/projectile/magic/aoe/fireball, - /obj/item/projectile/magic/spellblade, /obj/item/projectile/magic/arcane_barrage, /obj/item/projectile/magic/locker) + /obj/item/projectile/magic/spellblade, /obj/item/projectile/magic/arcane_barrage, /obj/item/projectile/magic/locker, /obj/item/projectile/magic/flying, + /obj/item/projectile/magic/bounty, /obj/item/projectile/magic/antimagic, /obj/item/projectile/magic/fetch, /obj/item/projectile/magic/sapping, + /obj/item/projectile/magic/necropotence, /obj/item/projectile/magic, /obj/item/projectile/temp/chill, /obj/item/projectile/magic/wipe) /obj/item/gun/magic/staff/chaos/process_fire(atom/target, mob/living/user, message = TRUE, params = null, zone_override = "", bonus_spread = 0) chambered.projectile_type = pick(allowed_projectile_types) @@ -105,4 +107,36 @@ max_charges = 6 recharge_rate = 4 +//yes, they don't have sounds. they're admin staves, and their projectiles will play the chaos bolt sound anyway so why bother? +/obj/item/gun/magic/staff/flying + name = "staff of flying" + desc = "An artefact that spits bolts of graceful magic that can make something fly." + fire_sound = 'sound/magic/staff_healing.ogg' + ammo_type = /obj/item/ammo_casing/magic/flying + icon_state = "staffofflight" + item_state = "staffofflight" + +/obj/item/gun/magic/staff/sapping + name = "staff of sapping" + desc = "An artefact that spits bolts of sapping magic that can make something sad." + fire_sound = 'sound/magic/staff_change.ogg' + ammo_type = /obj/item/ammo_casing/magic/sapping + icon_state = "staffofsapping" + item_state = "staffofsapping" + +/obj/item/gun/magic/staff/necropotence + name = "staff of necropotence" + desc = "An artefact that spits bolts of death magic that can repurpose the soul." + fire_sound = 'sound/magic/staff_change.ogg' + ammo_type = /obj/item/ammo_casing/magic/necropotence + icon_state = "staffofnecropotence" + item_state = "staffofnecropotence" + +/obj/item/gun/magic/staff/wipe + name = "staff of possession" + desc = "An artefact that spits bolts of mind-unlocking magic that can let ghosts invade the victim's mind." + fire_sound = 'sound/magic/staff_change.ogg' + ammo_type = /obj/item/ammo_casing/magic/wipe + icon_state = "staffofwipe" + item_state = "staffofwipe" diff --git a/code/modules/projectiles/guns/magic/wand.dm b/code/modules/projectiles/guns/magic/wand.dm index 0bc111b7f36..10af6e66087 100644 --- a/code/modules/projectiles/guns/magic/wand.dm +++ b/code/modules/projectiles/guns/magic/wand.dm @@ -5,7 +5,7 @@ icon_state = "nothingwand" item_state = "wand" w_class = WEIGHT_CLASS_SMALL - can_charge = 0 + can_charge = FALSE max_charges = 100 //100, 50, 50, 34 (max charge distribution by 25%ths) var/variable_charges = TRUE diff --git a/code/modules/projectiles/guns/misc/beam_rifle.dm b/code/modules/projectiles/guns/misc/beam_rifle.dm index 81e1b7ffd2f..66ba6d4115d 100644 --- a/code/modules/projectiles/guns/misc/beam_rifle.dm +++ b/code/modules/projectiles/guns/misc/beam_rifle.dm @@ -267,11 +267,9 @@ stop_aiming(current_user) QDEL_NULL(mobhook) if(istype(current_user)) - LAZYREMOVE(current_user.mousemove_intercept_objects, src) current_user = null if(istype(user)) current_user = user - LAZYOR(current_user.mousemove_intercept_objects, src) mobhook = user.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/on_mob_move))) /obj/item/gun/energy/beam_rifle/onMouseDrag(src_object, over_object, src_location, over_location, params, mob) diff --git a/code/modules/projectiles/pins.dm b/code/modules/projectiles/pins.dm index 3698eb1ede2..05d63673066 100644 --- a/code/modules/projectiles/pins.dm +++ b/code/modules/projectiles/pins.dm @@ -133,7 +133,7 @@ // A gun with ultra-honk pin is useful for clown and useless for everyone else. /obj/item/firing_pin/clown/ultra/pin_auth(mob/living/user) playsound(src.loc, 'sound/items/bikehorn.ogg', 50, 1) - if(user && (!(user.has_trait(TRAIT_CLUMSY)) && !(user.mind && user.mind.assigned_role == "Clown"))) + if(user && (!(HAS_TRAIT(user, TRAIT_CLUMSY)) && !(user.mind && user.mind.assigned_role == "Clown"))) return FALSE return TRUE diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index f476cc52800..28496d3f874 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -45,6 +45,7 @@ var/ricochets = 0 var/ricochets_max = 2 var/ricochet_chance = 30 + var/force_hit = FALSE //If the object being hit can pass ths damage on to something else, it should not do it for this bullet. //Hitscan var/hitscan = FALSE //Whether this is hitscan. If it is, speed is basically ignored. @@ -79,7 +80,7 @@ var/damage = 10 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/nodamage = FALSE //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/range = 50 //This will de-increment every step. When 0, it will deletze the projectile. diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 50038006c2a..ded512afcd9 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -45,7 +45,7 @@ /obj/item/projectile/beam/practice name = "practice laser" damage = 0 - nodamage = 1 + nodamage = TRUE /obj/item/projectile/beam/scatter name = "laser pellet" diff --git a/code/modules/projectiles/projectile/bullets/shotgun.dm b/code/modules/projectiles/projectile/bullets/shotgun.dm index ffd1126532a..0780766c466 100644 --- a/code/modules/projectiles/projectile/bullets/shotgun.dm +++ b/code/modules/projectiles/projectile/bullets/shotgun.dm @@ -5,7 +5,7 @@ /obj/item/projectile/bullet/shotgun_beanbag name = "beanbag slug" damage = 5 - stamina = 80 + stamina = 55 /obj/item/projectile/bullet/incendiary/shotgun name = "incendiary slug" @@ -56,7 +56,7 @@ /obj/item/projectile/bullet/pellet var/tile_dropoff = 0.75 - var/tile_dropoff_s = 1.25 + var/tile_dropoff_s = 0.5 /obj/item/projectile/bullet/pellet/shotgun_buckshot name = "buckshot pellet" @@ -65,7 +65,7 @@ /obj/item/projectile/bullet/pellet/shotgun_rubbershot name = "rubbershot pellet" damage = 3 - stamina = 25 + stamina = 11 /obj/item/projectile/bullet/pellet/Range() ..() @@ -91,5 +91,4 @@ // Mech Scattershot /obj/item/projectile/bullet/scattershot - damage = 20 - stamina = 65 + damage = 24 diff --git a/code/modules/projectiles/projectile/energy/ebow.dm b/code/modules/projectiles/projectile/energy/ebow.dm index 640d4d11976..cf0e6f81dcc 100644 --- a/code/modules/projectiles/projectile/energy/ebow.dm +++ b/code/modules/projectiles/projectile/energy/ebow.dm @@ -1,11 +1,13 @@ /obj/item/projectile/energy/bolt //ebow bolts name = "bolt" icon_state = "cbbolt" - damage = 8 + damage = 15 damage_type = TOX - nodamage = 0 - paralyze = 100 - stutter = 5 + nodamage = FALSE + stamina = 50 + eyeblur = 10 + knockdown = 10 + slur = 5 /obj/item/projectile/energy/bolt/halloween name = "candy corn" diff --git a/code/modules/projectiles/projectile/energy/net_snare.dm b/code/modules/projectiles/projectile/energy/net_snare.dm index b61beadfe99..a30c152175b 100644 --- a/code/modules/projectiles/projectile/energy/net_snare.dm +++ b/code/modules/projectiles/projectile/energy/net_snare.dm @@ -58,7 +58,7 @@ /obj/item/projectile/energy/trap name = "energy snare" icon_state = "e_snare" - nodamage = 1 + nodamage = TRUE hitsound = 'sound/weapons/taserhit.ogg' range = 4 @@ -77,7 +77,7 @@ /obj/item/projectile/energy/trap/cyborg name = "Energy Bola" icon_state = "e_snare" - nodamage = 1 + nodamage = TRUE paralyze = 0 hitsound = 'sound/weapons/taserhit.ogg' range = 10 diff --git a/code/modules/projectiles/projectile/energy/nuclear_particle.dm b/code/modules/projectiles/projectile/energy/nuclear_particle.dm index 1753587ad3c..d7674f3a6ee 100644 --- a/code/modules/projectiles/projectile/energy/nuclear_particle.dm +++ b/code/modules/projectiles/projectile/energy/nuclear_particle.dm @@ -3,10 +3,10 @@ name = "nuclear particle" icon_state = "nuclear_particle" pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE - damage = 20 + damage = 10 damage_type = TOX irradiate = 2500 //enough to knockdown and induce vomiting - speed = 0.4 + speed = 0.4 hitsound = 'sound/weapons/emitter2.ogg' impact_type = /obj/effect/projectile/impact/xray var/static/list/particle_colors = list( @@ -25,22 +25,6 @@ add_atom_colour(particle_colors[our_color], FIXED_COLOUR_PRIORITY) set_light(4, 3, particle_colors[our_color]) //Range of 4, brightness of 3 - Same range as a flashlight -/atom/proc/fire_nuclear_particles(power_ratio) //used by fusion to fire random # of nuclear particles - power ratio determines about how many are fired - var/random_particles = rand(3,6) - var/particles_to_fire - var/particles_fired - switch(power_ratio) //multiply random_particles * factor for whatever tier - if(0 to FUSION_MID_TIER_THRESHOLD) - particles_to_fire = random_particles * FUSION_PARTICLE_FACTOR_LOW - if(FUSION_MID_TIER_THRESHOLD to FUSION_HIGH_TIER_THRESHOLD) - particles_to_fire = random_particles * FUSION_PARTICLE_FACTOR_MID - if(FUSION_HIGH_TIER_THRESHOLD to FUSION_SUPER_TIER_THRESHOLD) - particles_to_fire = random_particles * FUSION_PARTICLE_FACTOR_HIGH - if(FUSION_SUPER_TIER_THRESHOLD to INFINITY) - particles_to_fire = random_particles * FUSION_PARTICLE_FACTOR_SUPER - while(particles_to_fire) - particles_fired++ - var/angle = rand(0,360) - var/obj/item/projectile/energy/nuclear_particle/P = new /obj/item/projectile/energy/nuclear_particle(src) - addtimer(CALLBACK(P, /obj/item/projectile.proc/fire, angle), particles_fired) //multiply particles fired * delay so the particles end up stagnated (once every decisecond) - particles_to_fire-- \ No newline at end of file +/atom/proc/fire_nuclear_particle(angle = rand(0,360)) //used by fusion to fire random nuclear particles. Fires one particle in a random direction. + var/obj/item/projectile/energy/nuclear_particle/P = new /obj/item/projectile/energy/nuclear_particle(src) + P.fire(angle) \ No newline at end of file diff --git a/code/modules/projectiles/projectile/energy/stun.dm b/code/modules/projectiles/projectile/energy/stun.dm index bc75899aa71..24eb54ebe69 100644 --- a/code/modules/projectiles/projectile/energy/stun.dm +++ b/code/modules/projectiles/projectile/energy/stun.dm @@ -2,7 +2,7 @@ name = "electrode" icon_state = "spark" color = "#FFFF00" - nodamage = 1 + nodamage = TRUE paralyze = 100 stutter = 5 jitter = 20 @@ -22,7 +22,7 @@ SEND_SIGNAL(C, COMSIG_LIVING_MINOR_SHOCK) if(C.dna && C.dna.check_mutation(HULK)) C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk") - else if((C.status_flags & CANKNOCKDOWN) && !C.has_trait(TRAIT_STUNIMMUNE)) + else if((C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE)) addtimer(CALLBACK(C, /mob/living/carbon.proc/do_jitter_animation, jitter), 5) /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 diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index 3b02082f781..a22b53a8cb5 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -3,7 +3,7 @@ icon_state = "energy" damage = 0 damage_type = OXY - nodamage = 1 + nodamage = TRUE armour_penetration = 100 flag = "magic" @@ -25,7 +25,7 @@ icon_state = "ion" damage = 0 damage_type = OXY - nodamage = 1 + nodamage = TRUE /obj/item/projectile/magic/resurrection/on_hit(mob/living/carbon/target) . = ..() @@ -66,7 +66,7 @@ if(!isturf(target)) teleloc = target.loc for(var/atom/movable/stuff in teleloc) - if(!stuff.anchored && stuff.loc) + if(!stuff.anchored && stuff.loc && !isobserver(stuff)) if(do_teleport(stuff, stuff, 10, channel = TELEPORT_CHANNEL_MAGIC)) teleammount++ var/datum/effect_system/smoke_spread/smoke = new @@ -104,7 +104,7 @@ icon_state = "energy" damage = 0 damage_type = OXY - nodamage = 1 + nodamage = TRUE var/list/door_types = list(/obj/structure/mineral_door/wood, /obj/structure/mineral_door/iron, /obj/structure/mineral_door/silver, /obj/structure/mineral_door/gold, /obj/structure/mineral_door/uranium, /obj/structure/mineral_door/sandstone, /obj/structure/mineral_door/transparent/plasma, /obj/structure/mineral_door/transparent/diamond) /obj/item/projectile/magic/door/on_hit(atom/target) @@ -133,7 +133,7 @@ icon_state = "ice_1" damage = 0 damage_type = BURN - nodamage = 1 + nodamage = TRUE /obj/item/projectile/magic/change/on_hit(atom/change) . = ..() @@ -241,17 +241,17 @@ new_mob = new path(M.loc) if("humanoid") + new_mob = new /mob/living/carbon/human(M.loc) + if(prob(50)) - new_mob = new /mob/living/carbon/human(M.loc) - else - var/chooseable_races = list() + var/list/chooseable_races = list() for(var/speciestype in subtypesof(/datum/species)) var/datum/species/S = speciestype if(initial(S.changesource_flags) & WABBAJACK) chooseable_races += speciestype - var/hooman = pick(chooseable_races) - new_mob =new hooman(M.loc) + if(chooseable_races.len) + new_mob.set_species(pick(chooseable_races)) var/datum/preferences/A = new() //Randomize appearance for the human A.copy_to(new_mob, icon_updates=0) @@ -292,7 +292,7 @@ icon_state = "red_1" damage = 0 damage_type = BURN - nodamage = 1 + nodamage = TRUE /obj/item/projectile/magic/animate/on_hit(atom/target, blocked = FALSE) target.animate_atom_living(firer) @@ -339,7 +339,7 @@ damage_type = BURN flag = "magic" dismemberment = 50 - nodamage = 0 + nodamage = FALSE /obj/item/projectile/magic/spellblade/on_hit(target) if(ismob(target)) @@ -355,7 +355,7 @@ icon_state = "arcane_barrage" damage = 20 damage_type = BURN - nodamage = 0 + nodamage = FALSE armour_penetration = 0 flag = "magic" hitsound = 'sound/weapons/barragespellhit.ogg' @@ -378,15 +378,20 @@ var/weld = TRUE var/created = FALSE //prevents creation of more then one locker if it has multiple hits var/locker_suck = TRUE + var/obj/structure/closet/locker_temp_instance = /obj/structure/closet/decay + +/obj/item/projectile/magic/locker/Initialize() + . = ..() + locker_temp_instance = new(src) /obj/item/projectile/magic/locker/prehit(atom/A) - if(ismob(A) && locker_suck) - var/mob/M = A + if(isliving(A) && locker_suck) + var/mob/living/M = A if(M.anti_magic_check()) M.visible_message("[src] vanishes on contact with [A]!") qdel(src) return - if(M.anchored) + if(!locker_temp_instance.insertion_allowed(M)) return ..() M.forceMove(src) return FALSE @@ -395,7 +400,7 @@ /obj/item/projectile/magic/locker/on_hit(target) if(created) return ..() - var/obj/structure/closet/decay/C = new(get_turf(src)) + var/obj/structure/closet/C = new locker_temp_instance(get_turf(src)) if(LAZYLEN(contents)) for(var/atom/movable/AM in contents) C.insert(AM) @@ -451,6 +456,142 @@ addtimer(CALLBACK(src, .proc/decay), 15 SECONDS) icon_welded = "welded" +/obj/item/projectile/magic/flying + name = "bolt of flying" + icon_state = "flight" + +/obj/item/projectile/magic/flying/on_hit(target) + . = ..() + if(isliving(target)) + var/mob/living/L = target + if(L.anti_magic_check()) + L.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + var/atom/throw_target = get_edge_target_turf(L, angle2dir(Angle)) + L.throw_at(throw_target, 200, 4) + +/obj/item/projectile/magic/bounty + name = "bolt of bounty" + icon_state = "bounty" + +/obj/item/projectile/magic/bounty/on_hit(target) + . = ..() + if(isliving(target)) + var/mob/living/L = target + if(L.anti_magic_check() || !firer) + L.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + L.apply_status_effect(STATUS_EFFECT_BOUNTY, firer) + +/obj/item/projectile/magic/antimagic + name = "bolt of antimagic" + icon_state = "antimagic" + +/obj/item/projectile/magic/antimagic/on_hit(target) + . = ..() + if(isliving(target)) + var/mob/living/L = target + if(L.anti_magic_check()) + L.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + L.apply_status_effect(STATUS_EFFECT_ANTIMAGIC) + +/obj/item/projectile/magic/fetch + name = "bolt of fetching" + icon_state = "fetch" + +/obj/item/projectile/magic/fetch/on_hit(target) + . = ..() + if(isliving(target)) + var/mob/living/L = target + if(L.anti_magic_check() || !firer) + L.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + var/atom/throw_target = get_edge_target_turf(L, get_dir(L, firer)) + L.throw_at(throw_target, 200, 4) + +/obj/item/projectile/magic/sapping + name = "bolt of sapping" + icon_state = "sapping" + +/obj/item/projectile/magic/sapping/on_hit(target) + . = ..() + if(ismob(target)) + var/mob/M = target + if(M.anti_magic_check()) + M.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, src, /datum/mood_event/sapped) + +/obj/item/projectile/magic/necropotence + name = "bolt of necropotence" + icon_state = "necropotence" + +/obj/item/projectile/magic/necropotence/on_hit(target) + . = ..() + if(isliving(target)) + var/mob/living/L = target + if(L.anti_magic_check() || !L.mind || !L.mind.hasSoul) + L.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + to_chat(L, "Your body feels drained and there is a burning pain in your chest.") + L.maxHealth -= 20 + L.health = min(L.health, L.maxHealth) + if(L.maxHealth <= 0) + to_chat(L, "Your weakened soul is completely consumed by the [src]!") + L.mind.hasSoul = FALSE + for(var/obj/effect/proc_holder/spell/spell in L.mind.spell_list) + spell.charge_counter = spell.charge_max + spell.recharging = FALSE + spell.update_icon() + +/obj/item/projectile/magic/wipe + name = "bolt of possession" + icon_state = "wipe" + +/obj/item/projectile/magic/wipe/on_hit(target) + . = ..() + if(iscarbon(target)) + var/mob/living/carbon/M = target + if(M.anti_magic_check()) + M.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + for(var/x in M.get_traumas())//checks to see if the victim is already going through possession + if(istype(x, /datum/brain_trauma/special/imaginary_friend/trapped_owner)) + M.visible_message("[src] vanishes on contact with [target]!") + return BULLET_ACT_BLOCK + to_chat(M, "Your mind has been opened to possession!") + possession_test(M) + return BULLET_ACT_HIT + +/obj/item/projectile/magic/wipe/proc/possession_test(var/mob/living/carbon/M) + var/datum/brain_trauma/special/imaginary_friend/trapped_owner/trauma = M.gain_trauma(/datum/brain_trauma/special/imaginary_friend/trapped_owner) + var/poll_message = "Do you want to play as [M.real_name]?" + if(M.mind && M.mind.assigned_role) + 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]." + else if(M.mind) + var/datum/antagonist/A = M.mind.has_antag_datum(/datum/antagonist/) + if(A) + poll_message = "[poll_message] Status:[A.name]." + var/list/mob/dead/observer/candidates = pollCandidatesForMob(poll_message, ROLE_PAI, null, FALSE, 100, M) + if(M.stat == DEAD)//boo. + return + if(LAZYLEN(candidates)) + var/mob/dead/observer/C = pick(candidates) + to_chat(M, "You have been noticed by a ghost, and it has possessed you!") + var/oldkey = M.key + M.ghostize(0) + M.key = C.key + trauma.friend.key = oldkey + trauma.friend.reset_perspective(null) + trauma.friend.Show() + trauma.friend_initialized = TRUE + else + to_chat(M, "Your mind has managed to go unnoticed in the spirit world.") + qdel(trauma) + /obj/item/projectile/magic/aoe name = "Area Bolt" desc = "What the fuck does this do?!" @@ -470,7 +611,7 @@ icon_state = "tesla_projectile" //Better sprites are REALLY needed and appreciated!~ damage = 15 damage_type = BURN - nodamage = 0 + nodamage = FALSE speed = 0.3 flag = "magic" @@ -505,7 +646,7 @@ icon_state = "fireball" damage = 10 damage_type = BRUTE - nodamage = 0 + nodamage = FALSE //explosion values var/exp_heavy = 0 @@ -540,3 +681,15 @@ var/turf/T = get_turf(target) for(var/i=0, i<50, i+=10) addtimer(CALLBACK(GLOBAL_PROC, .proc/explosion, T, -1, exp_heavy, exp_light, exp_flash, FALSE, FALSE, exp_fire), i) + +//still magic related, but a different path + +/obj/item/projectile/temp/chill + name = "bolt of chills" + icon_state = "ice_2" + damage = 0 + damage_type = BURN + nodamage = TRUE + armour_penetration = 100 + temperature = 50 + flag = "magic" diff --git a/code/modules/projectiles/projectile/special/floral.dm b/code/modules/projectiles/projectile/special/floral.dm index 295f89148af..437316ce428 100644 --- a/code/modules/projectiles/projectile/special/floral.dm +++ b/code/modules/projectiles/projectile/special/floral.dm @@ -3,23 +3,13 @@ icon_state = "energy" damage = 0 damage_type = TOX - nodamage = 1 + nodamage = TRUE flag = "energy" -/obj/item/projectile/energy/floramut/on_hit(atom/target, blocked = FALSE) - . = ..() - if(iscarbon(target)) - var/mob/living/carbon/C = target - if(C.dna.species.id == "pod") - C.randmuti() - C.randmut() - C.updateappearance() - C.domutcheck() - /obj/item/projectile/energy/florayield name = "beta somatoray" icon_state = "energy2" damage = 0 damage_type = TOX - nodamage = 1 + nodamage = TRUE flag = "energy" diff --git a/code/modules/projectiles/projectile/special/gravity.dm b/code/modules/projectiles/projectile/special/gravity.dm index 3a826dd38e7..c20a717a170 100644 --- a/code/modules/projectiles/projectile/special/gravity.dm +++ b/code/modules/projectiles/projectile/special/gravity.dm @@ -5,7 +5,7 @@ hitsound = 'sound/weapons/wave.ogg' damage = 0 damage_type = BRUTE - nodamage = 1 + nodamage = TRUE color = "#33CCFF" var/turf/T var/power = 4 @@ -40,7 +40,7 @@ hitsound = 'sound/weapons/wave.ogg' damage = 0 damage_type = BRUTE - nodamage = 1 + nodamage = TRUE color = "#FF6600" var/turf/T var/power = 4 @@ -74,7 +74,7 @@ hitsound = 'sound/weapons/wave.ogg' damage = 0 damage_type = BRUTE - nodamage = 1 + nodamage = TRUE color = "#101010" var/turf/T var/power = 4 diff --git a/code/modules/projectiles/projectile/special/hallucination.dm b/code/modules/projectiles/projectile/special/hallucination.dm index 0c57e9b20f5..b163daaab7a 100644 --- a/code/modules/projectiles/projectile/special/hallucination.dm +++ b/code/modules/projectiles/projectile/special/hallucination.dm @@ -170,7 +170,7 @@ hal_target.stuttering += 20 if(hal_target.dna && hal_target.dna.check_mutation(HULK)) hal_target.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk") - else if((hal_target.status_flags & CANKNOCKDOWN) && !hal_target.has_trait(TRAIT_STUNIMMUNE)) + else if((hal_target.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(hal_target, TRAIT_STUNIMMUNE)) addtimer(CALLBACK(hal_target, /mob/living/carbon.proc/do_jitter_animation, 20), 5) /obj/item/projectile/hallucination/disabler diff --git a/code/modules/projectiles/projectile/special/ion.dm b/code/modules/projectiles/projectile/special/ion.dm index 56b231f8e2f..434c203b729 100644 --- a/code/modules/projectiles/projectile/special/ion.dm +++ b/code/modules/projectiles/projectile/special/ion.dm @@ -3,7 +3,7 @@ icon_state = "ion" damage = 0 damage_type = BURN - nodamage = 1 + nodamage = TRUE flag = "energy" impact_effect_type = /obj/effect/temp_visual/impact_effect/ion diff --git a/code/modules/projectiles/projectile/special/meteor.dm b/code/modules/projectiles/projectile/special/meteor.dm index a92f1413997..e513aa5fb87 100644 --- a/code/modules/projectiles/projectile/special/meteor.dm +++ b/code/modules/projectiles/projectile/special/meteor.dm @@ -4,7 +4,7 @@ icon_state = "small1" damage = 0 damage_type = BRUTE - nodamage = 1 + nodamage = TRUE flag = "bullet" /obj/item/projectile/meteor/Bump(atom/A) diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index fb44ed01c2a..d6900fd1fd0 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -1,3 +1,4 @@ +#define CHEMICAL_QUANTISATION_LEVEL 0.0001 //stops floating point errors causing issues with checking reagent amounts /proc/build_chemical_reagent_list() //Chemical Reagents - Initialises all /datum/reagent into a list indexed by reagent id @@ -658,7 +659,7 @@ if(!amount) return R else - if(R.volume >= amount) + if(round(R.volume, CHEMICAL_QUANTISATION_LEVEL) >= amount) return R else return 0 @@ -670,7 +671,7 @@ for(var/_reagent in cached_reagents) var/datum/reagent/R = _reagent if (R.id == reagent) - return R.volume + return round(R.volume, CHEMICAL_QUANTISATION_LEVEL) return 0 diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index 5e301f8370e..271c04ab921 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -9,7 +9,6 @@ interaction_flags_machine = INTERACT_MACHINE_OPEN | INTERACT_MACHINE_ALLOW_SILICON | INTERACT_MACHINE_OFFLINE resistance_flags = FIRE_PROOF | ACID_PROOF circuit = /obj/item/circuitboard/machine/chem_dispenser - var/cell_type = /obj/item/stock_parts/cell/high var/obj/item/stock_parts/cell/cell var/powerefficiency = 0.1 var/amount = 30 @@ -70,7 +69,6 @@ /obj/machinery/chem_dispenser/Initialize() . = ..() - cell = new cell_type dispensable_reagents = sortList(dispensable_reagents) update_icon() @@ -98,7 +96,6 @@ recharge_counter++ /obj/machinery/chem_dispenser/proc/display_beaker() - ..() var/mutable_appearance/b_o = beaker_overlay || mutable_appearance(icon, "disp_beaker") b_o.pixel_y = -4 b_o.pixel_x = -7 @@ -395,10 +392,9 @@ return final_list /obj/machinery/chem_dispenser/AltClick(mob/living/user) - if(!istype(user) || !user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) - return - replace_beaker(user) - return + ..() + if(istype(user) && user.canUseTopic(src, BE_CLOSE, FALSE, NO_TK)) + replace_beaker(user) /obj/machinery/chem_dispenser/drinks/Initialize() . = ..() @@ -513,7 +509,8 @@ "creme_de_menthe", "creme_de_cacao", "triple_sec", - "sake" + "sake", + "applejack" ) upgrade_reagents = null emagged_reagents = list( diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index e5677c1108e..7ef9bb5cde0 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -20,9 +20,20 @@ var/screen = "home" var/analyzeVars[0] var/useramount = 30 // Last used amount + var/list/pillStyles = null /obj/machinery/chem_master/Initialize() create_reagents(100) + + //Calculate the span tags and ids fo all the available pill icons + var/datum/asset/spritesheet/simple/assets = get_asset_datum(/datum/asset/spritesheet/simple/pills) + pillStyles = list() + for (var/x in 1 to PILL_STYLE_COUNT) + var/list/SL = list() + SL["id"] = x + SL["htmltag"] = assets.icon_tag("pill[x]") + pillStyles += list(SL) + . = ..() /obj/machinery/chem_master/Destroy() @@ -132,13 +143,17 @@ datum/tgui/master_ui = null, datum/ui_state/state = GLOB.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/pills) + var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/simple/pills) assets.send(user) ui = new(user, src, ui_key, "chem_master", name, 500, 550, master_ui, state) ui.open() - +//Insert our custom spritesheet css link into the html +/obj/machinery/chem_master/ui_base_html(html) + var/datum/asset/spritesheet/simple/assets = get_asset_datum(/datum/asset/spritesheet/simple/pills) + . = replacetext(html, "", assets.css_tag()) + /obj/machinery/chem_master/ui_data(mob/user) var/list/data = list() data["isBeakerLoaded"] = beaker ? 1 : 0 @@ -166,11 +181,8 @@ for(var/datum/reagent/N in reagents.reagent_list) bufferContents.Add(list(list("name" = N.name, "id" = N.id, "volume" = N.volume))) // ^ data["bufferContents"] = bufferContents - var/list/pillStyles = list() - for (var/x in 1 to PILL_STYLE_COUNT) - var/list/SL = list() - SL["id"] = x - pillStyles += list(SL) + + //Calculated at init time as it never changes data["pillStyles"] = pillStyles return data diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm index 481e67f5cf3..147f83f0169 100644 --- a/code/modules/reagents/chemistry/machinery/pandemic.dm +++ b/code/modules/reagents/chemistry/machinery/pandemic.dm @@ -217,6 +217,8 @@ B.reagents.add_reagent("blood", 20, data) wait = TRUE update_icon() + var/turf/source_turf = get_turf(src) + log_virus("A culture bottle was printed for the virus [A.admin_details()] at [loc_name(source_turf)] by [key_name(usr)]") addtimer(CALLBACK(src, .proc/reset_replicator_cooldown), 50) . = TRUE if("create_vaccine_bottle") diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index 2fb636bc7bf..67222a1931e 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -72,8 +72,9 @@ if(!(stat & (NOPOWER|BROKEN))) to_chat(user, "The status display reads:") to_chat(user, "- Grinding reagents at [speed*100]%.") - for(var/datum/reagent/R in beaker.reagents.reagent_list) - to_chat(user, "- [R.volume] units of [R.name].") + if(beaker) + for(var/datum/reagent/R in beaker.reagents.reagent_list) + to_chat(user, "- [R.volume] units of [R.name].") /obj/machinery/reagentgrinder/handle_atom_del(atom/A) . = ..() @@ -165,7 +166,7 @@ /obj/machinery/reagentgrinder/ui_interact(mob/user) // The microwave Menu //I am reasonably certain that this is not a microwave . = ..() - if(operating || !user.canUseTopic(src)) + if(operating || !user.canUseTopic(src, !issilicon(user))) return var/list/options = list() @@ -196,7 +197,7 @@ choice = show_radial_menu(user, src, options, require_near = !issilicon(user)) // post choice verification - if(operating || (isAI(user) && stat & NOPOWER) || !user.canUseTopic(src)) + if(operating || (isAI(user) && stat & NOPOWER) || !user.canUseTopic(src, !issilicon(user))) return switch(choice) diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index ba2858d0e1e..75cc72cb315 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -1,6 +1,6 @@ -#define ALCOHOL_THRESHOLD_MODIFIER 0.05 //Greater numbers mean that less alcohol has greater intoxication potential +#define ALCOHOL_THRESHOLD_MODIFIER 1 //Greater numbers mean that less alcohol has greater intoxication potential #define ALCOHOL_RATE 0.005 //The rate at which alcohol affects you -#define ALCOHOL_EXPONENT 1.6 //The exponent applied to boozepwr to make higher volume alcohol atleast a little bit damaging. +#define ALCOHOL_EXPONENT 1.6 //The exponent applied to boozepwr to make higher volume alcohol at least a little bit damaging to the liver ////////////// I don't know who made this header before I refactored alcohols but I'm going to fucking strangle them because it was so ugly, holy Christ // ALCOHOLS // @@ -13,6 +13,7 @@ color = "#404030" // rgb: 64, 64, 48 nutriment_factor = 0 taste_description = "alcohol" + metabolization_rate = 0.5 * REAGENTS_METABOLISM var/boozepwr = 65 //Higher numbers equal higher hardness, higher hardness equals more intense alcohol poisoning /* @@ -37,9 +38,9 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/on_mob_life(mob/living/carbon/C) if(C.drunkenness < volume * boozepwr * ALCOHOL_THRESHOLD_MODIFIER) var/booze_power = boozepwr - if(C.has_trait(TRAIT_ALCOHOL_TOLERANCE)) //we're an accomplished drinker + if(HAS_TRAIT(C, TRAIT_ALCOHOL_TOLERANCE)) //we're an accomplished drinker booze_power *= 0.7 - if(C.has_trait(TRAIT_LIGHT_DRINKER)) + if(HAS_TRAIT(C, TRAIT_LIGHT_DRINKER)) booze_power *= 2 C.drunkenness = max((C.drunkenness + (sqrt(volume) * booze_power * ALCOHOL_RATE)), 0) //Volume, power, and server alcohol rate effect how quickly one gets drunk var/obj/item/organ/liver/L = C.getorganslot(ORGAN_SLOT_LIVER) @@ -131,7 +132,7 @@ All effects don't start immediately, but rather get worse over time; the rate is M.dizziness = max(0,M.dizziness-5) M.drowsyness = max(0,M.drowsyness-3) M.AdjustSleeping(-40, FALSE) - if(!M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.Jitter(5) ..() . = 1 @@ -167,7 +168,7 @@ All effects don't start immediately, but rather get worse over time; the rate is M.drowsyness = max(0,M.drowsyness-7) M.AdjustSleeping(-40) M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, BODYTEMP_NORMAL) - if(!M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.Jitter(5) return ..() @@ -188,7 +189,7 @@ All effects don't start immediately, but rather get worse over time; the rate is to_chat(M, "[pick("You have a really bad headache.", "Your eyes hurt.", "You find it hard to stay still.", "You feel your heart practically beating out of your chest.")]") if(prob(5) && iscarbon(M)) - if(M.has_trait(TRAIT_BLIND)) + if(HAS_TRAIT(M, TRAIT_BLIND)) var/obj/item/organ/eyes/eye = M.getorganslot(ORGAN_SLOT_EYES) if(istype(eye)) eye.Remove(M) @@ -366,7 +367,7 @@ All effects don't start immediately, but rather get worse over time; the rate is shot_glass_icon_state = "shotglassgreen" /datum/reagent/consumable/ethanol/absinthe/on_mob_life(mob/living/carbon/M) - if(prob(10) && !M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(prob(10) && !HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.hallucination += 4 //Reference to the urban myth ..() @@ -640,19 +641,42 @@ All effects don't start immediately, but rather get worse over time; the rate is color = "#664300" // rgb: 102, 67, 0 boozepwr = 90 //THE FIST OF THE LAW IS STRONG AND HARD quality = DRINK_GOOD - metabolization_rate = 0.8 + metabolization_rate = 0.5 taste_description = "JUSTICE" glass_icon_state = "beepskysmashglass" glass_name = "Beepsky Smash" glass_desc = "Heavy, hot and strong. Just like the Iron fist of the LAW." + overdose_threshold = 40 + var/datum/brain_trauma/special/beepsky/B + +/datum/reagent/consumable/ethanol/beepsky_smash/on_mob_add(mob/living/carbon/M) + if(HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) + metabolization_rate = 0.8 + if(!HAS_TRAIT(M, TRAIT_LAW_ENFORCEMENT_METABOLISM)) + B = new() + M.gain_trauma(B, TRAUMA_RESILIENCE_ABSOLUTE) + ..() /datum/reagent/consumable/ethanol/beepsky_smash/on_mob_life(mob/living/carbon/M) - if(M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) - M.Stun(30, 0) //this realistically does nothing to prevent chainstunning but will cause them to recover faster once it's out of their system - else - M.Stun(40, 0) + M.Jitter(2) + if(HAS_TRAIT(M, TRAIT_LAW_ENFORCEMENT_METABOLISM)) + M.adjustStaminaLoss(-10, 0) + if(prob(20)) + new /datum/hallucination/items_other(M) + if(prob(10)) + new /datum/hallucination/stray_bullet(M) + ..() + . = 1 + +/datum/reagent/consumable/ethanol/beepsky_smash/on_mob_delete(mob/living/carbon/M) + if(B) + QDEL_NULL(B) return ..() +/datum/reagent/consumable/ethanol/beepsky_smash/overdose_start(mob/living/carbon/M) + if(!HAS_TRAIT(M, TRAIT_LAW_ENFORCEMENT_METABOLISM)) + M.gain_trauma(/datum/brain_trauma/mild/phobia/security, TRAUMA_RESILIENCE_BASIC) + /datum/reagent/consumable/ethanol/irish_cream name = "Irish Cream" id = "irishcream" @@ -681,7 +705,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/manly_dorf/on_mob_add(mob/living/M) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.dna.check_mutation(DWARFISM) || H.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(H.dna.check_mutation(DWARFISM) || HAS_TRAIT(H, TRAIT_ALCOHOL_TOLERANCE)) to_chat(H, "Now THAT is MANLY!") boozepwr = 5 //We've had worse in the mines dorf_mode = TRUE @@ -1282,7 +1306,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/atomicbomb/on_mob_life(mob/living/carbon/M) M.set_drugginess(50) - if(!M.has_trait(TRAIT_ALCOHOL_TOLERANCE)) + if(!HAS_TRAIT(M, TRAIT_ALCOHOL_TOLERANCE)) M.confused = max(M.confused+2,0) M.Dizzy(10) if (!M.slurring) @@ -1335,6 +1359,7 @@ All effects don't start immediately, but rather get worse over time; the rate is boozepwr = 50 quality = DRINK_VERYGOOD taste_description = "a numbing sensation" + metabolization_rate = 1 * REAGENTS_METABOLISM glass_icon_state = "neurotoxinglass" glass_name = "Neurotoxin" glass_desc = "A drink that is guaranteed to knock you silly." @@ -1352,7 +1377,8 @@ All effects don't start immediately, but rather get worse over time; the rate is to_chat(M, "You cant feel your hands!") if(current_cycle > 5) if(prob(20)) - M.add_trait(pickt(), "neurotoxin") + var/t = pickt() + ADD_TRAIT(M, t, id) M.adjustStaminaLoss(10) if(current_cycle > 30) M.adjustBrainLoss(2*REM) @@ -1365,10 +1391,10 @@ All effects don't start immediately, but rather get worse over time; the rate is ..() /datum/reagent/consumable/ethanol/neurotoxin/on_mob_delete(mob/living/carbon/M) - M.remove_trait(TRAIT_PARALYSIS_L_ARM, "neurotoxin") - M.remove_trait(TRAIT_PARALYSIS_R_ARM, "neurotoxin") - M.remove_trait(TRAIT_PARALYSIS_R_LEG, "neurotoxin") - M.remove_trait(TRAIT_PARALYSIS_L_LEG, "neurotoxin") + REMOVE_TRAIT(M, TRAIT_PARALYSIS_L_ARM, id) + REMOVE_TRAIT(M, TRAIT_PARALYSIS_R_ARM, id) + REMOVE_TRAIT(M, TRAIT_PARALYSIS_R_LEG, id) + REMOVE_TRAIT(M, TRAIT_PARALYSIS_L_LEG, id) M.adjustStaminaLoss(10) ..() @@ -1496,7 +1522,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/quadruple_sec/on_mob_life(mob/living/carbon/M) //Securidrink in line with the Screwdriver for engineers or Nothing for mimes - if(M.has_trait(TRAIT_LAW_ENFORCEMENT_METABOLISM)) + if(HAS_TRAIT(M, TRAIT_LAW_ENFORCEMENT_METABOLISM)) M.heal_bodypart_damage(1, 1) M.adjustBruteLoss(-2,0) . = 1 @@ -1516,7 +1542,7 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/quintuple_sec/on_mob_life(mob/living/carbon/M) //Securidrink in line with the Screwdriver for engineers or Nothing for mimes but STRONG.. - if(M.has_trait(TRAIT_LAW_ENFORCEMENT_METABOLISM)) + if(HAS_TRAIT(M, TRAIT_LAW_ENFORCEMENT_METABOLISM)) M.heal_bodypart_damage(2,2,2) M.adjustBruteLoss(-5,0) M.adjustOxyLoss(-5,0) @@ -1738,14 +1764,14 @@ All effects don't start immediately, but rather get worse over time; the rate is /datum/reagent/consumable/ethanol/between_the_sheets/on_mob_life(mob/living/L) ..() if(L.IsSleeping()) - if(L.bruteloss && L.fireloss) //If you are damaged by both types, slightly increased healing but it only heals one. The more the merrier wink wink. + if(L.getBruteLoss() && L.getFireLoss()) //If you are damaged by both types, slightly increased healing but it only heals one. The more the merrier wink wink. if(prob(50)) L.adjustBruteLoss(-0.25) else L.adjustFireLoss(-0.25) - else if(L.bruteloss && !L.fireloss) //If you have only one, it still heals but not as well. + else if(L.getBruteLoss()) //If you have only one, it still heals but not as well. L.adjustBruteLoss(-0.2) - else if(!L.bruteloss && L.fireloss) + else if(L.getFireLoss()) L.adjustFireLoss(-0.2) /datum/reagent/consumable/ethanol/kamikaze @@ -1793,7 +1819,7 @@ All effects don't start immediately, but rather get worse over time; the rate is name = "Fernet Cola" id = "fernet_cola" description = "A very popular and bittersweet digestif, ideal after a heavy meal. Best served on a sawed-off cola bottle as per tradition." - color = "#390600" // rgb: 57, 6, 0 + color = "#390600" // rgb: 57, 6, boozepwr = 25 quality = DRINK_NICE taste_description = "sweet relief" @@ -1980,3 +2006,215 @@ All effects don't start immediately, but rather get worse over time; the rate is taste_description = flavor if(holder.my_atom) holder.my_atom.on_reagent_change() + + +/datum/reagent/consumable/ethanol/champagne //How the hell did we not have champagne already!? + name = "Champagne" + id = "champagne" + description = "A sparkling wine known for its ability to strike fast and hard." + color = "#ffffc1" + boozepwr = 40 + taste_description = "auspicious occasions and bad decisions" + glass_icon_state = "champagne_glass" + glass_name = "Champagne" + glass_desc = "The flute clearly displays the slowly rising bubbles." + + +/datum/reagent/consumable/ethanol/wizz_fizz + name = "Wizz Fizz" + id = "wizz_fizz" + description = "A magical potion, fizzy and wild! However the taste, you will find, is quite mild." + color = "#4235d0" //Just pretend that the triple-sec was blue curacao. + boozepwr = 50 + quality = DRINK_GOOD + taste_description = "friendship! It is magic, after all" + glass_icon_state = "wizz_fizz" + glass_name = "Wizz Fizz" + glass_desc = "The glass bubbles and froths with an almost magical intensity." + +/datum/reagent/consumable/ethanol/wizz_fizz/on_mob_life(mob/living/carbon/M) + //A healing drink similar to Quadruple Sec, Ling Stings, and Screwdrivers for the Wizznerds; the check is consistent with the changeling sting + if(M?.mind?.has_antag_datum(/datum/antagonist/wizard)) + M.heal_bodypart_damage(1,1,1) + M.adjustOxyLoss(-1,0) + M.adjustToxLoss(-1,0) + return ..() + +/datum/reagent/consumable/ethanol/bug_spray + name = "Bug Spray" + id = "bug_spray" + description = "A harsh, acrid, bitter drink, for those who need something to brace themselves." + color = "#33ff33" + boozepwr = 50 + quality = DRINK_GOOD + taste_description = "the pain of ten thousand slain mosquitos" + glass_icon_state = "bug_spray" + glass_name = "Bug Spray" + glass_desc = "Your eyes begin to water as the sting of alcohol reaches them." + +/datum/reagent/consumable/ethanol/bug_spray/on_mob_life(mob/living/carbon/M) +//Bugs should not drink Bug spray. + if(ismoth(M) || isflyperson(M)) + M.adjustToxLoss(1,0) + return ..() +/datum/reagent/consumable/ethanol/bug_spray/on_mob_add(mob/living/carbon/M) + + if(ismoth(M) || isflyperson(M)) + M.emote("scream") + return ..() + + +/datum/reagent/consumable/ethanol/applejack + name = "Applejack" + id = "applejack" + description = "The perfect beverage for when you feel the need to horse around." + color = "#ff6633" + boozepwr = 20 + taste_description = "an honest day's work at the orchard" + glass_icon_state = "applejack_glass" + glass_name = "Applejack" + glass_desc = "You feel like you could drink this all neight." + +/datum/reagent/consumable/ethanol/jack_rose + name = "Jack Rose" + id = "jack_rose" + description = "A light cocktail perfect for sipping with a slice of pie." + color = "#ff6633" + boozepwr = 15 + quality = DRINK_NICE + taste_description = "a sweet and sour slice of apple" + glass_icon_state = "jack_rose" + glass_name = "Jack Rose" + glass_desc = "Enough of these, and you really will start to suppose your toeses are roses." + +/datum/reagent/consumable/ethanol/turbo + name = "Turbo" + id = "turbo" + description = "A turbulent cocktail associated with outlaw hoverbike racing. Not for the faint of heart." + color = "#e94c3a" + boozepwr = 85 + quality = DRINK_VERYGOOD + taste_description = "the outlaw spirit" + glass_icon_state = "turbo" + glass_name = "Turbo" + glass_desc = "A turbulent cocktail for outlaw hoverbikers." + +/datum/reagent/consumable/ethanol/turbo/on_mob_life(mob/living/carbon/M) + if(prob(4)) + to_chat(M, "[pick("You feel disregard for the rule of law.", "You feel pumped!", "Your head is pounding.", "Your thoughts are racing..")]") + M.adjustStaminaLoss(-M.drunkenness * 0.25) + return ..() + +/datum/reagent/consumable/ethanol/old_timer + name = "Old Timer" + id = "old_timer" + description = "An archaic potation enjoyed by old coots of all ages." + color = "#996835" + boozepwr = 35 + quality = DRINK_NICE + taste_description = "simpler times" + glass_icon_state = "old_timer" + glass_name = "Old Timer" + glass_desc = "WARNING! May cause premature aging!" + +/datum/reagent/consumable/ethanol/old_timer/on_mob_life(mob/living/carbon/M) + if(prob(20)) + if(ishuman(M)) + var/mob/living/carbon/human/N = M + N.age += 1 + if(N.age > 70) + N.facial_hair_color = "ccc" + N.hair_color = "ccc" + N.update_hair() + if(N.age > 100) + N.become_nearsighted(id) + if(N.gender == MALE) + N.facial_hair_style = "Beard (Very Long)" + N.update_hair() + + if(N.age > 969) //Best not let people get older than this or i might incur G-ds wrath + M.visible_message("[M] becomes older than any man should be.. and crumbles into dust!") + M.dust(0,1,0) + + return ..() + +/datum/reagent/consumable/ethanol/rubberneck + name = "Rubberneck" + id = "rubberneck" + description = "A quality rubberneck should not contain any gross natural ingredients." + color = "#ffe65b" + boozepwr = 60 + quality = DRINK_GOOD + taste_description = "artifical fruityness" + glass_icon_state = "rubberneck" + glass_name = "Rubberneck" + glass_desc = "A popular drink amongst those adhering to an all synthetic diet." + +/datum/reagent/consumable/ethanol/duplex + name = "Duplex" + id = "duplex" + description = "An inseparable combination of two fruity drinks." + color = "#50e5cf" + boozepwr = 25 + quality = DRINK_NICE + taste_description = "green apples and blue raspberries" + glass_icon_state = "duplex" + glass_name = "Duplex" + glass_desc = "To imbibe one component separately from the other is consider a great faux pas." + +/datum/reagent/consumable/ethanol/trappist + name = "Trappist Beer" + id = "trappist" + description = "A strong dark ale brewed by space-monks." + color = "#390c00" + boozepwr = 40 + quality = DRINK_VERYGOOD + taste_description = "dried plums and malt" + glass_icon_state = "trappistglass" + glass_name = "Trappist Beer" + glass_desc = "boozy Catholicism in a glass." + +/datum/reagent/consumable/ethanol/trappist/on_mob_life(mob/living/carbon/M) + if(M.mind.isholy) + M.adjustFireLoss(-2.5, 0) + M.jitteriness = max(0, M.jitteriness-1) + M.stuttering = max(0, M.stuttering-1) + return ..() + +/datum/reagent/consumable/ethanol/blazaam + name = "Blazaam" + id = "blazaam" + description = "A strange drink that few people seem to remember existing. Doubles as a Berenstain remover." + boozepwr = 70 + quality = DRINK_FANTASTIC + taste_description = "alternate realities" + glass_icon_state = "blazaamglass" + glass_name = "Blazaam" + glass_desc = "The glass seems to be sliding between realities. Doubles as a Berenstain remover." + var/stored_teleports = 0 + +/datum/reagent/consumable/ethanol/blazaam/on_mob_life(mob/living/carbon/M) + if(M.drunkenness > 40) + if(stored_teleports) + do_teleport(M, get_turf(M), rand(1,3), channel = TELEPORT_CHANNEL_WORMHOLE) + stored_teleports-- + if(prob(10)) + stored_teleports += rand(2,6) + if(prob(70)) + M.vomit() + return ..() + + +/datum/reagent/consumable/ethanol/planet_cracker + name = "Planet Cracker" + id = "planet_cracker" + description = "This jubilant drink celebrates humanity's triumph over the alien menace. May be offensive to non-human crewmembers." + boozepwr = 50 + quality = DRINK_FANTASTIC + taste_description = "triumph with a hint of bitterness" + glass_icon_state = "planet_cracker" + glass_name = "Planet Cracker" + glass_desc = "Although historians believe the drink was originally created to commemorate the end of an important conflict in man's past, its origins have largely been forgotten and it is today seen more as a general symbol of human supremacy." + + + diff --git a/code/modules/reagents/chemistry/reagents/blob_reagents.dm b/code/modules/reagents/chemistry/reagents/blob_reagents.dm deleted file mode 100644 index 8ee9449468c..00000000000 --- a/code/modules/reagents/chemistry/reagents/blob_reagents.dm +++ /dev/null @@ -1,500 +0,0 @@ -// These can only be applied by blobs. They are what blobs are made out of. -/datum/reagent/blob - name = "Unknown" - description = "shouldn't exist and you should adminhelp immediately." - color = "#FFFFFF" - taste_description = "bad code and slime" - 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 = FALSE - -/datum/reagent/blob/proc/send_message(mob/living/M) - var/totalmessage = message - if(message_living && !issilicon(M)) - totalmessage += message_living - totalmessage += "!" - to_chat(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 - return damage - -/datum/reagent/blob/proc/death_reaction(obj/structure/blob/B, damage_flag) //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 - return - -/datum/reagent/blob/proc/tesla_reaction(obj/structure/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 - return - -/datum/reagent/blob/proc/emp_reaction(obj/structure/blob/B, severity) //when the blob is hit with an emp, do this - return - -//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." - shortdesc = "will do medium brute damage." - effectdesc = "will also expand when attacked with burn damage, but takes more brute damage." - taste_description = "duplication" - 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" - complementary_color = "#57787B" - -/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) - -/datum/reagent/blob/replicating_foam/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - 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) - if(newB) - newB.obj_integrity = B.obj_integrity - damage - newB.update_icon() - return ..() - -/datum/reagent/blob/replicating_foam/expand_reaction(obj/structure/blob/B, obj/structure/blob/newB, turf/T, mob/camera/blob/O) - 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 and will generate resources quicker, but can only expand manually." - shortdesc = "will do high brute and burn damage." - taste_description = "efficiency" - 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) - -//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." - taste_description = "something other-dimensional" - analyzerdescdamage = "Does medium brute damage." - analyzerdesceffect = "When attacked, may shift away from the attacker." - color = "#C8963C" - complementary_color = "#3C6EC8" - -/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) - -/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))) - 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)) - 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) - 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/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." - taste_description = "burning oil" - analyzerdescdamage = "Does medium burn damage and sets targets on fire." - analyzerdesceffect = "Releases fire when burnt, but takes damage from water and other extinguishing liquids." - color = "#B68D00" - complementary_color = "#BE5532" - 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) - reac_volume = ..() - M.adjust_fire_stacks(round(reac_volume/10)) - M.IgniteMob() - if(M) - M.apply_damage(0.8*reac_volume, BURN) - if(iscarbon(M)) - M.emote("scream") - -/datum/reagent/blob/blazing_oil/extinguish_reaction(obj/structure/blob/B) - B.take_damage(1.5, BURN, "energy") - -/datum/reagent/blob/blazing_oil/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if(damage_type == BURN && damage_flag != "energy") - for(var/turf/open/T in range(1, B)) - var/obj/structure/blob/C = locate() in T - if(!(C && C.overmind && C.overmind.blob_reagent_datum.id == B.overmind.blob_reagent_datum.id) && prob(80)) - new /obj/effect/hotspot(T) - if(damage_flag == "fire") - return 0 - return ..() - -//does toxin damage, hallucination, 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." - taste_description = "heaven" - color = "#C8A5DC" - complementary_color = "#CD7794" - 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) - -/datum/reagent/blob/regenerative_materia/on_mob_life(mob/living/carbon/C) - C.adjustToxLoss(1*REM) - C.hal_screwyhud = SCREWYHUD_HEALTHY //fully healed, honest - ..() - -/datum/reagent/blob/regenerative_materia/on_mob_delete(mob/living/M) - if(iscarbon(M)) - var/mob/living/carbon/N = M - 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." - taste_description = "fungi" - 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" - 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) - 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) - to_chat(O, "Gained [points] resources from the zombification of [M].") - -/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 ..() - -/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) - -//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." - taste_description = "gelatin" - 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" - -/datum/reagent/blob/energized_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) - 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)) - do_sparks(rand(2, 4), FALSE, B) - 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." - taste_description = "the bomb" - effectdesc = "will also resist explosions, but takes increased damage from fire and other energy sources." - 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." - 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/temp_visual/explosion/fast/E = new /obj/effect/temp_visual/explosion/fast(get_turf(M)) - E.alpha = 150 - for(var/mob/living/L in orange(get_turf(M), 1)) - if(ROLE_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) - if(M) - M.apply_damage(0.6*reac_volume, BRUTE) - else - M.apply_damage(0.6*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 - 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" - taste_description = "brain freeze" - complementary_color = "#7D6EB4" - blobbernaut_message = "injects" - message = "The blob stabs you" - message_living = ", and you feel like your insides are solidifying" - -/datum/reagent/blob/cryogenic_poison/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/carbon/M) - M.adjustBruteLoss(0.3*REM, 0) - M.adjustFireLoss(0.3*REM, 0) - M.adjustToxLoss(0.3*REM, 0) - . = 1 - ..() - -//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." - taste_description = "pop rocks" - effectdesc = "will also take massively increased damage and release an EMP when killed." - 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" - complementary_color = "#EC8383" - blobbernaut_message = "lashes" - message = "The blob lashes you" - message_living = ", and you hear a faint buzzing" - -/datum/reagent/blob/electromagnetic_web/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) - reac_volume = ..() - if(prob(reac_volume*2)) - M.emp_act(EMP_LIGHT) - if(M) - M.apply_damage(reac_volume, BURN) - -/datum/reagent/blob/electromagnetic_web/damage_reaction(obj/structure/blob/B, damage, damage_type, damage_flag) - if(damage_type == BRUTE) //take full brute - switch(B.brute_resist) - if(0.5) - return damage * 2 - if(0.25) - return damage * 4 - if(0.1) - 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") - 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." - taste_description = "toxic mold" - 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" - complementary_color = "#AD6570" - blobbernaut_message = "synchronously strikes" - message = "The blobs strike you" - -/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) - 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 - 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 - 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 - 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) - 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" - description = "will do medium brute damage through armor and bio resistance." - taste_description = "rock" - 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" - 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) - 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) - -/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 ..() - -//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." - taste_description = "a sponge" - 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" - complementary_color = "#BBBBAA" - blobbernaut_message = "emits slime at" - message = "The blob splashes into you" - message_living = ", and you gasp for breath" - -/datum/reagent/blob/pressurized_slime/reaction_mob(mob/living/M, method=TOUCH, reac_volume, show_message, touch_protection, mob/camera/blob/O) - reac_volume = ..() - var/turf/open/T = get_turf(M) - if(istype(T) && prob(reac_volume)) - T.MakeSlippery(TURF_WET_WATER, min_wet_time = 10 SECONDS, wet_time_to_add = 5 SECONDS) - M.adjust_fire_stacks(-(reac_volume / 10)) - M.ExtinguishMob() - M.apply_damage(0.4*reac_volume, BRUTE) - if(M) - M.apply_damage(0.4*reac_volume, OXY) - if(M) - M.adjustStaminaLoss(0.2*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) - 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/proc/extinguisharea(obj/structure/blob/B, probchance) - for(var/turf/open/T in range(1, B)) - if(prob(probchance)) - T.MakeSlippery(TURF_WET_WATER, min_wet_time = 10 SECONDS, wet_time_to_add = 5 SECONDS) - for(var/obj/O in T) - O.extinguish() - for(var/mob/living/L in T) - L.adjust_fire_stacks(-2.5) - L.ExtinguishMob() diff --git a/code/modules/reagents/chemistry/reagents/drink_reagents.dm b/code/modules/reagents/chemistry/reagents/drink_reagents.dm index 3ae2198f7cf..86fb1dc48ea 100644 --- a/code/modules/reagents/chemistry/reagents/drink_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drink_reagents.dm @@ -216,7 +216,7 @@ glass_desc = "White and nutritious goodness!" /datum/reagent/consumable/milk/on_mob_life(mob/living/carbon/M) - if(M.has_trait(TRAIT_CALCIUM_HEALER)) + if(HAS_TRAIT(M, TRAIT_CALCIUM_HEALER)) M.heal_bodypart_damage(1.5,0, 0) . = 1 else @@ -308,6 +308,17 @@ ..() . = 1 +/datum/reagent/consumable/lemonade + name = "Lemonade" + id = "lemonade" + description = "Sweet, tangy lemonade. Good for the soul." + quality = DRINK_NICE + taste_description = "sunshine and summertime" + glass_icon_state = "lemonpitcher" + glass_name = "pitcher of lemonade" + glass_desc = "This drink leaves you feeling nostalgic for some reason." + + /datum/reagent/consumable/tea/arnold_palmer name = "Arnold Palmer" id = "arnold_palmer" @@ -424,10 +435,10 @@ /datum/reagent/consumable/grey_bull/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_SHOCKIMMUNE, id) + ADD_TRAIT(L, TRAIT_SHOCKIMMUNE, id) /datum/reagent/consumable/grey_bull/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_SHOCKIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_SHOCKIMMUNE, id) ..() /datum/reagent/consumable/grey_bull/on_mob_life(mob/living/carbon/M) @@ -749,6 +760,10 @@ glass_name = "glass of grape juice" glass_desc = "It's grape (soda)!" +/datum/reagent/consumable/grape_soda/on_mob_life(mob/living/carbon/M) + M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, BODYTEMP_NORMAL) + ..() + /datum/reagent/consumable/milk/chocolate_milk name = "Chocolate Milk" id = "chocolate_milk" @@ -779,3 +794,62 @@ taste_description = "sweet pomegranates" glass_name = "glass of grenadine" glass_desc = "Delicious flavored syrup." + +/datum/reagent/consumable/parsnipjuice + name = "Parsnip Juice" + id = "parsnipjuice" + description = "Why..." + color = "#FFA500" + taste_description = "parsnip" + glass_name = "glass of parsnip juice" + +/datum/reagent/consumable/peachjuice //Intended to be extremely rare due to being the limiting ingredients in the blazaam drink + name = "Peach Juice" + id = "peachjuice" + description = "Just peachy." + color = "#E78108" + taste_description = "peaches" + glass_name = "glass of peach juice" + +/datum/reagent/consumable/cream_soda + name = "Cream Soda" + id = "cream_soda" + description = "A classic space-American vanilla flavored soft drink." + color = "#dcb137" + quality = DRINK_VERYGOOD + taste_description = "fizzy vanilla" + glass_icon_state = "cream_soda" + glass_name = "Cream Soda" + glass_desc = "A classic space-American vanilla flavored soft drink." + +/datum/reagent/consumable/cream_soda/on_mob_life(mob/living/carbon/M) + M.adjust_bodytemperature(-5 * TEMPERATURE_DAMAGE_COEFFICIENT, BODYTEMP_NORMAL) + ..() + +/datum/reagent/consumable/red_queen + name = "Red Queen" + id = "red_queen" + description = "DRINK ME." + color = "#e6ddc3" + quality = DRINK_GOOD + taste_description = "wonder" + glass_icon_state = "red_queen" + glass_name = "Red Queen" + glass_desc = "DRINK ME." + var/current_size = 1 + +/datum/reagent/consumable/red_queen/on_mob_life(mob/living/carbon/H) + if(prob(75)) + return ..() + var/newsize = pick(0.5, 0.75, 1, 1.50, 2) + H.resize = newsize/current_size + current_size = newsize + H.update_transform() + if(prob(40)) + H.emote("sneeze") + ..() + +/datum/reagent/consumable/red_queen/on_mob_delete(mob/living/M) + M.resize = 1/current_size + M.update_transform() + ..() diff --git a/code/modules/reagents/chemistry/reagents/drug_reagents.dm b/code/modules/reagents/chemistry/reagents/drug_reagents.dm index f739a3e441b..e634f7195f0 100644 --- a/code/modules/reagents/chemistry/reagents/drug_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/drug_reagents.dm @@ -263,16 +263,16 @@ /datum/reagent/drug/bath_salts/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_STUNIMMUNE, id) - L.add_trait(TRAIT_SLEEPIMMUNE, id) + ADD_TRAIT(L, TRAIT_STUNIMMUNE, id) + ADD_TRAIT(L, TRAIT_SLEEPIMMUNE, id) if(iscarbon(L)) var/mob/living/carbon/C = L rage = new() C.gain_trauma(rage, TRAUMA_RESILIENCE_ABSOLUTE) /datum/reagent/drug/bath_salts/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_STUNIMMUNE, id) - L.remove_trait(TRAIT_SLEEPIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_STUNIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_SLEEPIMMUNE, id) if(rage) QDEL_NULL(rage) ..() @@ -380,11 +380,11 @@ /datum/reagent/drug/happiness/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_FEARLESS, id) + ADD_TRAIT(L, TRAIT_FEARLESS, id) SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "happiness_drug", /datum/mood_event/happiness_drug) /datum/reagent/drug/happiness/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_FEARLESS, id) + REMOVE_TRAIT(L, TRAIT_FEARLESS, id) SEND_SIGNAL(L, COMSIG_CLEAR_MOOD_EVENT, "happiness_drug") ..() diff --git a/code/modules/reagents/chemistry/reagents/food_reagents.dm b/code/modules/reagents/chemistry/reagents/food_reagents.dm index 9c0f83d9d61..42ad24c7367 100755 --- a/code/modules/reagents/chemistry/reagents/food_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/food_reagents.dm @@ -19,13 +19,13 @@ current_cycle++ if(ishuman(M)) var/mob/living/carbon/human/H = M - if(!H.has_trait(TRAIT_NOHUNGER)) + if(!HAS_TRAIT(H, TRAIT_NOHUNGER)) H.adjust_nutrition(nutriment_factor) holder.remove_reagent(src.id, metabolization_rate) /datum/reagent/consumable/reaction_mob(mob/living/M, method=TOUCH, reac_volume) if(method == INGEST) - if (quality && !M.has_trait(TRAIT_AGEUSIA)) + if (quality && !HAS_TRAIT(M, TRAIT_AGEUSIA)) switch(quality) if (DRINK_NICE) SEND_SIGNAL(M, COMSIG_ADD_MOOD_EVENT, "quality_drink", /datum/mood_event/quality_nice) @@ -379,7 +379,7 @@ metabolization_rate = 0.2 * REAGENTS_METABOLISM taste_description = "mushroom" -/datum/reagent/mushroomhallucinogen/on_mob_life(mob/living/carbon/M) +/datum/reagent/drug/mushroomhallucinogen/on_mob_life(mob/living/carbon/M) if(!M.slurring) M.slurring = 1 switch(current_cycle) @@ -402,6 +402,30 @@ M.emote(pick("twitch","giggle")) ..() +/datum/reagent/consumable/garlic //NOTE: having garlic in your blood stops vampires from biting you. + name = "Garlic Juice" + id = "garlic" + description = "Crushed garlic. Chefs love it, but it can make you smell bad." + color = "#FEFEFE" + taste_description = "garlic" + metabolization_rate = 0.15 * REAGENTS_METABOLISM + +/datum/reagent/consumable/garlic/on_mob_life(mob/living/carbon/M) + if(isvampire(M)) //incapacitating but not lethal. Unfortunately, vampires cannot vomit. + if(prob(min(25,current_cycle))) + to_chat(M, "You can't get the scent of garlic out of your nose! You can barely think...") + M.Paralyze(10) + M.Jitter(10) + else if(ishuman(M)) + var/mob/living/carbon/human/H = M + if(H.job == "Cook") + if(prob(20)) //stays in the system much longer than sprinkles/banana juice, so heals slower to partially compensate + H.heal_bodypart_damage(1,1, 0) + . = 1 + else //chefs' robust space-Italian metabolism lets them eat garlic without producing allyl methyl sulfide + H.adjust_hygiene(-0.15 * volume) + ..() + /datum/reagent/consumable/sprinkles name = "Sprinkles" id = "sprinkles" @@ -410,7 +434,7 @@ taste_description = "childhood whimsy" /datum/reagent/consumable/sprinkles/on_mob_life(mob/living/carbon/M) - if(M.has_trait(TRAIT_LAW_ENFORCEMENT_METABOLISM)) + if(HAS_TRAIT(M, TRAIT_LAW_ENFORCEMENT_METABOLISM)) M.heal_bodypart_damage(1,1, 0) . = 1 ..() @@ -549,7 +573,7 @@ ..() /datum/reagent/consumable/honey - name = "honey" + name = "Honey" id = "honey" description = "Sweet sweet honey that decays into sugar. Has antibacterial and natural healing properties." color = "#d3a308" @@ -709,3 +733,21 @@ M.electrocute_act(rand(10,15), "Liquid Electricity in their body", 1) //lmao at the newbs who eat energy bars playsound(M, "sparks", 50, 1) return ..() + +/datum/reagent/consumable/astrotame + name = "Astrotame" + id = "astrotame" + description = "A space age artifical sweetener." + nutriment_factor = 0 + metabolization_rate = 2 * REAGENTS_METABOLISM + reagent_state = SOLID + color = "#FFFFFF" // rgb: 255, 255, 255 + taste_mult = 8 + taste_description = "sweetness" + overdose_threshold = 17 + +/datum/reagent/consumable/astrotame/overdose_process(mob/living/carbon/M) + if(M.disgust < 80) + M.adjust_disgust(10) + ..() + . = 1 diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 063ba655cfa..5fae356260e 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -44,7 +44,7 @@ M.adjustToxLoss(-5, 0, TRUE) M.hallucination = 0 M.setBrainLoss(0) - M.remove_all_traits() + REMOVE_TRAITS_NOT_IN(M, list(SPECIES_TRAIT, ROUNDSTART_TRAIT, ORGAN_TRAIT)) M.set_blurriness(0) M.set_blindness(0) M.SetKnockdown(0, FALSE) @@ -61,6 +61,9 @@ M.confused = 0 M.SetSleeping(0, 0) M.jitteriness = 0 + if(M.blood_volume < BLOOD_VOLUME_NORMAL) + M.blood_volume = BLOOD_VOLUME_NORMAL + M.cure_all_traumas(TRAUMA_RESILIENCE_MAGIC) for(var/thing in M.diseases) var/datum/disease/D = thing @@ -140,7 +143,7 @@ M.adjustFireLoss(-power, 0) M.adjustToxLoss(-power, 0, TRUE) //heals TOXINLOVERs M.adjustCloneLoss(-power, 0) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) //fixes common causes for disfiguration + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) //fixes common causes for disfiguration . = 1 metabolization_rate = REAGENTS_METABOLISM * (0.00001 * (M.bodytemperature ** 2) + 0.5) ..() @@ -156,7 +159,7 @@ /datum/reagent/medicine/clonexadone/on_mob_life(mob/living/carbon/M) if(M.bodytemperature < T0C) M.adjustCloneLoss(0.00006 * (M.bodytemperature ** 2) - 6, 0) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) . = 1 metabolization_rate = REAGENTS_METABOLISM * (0.000015 * (M.bodytemperature ** 2) + 0.75) ..() @@ -186,7 +189,7 @@ M.adjustFireLoss(-1.5 * power, 0) M.adjustToxLoss(-power, 0, TRUE) M.adjustCloneLoss(-power, 0) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) . = 1 ..() @@ -202,7 +205,7 @@ /datum/reagent/medicine/rezadone/on_mob_life(mob/living/carbon/M) M.setCloneLoss(0) //Rezadone is almost never used in favor of cryoxadone. Hopefully this will change that. M.heal_bodypart_damage(1,1) - M.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + REMOVE_TRAIT(M, TRAIT_DISFIGURED, TRAIT_GENERIC) ..() . = 1 @@ -563,7 +566,7 @@ if(I && M.dropItemToGround(I)) to_chat(M, "Your hands spaz out and you drop what you were holding!") M.Jitter(10) - + M.AdjustAllImmobility(-20, FALSE) M.adjustStaminaLoss(-1*REM, FALSE) ..() @@ -578,7 +581,7 @@ if(prob(7)) to_chat(M, "[pick("Your head pounds.", "You feel a tight pain in your chest.", "You find it hard to stay still.", "You feel your heart practically beating out of your chest.")]") - + if(prob(33)) M.adjustToxLoss(1*REM, 0) M.losebreath++ @@ -590,7 +593,7 @@ M.visible_message("[M] starts having a seizure!", "You have a seizure!") M.Unconscious(100) M.Jitter(350) - + if(prob(33)) M.adjustToxLoss(2*REM, 0) M.losebreath += 2 @@ -602,7 +605,7 @@ M.visible_message("[M] starts having a seizure!", "You have a seizure!") M.Unconscious(100) M.Jitter(350) - + if(prob(33)) M.adjustToxLoss(3*REM, 0) M.losebreath += 3 @@ -614,7 +617,7 @@ M.visible_message("[M] starts having a seizure!", "You have a seizure!") M.Unconscious(100) M.Jitter(350) - + if(prob(33)) M.adjustToxLoss(4*REM, 0) M.losebreath += 4 @@ -626,7 +629,7 @@ M.visible_message("[M] starts having a seizure!", "You have a seizure!") M.Unconscious(100) M.Jitter(350) - + if(prob(33)) M.adjustToxLoss(5*REM, 0) M.losebreath += 5 @@ -730,14 +733,14 @@ var/obj/item/organ/eyes/eyes = M.getorganslot(ORGAN_SLOT_EYES) if (!eyes) return - if(M.has_trait(TRAIT_BLIND, EYE_DAMAGE)) + if(HAS_TRAIT_FROM(M, TRAIT_BLIND, EYE_DAMAGE)) if(prob(20)) to_chat(M, "Your vision slowly returns...") M.cure_blind(EYE_DAMAGE) M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(35) - else if(M.has_trait(TRAIT_NEARSIGHT, EYE_DAMAGE)) + else if(HAS_TRAIT_FROM(M, TRAIT_NEARSIGHT, EYE_DAMAGE)) to_chat(M, "The blackness in your peripheral vision fades.") M.cure_nearsighted(EYE_DAMAGE) M.blur_eyes(10) @@ -758,7 +761,7 @@ overdose_threshold = 35 /datum/reagent/medicine/atropine/on_mob_life(mob/living/carbon/M) - if(M.health < 0) + if(M.health <= M.crit_threshold) M.adjustToxLoss(-2*REM, 0) M.adjustBruteLoss(-2*REM, 0) M.adjustFireLoss(-2*REM, 0) @@ -786,13 +789,20 @@ metabolization_rate = 0.25 * REAGENTS_METABOLISM overdose_threshold = 30 +/datum/reagent/medicine/epinephrine/on_mob_add(mob/living/carbon/M) + ..() + ADD_TRAIT(M, TRAIT_NOCRITDAMAGE, id) + +/datum/reagent/medicine/epinephrine/on_mob_delete(mob/living/carbon/M) + REMOVE_TRAIT(M, TRAIT_NOCRITDAMAGE, id) + ..() + /datum/reagent/medicine/epinephrine/on_mob_life(mob/living/carbon/M) - if(M.health < 0) + if(M.health <= M.crit_threshold) M.adjustToxLoss(-0.5*REM, 0) M.adjustBruteLoss(-0.5*REM, 0) M.adjustFireLoss(-0.5*REM, 0) - if(M.oxyloss > 35) - M.setOxyLoss(35, 0) + M.adjustOxyLoss(-0.5*REM, 0) if(M.losebreath >= 4) M.losebreath -= 2 if(M.losebreath < 0) @@ -820,12 +830,12 @@ metabolization_rate = 0.5 * REAGENTS_METABOLISM taste_description = "magnets" -/datum/reagent/medicine/strange_reagent/reaction_mob(mob/living/carbon/human/M, method=TOUCH, reac_volume) +/datum/reagent/medicine/strange_reagent/reaction_mob(mob/living/M, method=TOUCH, reac_volume) if(M.stat == DEAD) if(M.suiciding || M.hellbound) //they are never coming back M.visible_message("[M]'s body does not react...") return - if(M.getBruteLoss() >= 100 || M.getFireLoss() >= 100 || M.has_trait(TRAIT_HUSK)) //body is too damaged to be revived + if(M.getBruteLoss() >= 100 || M.getFireLoss() >= 100 || HAS_TRAIT(M, TRAIT_HUSK)) //body is too damaged to be revived M.visible_message("[M]'s body convulses a bit, and then falls still once more.") M.do_jitter_animation(10) return @@ -1092,6 +1102,7 @@ description = "Miniature medical robots that swiftly restore bodily damage." reagent_state = SOLID color = "#555555" + overdose_threshold = 30 /datum/reagent/medicine/syndicate_nanites/on_mob_life(mob/living/carbon/M) M.adjustBruteLoss(-5*REM, 0) //A ton of healing - this is a 50 telecrystal investment. @@ -1103,6 +1114,13 @@ ..() . = 1 +/datum/reagent/medicine/syndicate_nanites/overdose_process(mob/living/carbon/M) //wtb flavortext messages that hint that you're vomitting up robots + if(prob(25)) + M.reagents.remove_reagent(src.id, metabolization_rate*15) // ~5 units at a rate of 0.4 but i wanted a nice number in code + M.vomit(20) // nanite safety protocols make your body expel them to prevent harmies + ..() + . = 1 + /datum/reagent/medicine/earthsblood //Created by ambrosia gaia plants name = "Earthsblood" id = "earthsblood" @@ -1221,10 +1239,10 @@ /datum/reagent/medicine/corazone/on_mob_add(mob/living/M) ..() - M.add_trait(TRAIT_STABLEHEART, id) + ADD_TRAIT(M, TRAIT_STABLEHEART, id) /datum/reagent/medicine/corazone/on_mob_delete(mob/living/M) - M.remove_trait(TRAIT_STABLEHEART, id) + REMOVE_TRAIT(M, TRAIT_STABLEHEART, id) ..() /datum/reagent/medicine/muscle_stimulant @@ -1252,11 +1270,11 @@ var/overdose_progress = 0 // to track overdose progress /datum/reagent/medicine/modafinil/on_mob_add(mob/living/M) - M.add_trait(TRAIT_SLEEPIMMUNE, id) + ADD_TRAIT(M, TRAIT_SLEEPIMMUNE, id) ..() /datum/reagent/medicine/modafinil/on_mob_delete(mob/living/M) - M.remove_trait(TRAIT_SLEEPIMMUNE, id) + REMOVE_TRAIT(M, TRAIT_SLEEPIMMUNE, id) ..() /datum/reagent/medicine/modafinil/on_mob_life(mob/living/carbon/M) @@ -1316,10 +1334,10 @@ /datum/reagent/medicine/psicodine/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_FEARLESS, id) + ADD_TRAIT(L, TRAIT_FEARLESS, id) /datum/reagent/medicine/psicodine/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_FEARLESS, id) + REMOVE_TRAIT(L, TRAIT_FEARLESS, id) ..() /datum/reagent/medicine/psicodine/on_mob_life(mob/living/carbon/M) diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index b627cf31969..c7a517d45ae 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -1,5 +1,5 @@ /datum/reagent/blood - data = list("donor"=null,"viruses"=null,"blood_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null,"mind"=null,"ckey"=null,"gender"=null,"real_name"=null,"cloneable"=null,"factions"=null) + data = list("donor"=null,"viruses"=null,"blood_DNA"=null,"blood_type"=null,"resistances"=null,"trace_chem"=null,"mind"=null,"ckey"=null,"gender"=null,"real_name"=null,"cloneable"=null,"factions"=null,"quirks"=null) name = "Blood" id = "blood" color = "#C80000" // rgb: 200, 0, 0 @@ -192,10 +192,10 @@ /datum/reagent/water/holywater/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_HOLY, id) + ADD_TRAIT(L, TRAIT_HOLY, id) /datum/reagent/water/holywater/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_HOLY, id) + REMOVE_TRAIT(L, TRAIT_HOLY, id) ..() /datum/reagent/water/holywater/reaction_mob(mob/living/M, method=TOUCH, reac_volume) @@ -1011,6 +1011,7 @@ var/mob/living/carbon/C = M if(ishuman(M)) var/mob/living/carbon/human/H = M + H.adjust_hygiene((30 * reac_volume) / (3 + reac_volume)) if(H.lip_style) H.lip_style = null H.update_body() @@ -1052,8 +1053,8 @@ /datum/reagent/space_cleaner/ez_clean/reaction_mob(mob/living/M, method=TOUCH, reac_volume) ..() if((method == TOUCH || method == VAPOR) && !issilicon(M)) - M.adjustBruteLoss(1) - M.adjustFireLoss(1) + M.adjustBruteLoss(1.5) + M.adjustFireLoss(1.5) /datum/reagent/cryptobiolin name = "Cryptobiolin" @@ -1123,6 +1124,18 @@ if(method==PATCH || method==INGEST || method==INJECT || (method == VAPOR && prob(min(reac_volume,100)*(1 - touch_protection)))) L.ForceContractDisease(new /datum/disease/tuberculosis(), FALSE, TRUE) +/datum/reagent/snail + name = "Agent-S" + id = "snailserum" + description = "Virological agent that infects the subject with Gastrolosis." + color = "#003300" // rgb(0, 51, 0) + taste_description = "goo" + can_synth = FALSE //special orange man request + +/datum/reagent/snail/reaction_mob(mob/living/L, 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)))) + L.ForceContractDisease(new /datum/disease/gastrolosis(), FALSE, TRUE) + /datum/reagent/fluorosurfactant//foam precursor name = "Fluorosurfactant" id = "fluorosurfactant" @@ -1226,12 +1239,12 @@ /datum/reagent/stimulum/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_STUNIMMUNE, id) - L.add_trait(TRAIT_SLEEPIMMUNE, id) + ADD_TRAIT(L, TRAIT_STUNIMMUNE, id) + ADD_TRAIT(L, TRAIT_SLEEPIMMUNE, id) /datum/reagent/stimulum/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_STUNIMMUNE, id) - L.remove_trait(TRAIT_SLEEPIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_STUNIMMUNE, id) + REMOVE_TRAIT(L, TRAIT_SLEEPIMMUNE, id) ..() /datum/reagent/stimulum/on_mob_life(mob/living/carbon/M) @@ -1757,10 +1770,10 @@ /datum/reagent/pax/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_PACIFISM, id) + ADD_TRAIT(L, TRAIT_PACIFISM, id) /datum/reagent/pax/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_PACIFISM, id) + REMOVE_TRAIT(L, TRAIT_PACIFISM, id) ..() /datum/reagent/bz_metabolites @@ -1773,11 +1786,11 @@ /datum/reagent/bz_metabolites/on_mob_add(mob/living/L) ..() - L.add_trait(CHANGELING_HIVEMIND_MUTE, id) + ADD_TRAIT(L, CHANGELING_HIVEMIND_MUTE, id) /datum/reagent/bz_metabolites/on_mob_delete(mob/living/L) ..() - L.remove_trait(CHANGELING_HIVEMIND_MUTE, id) + REMOVE_TRAIT(L, CHANGELING_HIVEMIND_MUTE, id) /datum/reagent/bz_metabolites/on_mob_life(mob/living/L) if(L.mind) @@ -1792,12 +1805,16 @@ description = "A colorless liquid that suppresses violence on the subjects. Cheaper to synthetize, but wears out faster than normal Pax." metabolization_rate = 1.5 * REAGENTS_METABOLISM +/datum/reagent/peaceborg + can_synth = FALSE + /datum/reagent/peaceborg/confuse name = "Dizzying Solution" id = "dizzysolution" description = "Makes the target off balance and dizzy" metabolization_rate = 1.5 * REAGENTS_METABOLISM taste_description = "dizziness" + can_synth = TRUE /datum/reagent/peaceborg/confuse/on_mob_life(mob/living/carbon/M) if(M.confused < 6) @@ -1814,6 +1831,7 @@ description = "An extremely weak stamina-toxin that tires out the target. Completely harmless." metabolization_rate = 1.5 * REAGENTS_METABOLISM taste_description = "tiredness" + can_synth = TRUE /datum/reagent/peaceborg/tire/on_mob_life(mob/living/carbon/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. diff --git a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm index 7c8b9aa2ad2..32440405f18 100644 --- a/code/modules/reagents/chemistry/reagents/toxin_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/toxin_reagents.dm @@ -98,7 +98,7 @@ /datum/reagent/toxin/lexorin/on_mob_life(mob/living/carbon/C) . = TRUE - if(C.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(C, TRAIT_NOBREATH)) . = FALSE if(.) @@ -136,7 +136,7 @@ taste_description = "mint" /datum/reagent/toxin/minttoxin/on_mob_life(mob/living/carbon/M) - if(M.has_trait(TRAIT_FAT)) + if(HAS_TRAIT(M, TRAIT_FAT)) M.gib() return ..() @@ -183,10 +183,10 @@ /datum/reagent/toxin/ghoulpowder/on_mob_add(mob/living/L) ..() - L.add_trait(TRAIT_FAKEDEATH, id) + ADD_TRAIT(L, TRAIT_FAKEDEATH, id) /datum/reagent/toxin/ghoulpowder/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_FAKEDEATH, id) + REMOVE_TRAIT(L, TRAIT_FAKEDEATH, id) ..() /datum/reagent/toxin/ghoulpowder/on_mob_life(mob/living/carbon/M) @@ -301,25 +301,6 @@ . = 1 ..() -/datum/reagent/toxin/chloralhydratedelayed //sedates half as quickly and does not cause toxloss. same name/desc so it doesn't give away sleepypens - name = "Chloral Hydrate" - id = "chloralhydratedelayed" - description = "A powerful sedative that induces confusion and drowsiness before putting its target to sleep." - silent_toxin = TRUE - reagent_state = SOLID - color = "#000067" // rgb: 0, 0, 103 - toxpwr = 0 - metabolization_rate = 1.5 * REAGENTS_METABOLISM - -/datum/reagent/toxin/chloralhydratedelayed/on_mob_life(mob/living/carbon/M) - switch(current_cycle) - if(10 to 20) - M.confused += 1 - M.drowsyness += 1 - if(20 to INFINITY) - M.Sleeping(40, 0) - ..() - /datum/reagent/toxin/fakebeer //disguised as normal beer for use by emagged brobots name = "Beer" id = "fakebeer" @@ -900,10 +881,10 @@ taste_description = "stillness" /datum/reagent/toxin/mimesbane/on_mob_add(mob/living/L) - L.add_trait(TRAIT_EMOTEMUTE, id) + ADD_TRAIT(L, TRAIT_EMOTEMUTE, id) /datum/reagent/toxin/mimesbane/on_mob_delete(mob/living/L) - L.remove_trait(TRAIT_EMOTEMUTE, id) + REMOVE_TRAIT(L, TRAIT_EMOTEMUTE, id) /datum/reagent/toxin/bonehurtingjuice //oof ouch name = "Bone Hurting Juice" @@ -920,7 +901,7 @@ /datum/reagent/toxin/bonehurtingjuice/on_mob_life(mob/living/carbon/M) M.adjustStaminaLoss(15, 0) - if(M.has_trait(TRAIT_CALCIUM_HEALER)) + if(HAS_TRAIT(M, TRAIT_CALCIUM_HEALER)) M.adjustBruteLoss(0.5, 0) if(prob(20)) switch(rand(1, 3)) diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index f2e9baeba49..15643d57120 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -514,7 +514,16 @@ 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, rand(1, round(created_volume, 1)), "Life (hostile)") //defaults to HOSTILE_SPAWN + +/datum/chemical_reaction/life_friendly + name = "Life (Friendly)" + id = "life_friendly" + required_reagents = list("strange_reagent" = 1, "synthflesh" = 1, "sugar" = 1) + required_temp = 374 + +/datum/chemical_reaction/life_friendly/on_reaction(datum/reagents/holder, created_volume) + chemical_mob_spawn(holder, rand(1, round(created_volume, 1)), "Life (friendly)", FRIENDLY_SPAWN) /datum/chemical_reaction/corgium name = "corgium" diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index db5f7b198c2..a9f276461d4 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -559,9 +559,16 @@ required_other = TRUE /datum/chemical_reaction/slime/slimestop/on_reaction(datum/reagents/holder) + sleep(50) + var/obj/item/slime_extract/sepia/extract = holder.my_atom var/turf/T = get_turf(holder.my_atom) - var/list/M = list(get_mob_by_key(holder.my_atom.fingerprintslast)) - new /obj/effect/timestop(T, null, null, M) + new /obj/effect/timestop(T, null, null, null) + if(istype(extract)) + if(extract.Uses > 0) + var/mob/lastheld = get_mob_by_key(holder.my_atom.fingerprintslast) + if(lastheld && !lastheld.equip_to_slot_if_possible(extract, SLOT_HANDS, disable_warning = TRUE)) + extract.forceMove(get_turf(lastheld)) + ..() /datum/chemical_reaction/slime/slimecamera diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 76e11ddc0d2..bb50428b2eb 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -78,7 +78,7 @@ /obj/item/reagent_containers/proc/bartender_check(atom/target) . = FALSE - if(target.CanPass(src, get_turf(src)) && thrownby && thrownby.has_trait(TRAIT_BOOZE_SLIDER)) + if(target.CanPass(src, get_turf(src)) && thrownby && HAS_TRAIT(thrownby, TRAIT_BOOZE_SLIDER)) . = TRUE /obj/item/reagent_containers/proc/SplashReagents(atom/target, thrown = FALSE) diff --git a/code/modules/reagents/reagent_containers/blood_pack.dm b/code/modules/reagents/reagent_containers/blood_pack.dm index 27765be9c54..804c23b5129 100644 --- a/code/modules/reagents/reagent_containers/blood_pack.dm +++ b/code/modules/reagents/reagent_containers/blood_pack.dm @@ -94,4 +94,4 @@ labelled = 0 update_pack_name() else - return ..() + return ..() \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 5710ff28433..19d225fb119 100755 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -1,3 +1,4 @@ + /obj/item/reagent_containers/glass name = "glass" amount_per_transfer_from_this = 10 @@ -207,7 +208,7 @@ and Element Cuban combined with the Compound Pete. Can hold up to \ 300 units." icon_state = "beakerbluespace" - materials = list(MAT_GLASS=3000) + materials = list(MAT_GLASS = 5000, MAT_PLASMA = 3000, MAT_DIAMOND = 1000, MAT_BLUESPACE = 1000) volume = 300 amount_per_transfer_from_this = 10 possible_transfer_amounts = list(5,10,15,20,25,30,50,100,300) @@ -330,3 +331,66 @@ /obj/item/reagent_containers/glass/beaker/waterbottle/large/empty list_reagents = list() + +/obj/item/pestle + name = "pestle" + desc = "An ancient, simple tool used in conjunction with a mortar to grind or juice items." + icon = 'icons/obj/chemical.dmi' + icon_state = "pestle" + force = 7 + +/obj/item/reagent_containers/glass/mortar + name = "mortar" + desc = "A specially formed bowl of ancient design. It is possible to crush or juice items placed in it using a pestle; however the process, unlike modern methods, is slow and physically exhausting. Alt click to eject the item." + icon_state = "mortar" + amount_per_transfer_from_this = 10 + possible_transfer_amounts = list(5, 10, 15, 20, 25, 30, 50, 100) + volume = 100 + reagent_flags = OPENCONTAINER + spillable = TRUE + var/obj/item/grinded + +/obj/item/reagent_containers/glass/mortar/AltClick(mob/user) + if(grinded) + grinded.forceMove(drop_location()) + grinded = null + to_chat(user, "You eject the item inside.") + +/obj/item/reagent_containers/glass/mortar/attackby(obj/item/I, mob/living/carbon/human/user) + ..() + if(istype(I,/obj/item/pestle)) + if(grinded) + if(user.getStaminaLoss() > 50) + to_chat(user, "You are too tired to work!") + return + to_chat(user, "You start grinding...") + if((do_after(user, 25, target = src)) && grinded) + user.adjustStaminaLoss(40) + if(grinded.juice_results) //prioritize juicing + grinded.on_juice() + reagents.add_reagent_list(grinded.juice_results) + to_chat(user, "You juice [grinded] into a fine liquid.") + QDEL_NULL(grinded) + return + grinded.on_grind() + reagents.add_reagent_list(grinded.grind_results) + to_chat(user, "You break [grinded] into powder.") + QDEL_NULL(grinded) + return + return + else + to_chat(user, "There is nothing to grind!") + return + if(grinded) + to_chat(user, "There is something inside already!") + return + if(I.juice_results || I.grind_results) + I.forceMove(src) + grinded = I + return + to_chat(user, "You can't grind this!") + +/obj/item/reagent_containers/glass/saline + name = "saline canister" + volume = 5000 + list_reagents = list("salglu_solution" = 5000) \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 349ad5676e7..b1313834eb9 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -180,3 +180,9 @@ name = "atropine autoinjector" desc = "A rapid way to save a person from a critical injury state!" list_reagents = list("atropine" = 10) + +/obj/item/reagent_containers/hypospray/medipen/snail + name = "snail shot" + desc = "All-purpose snail medicine! Do not use on non-snails!" + list_reagents = list("snailserum" = 10) + icon_state = "snail" \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 335e8e87c02..7783c7849e3 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -72,9 +72,7 @@ to_chat(user, "[target] is full.") return - to_chat(user, "You dissolve [src] in [target].") - for(var/mob/O in viewers(2, user)) //viewers is necessary here because of the small radius - to_chat(O, "[user] slips something into [target]!") + user.visible_message("[user] slips something into [target]!", "You dissolve [src] in [target].", null, 2) reagents.trans_to(target, reagents.total_volume, transfered_by = user) qdel(src) @@ -175,7 +173,7 @@ /obj/item/reagent_containers/pill/penacid name = "pentetic acid pill" - desc = "Used to expunge radioation and toxins." + desc = "Used to expunge radiation and toxins." list_reagents = list("pen_acid" = 10) icon_state = "pill22" rename_with_volume = TRUE diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index e9475259454..28aa7020625 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -45,25 +45,21 @@ to_chat(user, "Not enough left!") return - spray(A) + spray(A, user) playsound(src.loc, 'sound/effects/spray2.ogg', 50, 1, -6) user.changeNext_move(CLICK_CD_RANGE*2) user.newtonian_move(get_dir(A, user)) + var/turf/T = get_turf(src) - if(reagents.has_reagent("sacid")) - message_admins("[ADMIN_LOOKUPFLW(user)] fired sulphuric acid from \a [src] at [ADMIN_VERBOSEJMP(T)].") - log_game("[key_name(user)] fired sulphuric acid from \a [src] at [AREACOORD(T)].") - if(reagents.has_reagent("facid")) - message_admins("[ADMIN_LOOKUPFLW(user)] fired Fluacid from \a [src] at [ADMIN_VERBOSEJMP(T)].") - log_game("[key_name(user)] fired Fluacid from \a [src] at [AREACOORD(T)].") - if(reagents.has_reagent("lube")) - message_admins("[ADMIN_LOOKUPFLW(user)] fired Space lube from \a [src] at [ADMIN_VERBOSEJMP(T)].") - log_game("[key_name(user)] fired Space lube from \a [src] at [AREACOORD(T)].") + var/contained = reagents.log_list() + + log_combat(user, T, "sprayed", src, addition="which had [contained]") + log_game("[key_name(user)] fired [contained] from \a [src] at [AREACOORD(T)].") //copypasta falling out of my pockets return -/obj/item/reagent_containers/spray/proc/spray(atom/A) +/obj/item/reagent_containers/spray/proc/spray(atom/A, mob/user) var/range = max(min(current_range, get_dist(src, A)), 1) var/obj/effect/decal/chempuff/D = new /obj/effect/decal/chempuff(get_turf(src)) D.create_reagents(amount_per_transfer_from_this) @@ -75,9 +71,9 @@ reagents.trans_to(D, amount_per_transfer_from_this, 1/range) D.color = mix_color_from_reagents(D.reagents.reagent_list) var/wait_step = max(round(2+3/range), 2) - do_spray(A, wait_step, D, range, puff_reagent_left) + do_spray(A, wait_step, D, range, puff_reagent_left, user) -/obj/item/reagent_containers/spray/proc/do_spray(atom/A, wait_step, obj/effect/decal/chempuff/D, range, puff_reagent_left) +/obj/item/reagent_containers/spray/proc/do_spray(atom/A, wait_step, obj/effect/decal/chempuff/D, range, puff_reagent_left, mob/user) set waitfor = FALSE var/range_left = range for(var/i=0, iAdded \"[GLOB.TAGGERLOCATIONS[O.currTag]]\" filter.") - playsound(src, 'sound/machines/twobeep.ogg', 100, 1) + playsound(src, 'sound/machines/twobeep_high.ogg', 100, 1) else return ..() diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm index b3531e15e27..44bf5248d52 100644 --- a/code/modules/recycling/sortingmachinery.dm +++ b/code/modules/recycling/sortingmachinery.dm @@ -30,7 +30,7 @@ var/tag = uppertext(GLOB.TAGGERLOCATIONS[O.currTag]) to_chat(user, "*[tag]*") sortTag = O.currTag - playsound(loc, 'sound/machines/twobeep.ogg', 100, 1) + playsound(loc, 'sound/machines/twobeep_high.ogg', 100, 1) else if(istype(W, /obj/item/pen)) if(!user.is_literate()) @@ -117,7 +117,7 @@ var/tag = uppertext(GLOB.TAGGERLOCATIONS[O.currTag]) to_chat(user, "*[tag]*") sortTag = O.currTag - playsound(loc, 'sound/machines/twobeep.ogg', 100, 1) + playsound(loc, 'sound/machines/twobeep_high.ogg', 100, 1) else if(istype(W, /obj/item/pen)) if(!user.is_literate()) @@ -166,7 +166,7 @@ to_chat(user, "*HELL*")//lizard nerf else to_chat(user, "*HEAVEN*") - playsound(src, 'sound/machines/twobeep.ogg', 100, 1) + playsound(src, 'sound/machines/twobeep_high.ogg', 100, 1) return BRUTELOSS /obj/item/destTagger/proc/openwindow(mob/user) diff --git a/code/modules/research/designs/autolathe_designs.dm b/code/modules/research/designs/autolathe_designs.dm index a5fe1297553..d7dc52b2487 100644 --- a/code/modules/research/designs/autolathe_designs.dm +++ b/code/modules/research/designs/autolathe_designs.dm @@ -10,6 +10,15 @@ build_path = /obj/item/reagent_containers/glass/bucket category = list("initial","Tools","Tool Designs") departmental_flags = DEPARTMENTAL_FLAG_SERVICE + +/datum/design/mop + name = "Mop" + id = "mop" + build_type = AUTOLATHE | PROTOLATHE + materials = list(MAT_METAL = 1000) + build_path = /obj/item/mop + category = list("initial","Tools","Tool Designs") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE /datum/design/crowbar name = "Pocket Crowbar" diff --git a/code/modules/research/designs/electronics_designs.dm b/code/modules/research/designs/electronics_designs.dm index 7df285c9adf..96d797650d1 100644 --- a/code/modules/research/designs/electronics_designs.dm +++ b/code/modules/research/designs/electronics_designs.dm @@ -46,6 +46,16 @@ category = list("Electronics") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE +/datum/design/nanite_comm_remote + name = "Nanite Communication Remote" + desc = "Allows for the construction of a nanite communication remote." + id = "nanite_comm_remote" + build_type = PROTOLATHE + materials = list(MAT_GLASS = 500, MAT_METAL = 500) + build_path = /obj/item/nanite_remote/comm + category = list("Electronics") + departmental_flags = DEPARTMENTAL_FLAG_SCIENCE + /datum/design/nanite_scanner name = "Nanite Scanner" desc = "Allows for the construction of a nanite scanner." diff --git a/code/modules/research/designs/machine_designs.dm b/code/modules/research/designs/machine_designs.dm index eed4e801ac2..3fe4091dc22 100644 --- a/code/modules/research/designs/machine_designs.dm +++ b/code/modules/research/designs/machine_designs.dm @@ -130,22 +130,6 @@ category = list("Teleportation Machinery") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE -/datum/design/board/sleeper - name = "Machine Design (Sleeper Board)" - desc = "The circuit board for a sleeper." - id = "sleeper" - build_path = /obj/item/circuitboard/machine/sleeper - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_MEDICAL - category = list ("Medical Machinery") - -/datum/design/board/vr_sleeper - name = "Machine Design (VR Sleeper Board)" - desc = "The circuit board for a VR sleeper." - id = "vr_sleeper" - build_path = /obj/item/circuitboard/machine/vr_sleeper - departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE - category = list ("Medical Machinery") - /datum/design/board/cryotube name = "Machine Design (Cryotube Board)" desc = "The circuit board for a cryotube." @@ -416,8 +400,8 @@ id = "scanner_gate" build_path = /obj/item/circuitboard/machine/scanner_gate category = list ("Misc. Machinery") - departmental_flags = DEPARTMENTAL_FLAG_ALL - + departmental_flags = DEPARTMENTAL_FLAG_ALL + /datum/design/board/holopad name = "Machine Design (AI Holopad Board)" desc = "The circuit board for a holopad." @@ -586,3 +570,19 @@ build_path = /obj/item/circuitboard/machine/paystand category = list ("Misc. Machinery") departmental_flags = DEPARTMENTAL_FLAG_ALL + +/datum/design/board/fat_sucker + name = "Machine Design (Lipid Extractor)" + desc = "The circuit board for a lipid extractor." + id = "fat_sucker" + build_path = /obj/item/circuitboard/machine/fat_sucker + category = list ("Misc. Machinery") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE + +/datum/design/board/stasis + name = "Machine Design (Lifeform Stasis Unit)" + desc = "The circuit board for a stasis unit." + id = "stasis" + build_path = /obj/item/circuitboard/machine/stasis + category = list("Medical Machinery") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL diff --git a/code/modules/research/designs/mecha_designs.dm b/code/modules/research/designs/mecha_designs.dm index 12ec54a00ec..892d32ddd08 100644 --- a/code/modules/research/designs/mecha_designs.dm +++ b/code/modules/research/designs/mecha_designs.dm @@ -197,6 +197,16 @@ construction_time = 100 category = list("Exosuit Equipment") +/datum/design/mech_disabler + name = "Exosuit Weapon (CH-DS \"Peacemaker\" Disabler)" + desc = "Allows for the construction of CH-DS Disabler." + id = "mech_disabler" + build_type = MECHFAB + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/disabler + materials = list(MAT_METAL=10000) + construction_time = 100 + category = list("Exosuit Equipment") + /datum/design/mech_grenade_launcher name = "Exosuit Weapon (SGL-6 Grenade Launcher)" desc = "Allows for the construction of SGL-6 Grenade Launcher." @@ -337,16 +347,6 @@ construction_time = 100 category = list("Exosuit Equipment") -/datum/design/mech_taser - name = "Exosuit Weapon (PBT \"Pacifier\" Mounted Taser)" - desc = "A weapon for combat exosuits. Shoots non-lethal stunning electrodes." - id = "mech_taser" - build_type = MECHFAB - build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser - materials = list(MAT_METAL=10000) - construction_time = 100 - category = list("Exosuit Equipment") - /datum/design/mech_lmg name = "Exosuit Weapon (\"Ultra AC 2\" LMG)" desc = "A weapon for combat exosuits. Shoots a rapid, three shot burst." diff --git a/code/modules/research/designs/mechfabricator_designs.dm b/code/modules/research/designs/mechfabricator_designs.dm index df95c612003..452582e6080 100644 --- a/code/modules/research/designs/mechfabricator_designs.dm +++ b/code/modules/research/designs/mechfabricator_designs.dm @@ -476,6 +476,15 @@ category = list("Phazon") //Exosuit Equipment +/datum/design/ripleyupgrade + name = "Ripley MK-1 to MK-II conversion kit" + id = "ripleyupgrade" + build_type = MECHFAB + build_path = /obj/item/mecha_parts/mecha_equipment/ripleyupgrade + materials = list(MAT_METAL=10000,MAT_PLASMA=10000) + construction_time = 100 + category = list("Exosuit Equipment") + /datum/design/mech_hydraulic_clamp name = "Exosuit Engineering Equipment (Hydraulic Clamp)" id = "mech_hydraulic_clamp" @@ -677,7 +686,7 @@ materials = list(MAT_METAL = 15000, MAT_GLASS = 15000, MAT_PLASMA = 8000, MAT_URANIUM = 8000) construction_time = 80 category = list("Cyborg Upgrade Modules") - + /datum/design/borg_upgrade_piercinghypospray name = "Cyborg Upgrade (Piercing Hypospray)" id = "borg_upgrade_piercinghypospray" @@ -695,7 +704,7 @@ materials = list(MAT_METAL = 8000, MAT_GLASS = 5000, MAT_SILVER = 4000, MAT_GOLD = 3000) construction_time = 80 category = list("Cyborg Upgrade Modules") - + /datum/design/borg_upgrade_surgicalprocessor name = "Cyborg Upgrade (Surgical Processor)" id = "borg_upgrade_surgicalprocessor" diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index 488d2cc708d..fa2d4c7f0c3 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -29,7 +29,7 @@ desc = "A bluespace beaker, powered by experimental bluespace technology and Element Cuban combined with the Compound Pete. Can hold up to 300 units." id = "bluespacebeaker" build_type = PROTOLATHE - materials = list(MAT_GLASS = 3000, MAT_PLASMA = 3000, MAT_DIAMOND = 250, MAT_BLUESPACE = 250) + materials = list(MAT_GLASS = 5000, MAT_PLASMA = 3000, MAT_DIAMOND = 1000, MAT_BLUESPACE = 1000) build_path = /obj/item/reagent_containers/glass/beaker/bluespace category = list("Medical Designs") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE @@ -302,6 +302,17 @@ build_path = /obj/item/organ/cyberimp/eyes/hud/security category = list("Misc", "Medical Designs") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL + +/datum/design/cyberimp_diagnostic_hud + name = "Diagnostic HUD Implant" + desc = "These cybernetic eyes will display a diagnostic HUD over everything you see. Wiggle eyes to control." + id = "ci-diaghud" + build_type = PROTOLATHE | MECHFAB + construction_time = 50 + materials = list(MAT_METAL = 600, MAT_GLASS = 600, MAT_SILVER = 600, MAT_GOLD = 600) + build_path = /obj/item/organ/cyberimp/eyes/hud/diagnostic + category = list("Misc", "Medical Designs") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL /datum/design/cyberimp_xray name = "X-ray Eyes" diff --git a/code/modules/research/designs/misc_designs.dm b/code/modules/research/designs/misc_designs.dm index 44c2742cbd7..2cd31ed67d1 100644 --- a/code/modules/research/designs/misc_designs.dm +++ b/code/modules/research/designs/misc_designs.dm @@ -260,6 +260,16 @@ ////////////Janitor Designs////////////// ///////////////////////////////////////// +/datum/design/mop + name = "Mop" + desc = "It mops." + id = "mop" + build_type = PROTOLATHE + materials = list(MAT_METAL = 1000) + build_path = /obj/item/mop + category = list("Equipment") + departmental_flags = DEPARTMENTAL_FLAG_SERVICE + /datum/design/advmop name = "Advanced Mop" desc = "An upgraded mop with a large internal capacity for holding water or other cleaning chemicals." diff --git a/code/modules/research/designs/nanite_designs.dm b/code/modules/research/designs/nanite_designs.dm index 177d7073a10..6a4b8686635 100644 --- a/code/modules/research/designs/nanite_designs.dm +++ b/code/modules/research/designs/nanite_designs.dm @@ -415,21 +415,21 @@ name = "Skull Echo" desc = "The nanites echo a synthesized message inside the host's skull." id = "voice_nanites" - program_type = /datum/nanite_program/triggered/voice + program_type = /datum/nanite_program/triggered/comm/voice category = list("Suppression Nanites") /datum/design/nanites/speech name = "Forced Speech" desc = "The nanites force the host to say a pre-programmed sentence when triggered." id = "speech_nanites" - program_type = /datum/nanite_program/triggered/speech + program_type = /datum/nanite_program/triggered/comm/speech category = list("Suppression Nanites") /datum/design/nanites/hallucination name = "Hallucination" desc = "The nanites make the host see and hear things that aren't real." id = "hallucination_nanites" - program_type = /datum/nanite_program/triggered/hallucination + program_type = /datum/nanite_program/triggered/comm/hallucination category = list("Suppression Nanites") ////////////////////SENSOR NANITES////////////////////////////////////// diff --git a/code/modules/research/designs/power_designs.dm b/code/modules/research/designs/power_designs.dm index e1648559a79..9def198276c 100644 --- a/code/modules/research/designs/power_designs.dm +++ b/code/modules/research/designs/power_designs.dm @@ -11,7 +11,7 @@ construction_time=100 build_path = /obj/item/stock_parts/cell/empty category = list("Misc","Power Designs","Machinery","initial") - departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING + departmental_flags = DEPARTMENTAL_FLAG_ALL /datum/design/high_cell name = "High-Capacity Power Cell" @@ -65,7 +65,7 @@ materials = list(MAT_METAL = 1500, MAT_SILVER = 150, MAT_GLASS = 3000) build_path = /obj/item/lightreplacer category = list("Power Designs") - departmental_flags = DEPARTMENTAL_FLAG_SERVICE + departmental_flags = DEPARTMENTAL_FLAG_SERVICE | DEPARTMENTAL_FLAG_ENGINEERING /datum/design/inducer name = "Inducer" diff --git a/code/modules/research/designs/telecomms_designs.dm b/code/modules/research/designs/telecomms_designs.dm index b1da302290c..eb4b404db4d 100644 --- a/code/modules/research/designs/telecomms_designs.dm +++ b/code/modules/research/designs/telecomms_designs.dm @@ -49,6 +49,15 @@ build_path = /obj/item/circuitboard/machine/telecomms/server category = list("Subspace Telecomms") departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE + +/datum/design/board/telecomms_messaging + name = "Machine Design (Messaging Server)" + desc = "Allows for the construction of Telecommunications Messaging Servers." + id = "s-messaging" + build_path = /obj/item/circuitboard/machine/telecomms/message_server + category = list("Subspace Telecomms") + departmental_flags = DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_SCIENCE /datum/design/board/subspace_broadcaster name = "Machine Design (Subspace Broadcaster)" diff --git a/code/modules/research/machinery/_production.dm b/code/modules/research/machinery/_production.dm index 9d84b6762bf..08929dece7b 100644 --- a/code/modules/research/machinery/_production.dm +++ b/code/modules/research/machinery/_production.dm @@ -84,7 +84,7 @@ /obj/machinery/rnd/production/proc/do_print(path, amount, list/matlist, notify_admins) if(notify_admins) investigate_log("[key_name(usr)] built [amount] of [path] at [src]([type]).", INVESTIGATE_RESEARCH) - message_admins("[ADMIN_LOOKUPFLW(usr)] has built [amount] of [path] at a [src]([type]).") + message_admins("[ADMIN_LOOKUPFLW(usr)] has built [amount] of [path] at \a [src]([type]).") for(var/i in 1 to amount) var/obj/item/I = new path(get_turf(src)) if(efficient_with(I.type)) diff --git a/code/modules/research/nanites/nanite_programs.dm b/code/modules/research/nanites/nanite_programs.dm index d669d04fb09..d3fee06cc92 100644 --- a/code/modules/research/nanites/nanite_programs.dm +++ b/code/modules/research/nanites/nanite_programs.dm @@ -86,7 +86,8 @@ target.deactivation_code = deactivation_code target.kill_code = kill_code target.trigger_code = trigger_code - copy_extra_settings_to(target) + if(istype(target,src)) + copy_extra_settings_to(target) /datum/nanite_program/proc/set_extra_setting(user, setting) return @@ -136,8 +137,10 @@ if(timer && timer_counter > timer) if(timer_type == NANITE_TIMER_DEACTIVATE) deactivate() + return else if(timer_type == NANITE_TIMER_SELFDELETE) qdel(src) + return else if(can_trigger && timer_type == NANITE_TIMER_TRIGGER) trigger() timer_counter = activation_delay diff --git a/code/modules/research/nanites/nanite_programs/buffing.dm b/code/modules/research/nanites/nanite_programs/buffing.dm index 70a3b6f5475..0f0814fab94 100644 --- a/code/modules/research/nanites/nanite_programs/buffing.dm +++ b/code/modules/research/nanites/nanite_programs/buffing.dm @@ -104,11 +104,11 @@ /datum/nanite_program/conductive/enable_passive_effect() . = ..() - host_mob.add_trait(TRAIT_SHOCKIMMUNE, "nanites") + ADD_TRAIT(host_mob, TRAIT_SHOCKIMMUNE, "nanites") /datum/nanite_program/conductive/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_SHOCKIMMUNE, "nanites") + REMOVE_TRAIT(host_mob, TRAIT_SHOCKIMMUNE, "nanites") /datum/nanite_program/mindshield name = "Mental Barrier" @@ -118,11 +118,11 @@ /datum/nanite_program/mindshield/enable_passive_effect() . = ..() - if(!host_mob.mind.has_antag_datum(/datum/antagonist/rev) && !is_hivemember(host_mob)) //won't work if on a rev, to avoid having implanted revs. same applies for hivemind members. - host_mob.add_trait(TRAIT_MINDSHIELD, "nanites") + if(!host_mob.mind.has_antag_datum(/datum/antagonist/rev, TRUE) && !is_hivemember(host_mob) && !host_mob.is_wokevessel()) //won't work if on a rev, to avoid having implanted revs. same applies for hivemind members. + ADD_TRAIT(host_mob, TRAIT_MINDSHIELD, "nanites") host_mob.sec_hud_set_implants() /datum/nanite_program/mindshield/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_MINDSHIELD, "nanites") - host_mob.sec_hud_set_implants() \ No newline at end of file + REMOVE_TRAIT(host_mob, TRAIT_MINDSHIELD, "nanites") + host_mob.sec_hud_set_implants() diff --git a/code/modules/research/nanites/nanite_programs/healing.dm b/code/modules/research/nanites/nanite_programs/healing.dm index 180547002d6..819c4b7200e 100644 --- a/code/modules/research/nanites/nanite_programs/healing.dm +++ b/code/modules/research/nanites/nanite_programs/healing.dm @@ -70,9 +70,14 @@ rogue_types = list(/datum/nanite_program/brain_decay) /datum/nanite_program/brain_heal/check_conditions() - if(!host_mob.getBrainLoss()) - return FALSE - return ..() + var/problems = FALSE + if(iscarbon(host_mob)) + var/mob/living/carbon/C = host_mob + if(length(C.get_traumas())) + problems = TRUE + if(host_mob.getBrainLoss()) + problems = TRUE + return problems ? ..() : FALSE /datum/nanite_program/brain_heal/active_effect() host_mob.adjustBrainLoss(-1, TRUE) @@ -187,9 +192,14 @@ rogue_types = list(/datum/nanite_program/brain_decay, /datum/nanite_program/brain_misfire) /datum/nanite_program/brain_heal_advanced/check_conditions() - if(!host_mob.getBrainLoss()) - return FALSE - return ..() + var/problems = FALSE + if(iscarbon(host_mob)) + var/mob/living/carbon/C = host_mob + if(length(C.get_traumas())) + problems = TRUE + if(host_mob.getBrainLoss()) + problems = TRUE + return problems ? ..() : FALSE /datum/nanite_program/brain_heal_advanced/active_effect() host_mob.adjustBrainLoss(-2, TRUE) @@ -215,7 +225,7 @@ if(!iscarbon(host_mob)) //nonstandard biology return FALSE var/mob/living/carbon/C = host_mob - if(C.suiciding || C.hellbound || C.has_trait(TRAIT_HUSK)) //can't revive + if(C.suiciding || C.hellbound || HAS_TRAIT(C, TRAIT_HUSK)) //can't revive return FALSE if((world.time - C.timeofdeath) > 1800) //too late return FALSE diff --git a/code/modules/research/nanites/nanite_programs/suppression.dm b/code/modules/research/nanites/nanite_programs/suppression.dm index b77fe0a1a8e..e91fc0fb125 100644 --- a/code/modules/research/nanites/nanite_programs/suppression.dm +++ b/code/modules/research/nanites/nanite_programs/suppression.dm @@ -65,11 +65,11 @@ /datum/nanite_program/pacifying/enable_passive_effect() . = ..() - host_mob.add_trait(TRAIT_PACIFISM, "nanites") + ADD_TRAIT(host_mob, TRAIT_PACIFISM, "nanites") /datum/nanite_program/pacifying/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_PACIFISM, "nanites") + REMOVE_TRAIT(host_mob, TRAIT_PACIFISM, "nanites") /datum/nanite_program/blinding name = "Blindness" @@ -93,11 +93,11 @@ /datum/nanite_program/mute/enable_passive_effect() . = ..() - host_mob.add_trait(TRAIT_MUTE, "nanites") + ADD_TRAIT(host_mob, TRAIT_MUTE, "nanites") /datum/nanite_program/mute/disable_passive_effect() . = ..() - host_mob.remove_trait(TRAIT_MUTE, "nanites") + REMOVE_TRAIT(host_mob, TRAIT_MUTE, "nanites") /datum/nanite_program/fake_death name = "Death Simulation" @@ -114,7 +114,19 @@ . = ..() host_mob.cure_fakedeath("nanites") -/datum/nanite_program/triggered/speech +//Can receive transmissions from a nanite communication remote for customized messages +/datum/nanite_program/triggered/comm + var/comm_code = 0 + var/comm_message = "" + +/datum/nanite_program/triggered/comm/proc/receive_comm_signal(signal_comm_code, comm_message, comm_source) + if(!activated || !comm_code) + return + if(signal_comm_code == comm_code) + host_mob.investigate_log("'s [name] nanite program was messaged by [comm_source] with comm code [signal_comm_code] and message '[comm_message]'.", INVESTIGATE_NANITES) + trigger(comm_message) + +/datum/nanite_program/triggered/comm/speech name = "Forced Speech" desc = "The nanites force the host to say a pre-programmed sentence when triggered." unique = FALSE @@ -122,10 +134,10 @@ trigger_cooldown = 20 rogue_types = list(/datum/nanite_program/brain_misfire, /datum/nanite_program/brain_decay) - extra_settings = list("Sentence") + extra_settings = list("Sentence","Comm Code") var/sentence = "" -/datum/nanite_program/triggered/speech/set_extra_setting(user, setting) +/datum/nanite_program/triggered/comm/speech/set_extra_setting(user, setting) if(setting == "Sentence") var/new_sentence = stripped_input(user, "Choose the sentence that the host will be forced to say.", "Sentence", sentence, MAX_MESSAGE_LEN) if(!new_sentence) @@ -133,23 +145,34 @@ if(copytext(new_sentence, 1, 2) == "*") //emotes are abusable, like surrender return sentence = new_sentence + if(setting == "Comm Code") + var/new_code = input(user, "Set the communication code (1-9999) or set to 0 to disable external signals.", name, null) as null|num + if(isnull(new_code)) + return + comm_code = CLAMP(round(new_code, 1), 0, 9999) -/datum/nanite_program/triggered/speech/get_extra_setting(setting) +/datum/nanite_program/triggered/comm/speech/get_extra_setting(setting) if(setting == "Sentence") return sentence + if(setting == "Comm Code") + return comm_code -/datum/nanite_program/triggered/speech/copy_extra_settings_to(datum/nanite_program/triggered/speech/target) +/datum/nanite_program/triggered/comm/speech/copy_extra_settings_to(datum/nanite_program/triggered/comm/speech/target) target.sentence = sentence + target.comm_code = comm_code -/datum/nanite_program/triggered/speech/trigger() +/datum/nanite_program/triggered/comm/speech/trigger(comm_message) if(!..()) return + var/sent_message = comm_message + if(!comm_message) + sent_message = sentence if(host_mob.stat == DEAD) return to_chat(host_mob, "You feel compelled to speak...") - host_mob.say(sentence, forced = "nanite speech") + host_mob.say(sent_message, forced = "nanite speech") -/datum/nanite_program/triggered/voice +/datum/nanite_program/triggered/comm/voice name = "Skull Echo" desc = "The nanites echo a synthesized message inside the host's skull." unique = FALSE @@ -157,44 +180,62 @@ trigger_cooldown = 20 rogue_types = list(/datum/nanite_program/brain_misfire, /datum/nanite_program/brain_decay) - extra_settings = list("Message") + extra_settings = list("Message","Comm Code") var/message = "" -/datum/nanite_program/triggered/voice/set_extra_setting(user, setting) +/datum/nanite_program/triggered/comm/voice/set_extra_setting(user, setting) if(setting == "Message") var/new_message = stripped_input(user, "Choose the message sent to the host.", "Message", message, MAX_MESSAGE_LEN) if(!new_message) return message = new_message + if(setting == "Comm Code") + var/new_code = input(user, "Set the communication code (1-9999) or set to 0 to disable external signals.", name, null) as null|num + if(isnull(new_code)) + return + comm_code = CLAMP(round(new_code, 1), 0, 9999) -/datum/nanite_program/triggered/voice/get_extra_setting(setting) +/datum/nanite_program/triggered/comm/voice/get_extra_setting(setting) if(setting == "Message") return message + if(setting == "Comm Code") + return comm_code -/datum/nanite_program/triggered/voice/copy_extra_settings_to(datum/nanite_program/triggered/voice/target) +/datum/nanite_program/triggered/comm/voice/copy_extra_settings_to(datum/nanite_program/triggered/comm/voice/target) target.message = message + target.comm_code = comm_code -/datum/nanite_program/triggered/voice/trigger() +/datum/nanite_program/triggered/comm/voice/trigger(comm_message) if(!..()) return + var/sent_message = comm_message + if(!comm_message) + sent_message = message if(host_mob.stat == DEAD) return - to_chat(host_mob, "You hear a strange, robotic voice in your head... \"[message]\"") + to_chat(host_mob, "You hear a strange, robotic voice in your head... \"[sent_message]\"") -/datum/nanite_program/triggered/hallucination +/datum/nanite_program/triggered/comm/hallucination name = "Hallucination" desc = "The nanites make the host hallucinate something when triggered." trigger_cost = 4 trigger_cooldown = 80 unique = FALSE rogue_types = list(/datum/nanite_program/brain_misfire) - extra_settings = list("Hallucination Type") + extra_settings = list("Hallucination Type", "Comm Code") var/hal_type var/hal_details -/datum/nanite_program/triggered/hallucination/trigger() +/datum/nanite_program/triggered/comm/hallucination/trigger(comm_message) if(!..()) return + + if(comm_message && (hal_type != "Message")) //Triggered via comm remote, but not set to a message hallucination + return + var/sent_message = comm_message //Comm remotes can send custom hallucination messages for the chat hallucination + if(!sent_message) + sent_message = hal_details + if(!iscarbon(host_mob)) return var/mob/living/carbon/C = host_mob @@ -203,7 +244,7 @@ else switch(hal_type) if("Message") - new /datum/hallucination/chat(C, TRUE, null, hal_details) + new /datum/hallucination/chat(C, TRUE, null, sent_message) if("Battle") new /datum/hallucination/battle(C, TRUE, hal_details) if("Sound") @@ -223,7 +264,13 @@ if("Plasma Flood") new /datum/hallucination/fake_flood(C, TRUE) -/datum/nanite_program/triggered/hallucination/set_extra_setting(user, setting) +/datum/nanite_program/triggered/comm/hallucination/set_extra_setting(user, setting) + if(setting == "Comm Code") + var/new_code = input(user, "(Only for Message) Set the communication code (1-9999) or set to 0 to disable external signals.", name, null) as null|num + if(isnull(new_code)) + return + comm_code = CLAMP(round(new_code, 1), 0, 9999) + if(setting == "Hallucination Type") var/list/possible_hallucinations = list("Random","Message","Battle","Sound","Weird Sound","Station Message","Health","Alert","Fire","Shock","Plasma Flood") var/hal_type_choice = input("Choose the hallucination type", name) as null|anything in possible_hallucinations @@ -299,13 +346,16 @@ if("Plasma Flood") hal_type = "Plasma Flood" -/datum/nanite_program/triggered/hallucination/get_extra_setting(setting) +/datum/nanite_program/triggered/comm/hallucination/get_extra_setting(setting) if(setting == "Hallucination Type") if(!hal_type) return "Random" else return hal_type + if(setting == "Comm Code") + return comm_code -/datum/nanite_program/triggered/hallucination/copy_extra_settings_to(datum/nanite_program/triggered/hallucination/target) +/datum/nanite_program/triggered/comm/hallucination/copy_extra_settings_to(datum/nanite_program/triggered/comm/hallucination/target) target.hal_type = hal_type - target.hal_details = hal_details \ No newline at end of file + target.hal_details = hal_details + target.comm_code = comm_code \ No newline at end of file diff --git a/code/modules/research/nanites/nanite_programs/utility.dm b/code/modules/research/nanites/nanite_programs/utility.dm index 712542db1ba..6525c339918 100644 --- a/code/modules/research/nanites/nanite_programs/utility.dm +++ b/code/modules/research/nanites/nanite_programs/utility.dm @@ -181,6 +181,15 @@ return SEND_SIGNAL(host_mob, COMSIG_NANITE_SIGNAL, code, source) +/datum/nanite_program/relay/proc/relay_comm_signal(comm_code, relay_code, comm_message) + if(!activated) + return + if(!host_mob) + return + if(relay_code != relay_channel) + return + SEND_SIGNAL(host_mob, COMSIG_NANITE_COMM_SIGNAL, comm_code, comm_message) + /datum/nanite_program/metabolic_synthesis name = "Metabolic Synthesis" desc = "The nanites use the metabolic cycle of the host to speed up their replication rate, using their extra nutrition as fuel." @@ -237,7 +246,11 @@ if(prob(10)) var/list/mob/living/target_hosts = list() for(var/mob/living/L in oview(5, host_mob)) + if(!(MOB_ORGANIC in L.mob_biotypes) && !(MOB_UNDEAD in L.mob_biotypes)) + continue target_hosts += L + if(!target_hosts.len) + return var/mob/living/infectee = pick(target_hosts) if(prob(100 - (infectee.get_permeability_protection() * 100))) //this will potentially take over existing nanites! diff --git a/code/modules/research/nanites/nanite_remote.dm b/code/modules/research/nanites/nanite_remote.dm index 60dd78cf949..9ae5a2df7c1 100644 --- a/code/modules/research/nanites/nanite_remote.dm +++ b/code/modules/research/nanites/nanite_remote.dm @@ -165,6 +165,109 @@ . = TRUE +/obj/item/nanite_remote/comm + name = "nanite communication remote" + desc = "A device that can send text messages to specific programs." + icon_state = "nanite_comm_remote" + var/comm_code = 0 + var/comm_message = "" + +/obj/item/nanite_remote/comm/afterattack(atom/target, mob/user, etc) + switch(mode) + if(REMOTE_MODE_OFF) + return + if(REMOTE_MODE_SELF) + to_chat(user, "You activate [src], signaling the nanites in your bloodstream.") + signal_mob(user, comm_code, comm_message) + if(REMOTE_MODE_TARGET) + if(isliving(target) && (get_dist(target, get_turf(src)) <= 7)) + to_chat(user, "You activate [src], signaling the nanites inside [target].") + signal_mob(target, code, comm_message, key_name(user)) + if(REMOTE_MODE_AOE) + to_chat(user, "You activate [src], signaling the nanites inside every host around you.") + for(var/mob/living/L in view(user, 7)) + signal_mob(L, code, comm_message, key_name(user)) + if(REMOTE_MODE_RELAY) + to_chat(user, "You activate [src], signaling all connected relay nanites.") + signal_relay(code, relay_code, comm_message, key_name(user)) + +/obj/item/nanite_remote/comm/signal_mob(mob/living/M, code, source) + SEND_SIGNAL(M, COMSIG_NANITE_COMM_SIGNAL, comm_code, comm_message) + +/obj/item/nanite_remote/comm/signal_relay(code, relay_code, source) + for(var/X in SSnanites.nanite_relays) + var/datum/nanite_program/relay/N = X + N.relay_comm_signal(comm_code, relay_code, comm_message) + +/obj/item/nanite_remote/comm/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) + SStgui.try_update_ui(user, src, ui_key, ui, force_open) + if(!ui) + ui = new(user, src, ui_key, "nanite_comm_remote", name, 420, 800, master_ui, state) + ui.open() + +/obj/item/nanite_remote/comm/ui_data() + var/list/data = list() + data["comm_code"] = comm_code + data["relay_code"] = relay_code + data["comm_message"] = comm_message + data["mode"] = mode + data["locked"] = locked + data["saved_settings"] = saved_settings + + return data + +/obj/item/nanite_remote/comm/ui_act(action, params) + if(..()) + return + switch(action) + if("set_comm_code") + if(locked) + return + var/new_code = input("Set comm code (0000-9999):", name, code) as null|num + if(!isnull(new_code)) + new_code = CLAMP(round(new_code, 1),0,9999) + comm_code = new_code + . = TRUE + if("set_message") + if(locked) + return + var/new_message = stripped_input(usr, "Set the message (Max 300 characters):", "Set Message", null , 300) + if(!new_message) + return + comm_message = new_message + . = TRUE + if("comm_save") + if(locked) + return + var/code_name = stripped_input(usr, "Set the setting name", "Set Name", null , 15) + if(!code_name) + return + var/new_save = list() + new_save["id"] = last_id + 1 + last_id++ + new_save["name"] = code_name + new_save["code"] = comm_code + new_save["mode"] = mode + new_save["relay_code"] = relay_code + new_save["message"] = comm_message + + saved_settings += list(new_save) + . = TRUE + if("comm_load") + var/code_id = params["save_id"] + var/list/setting + for(var/list/X in saved_settings) + if(X["id"] == text2num(code_id)) + setting = X + break + if(setting) + comm_code = setting["code"] + mode = setting["mode"] + relay_code = setting["relay_code"] + comm_message = setting["message"] + . = TRUE + + #undef REMOTE_MODE_OFF #undef REMOTE_MODE_SELF #undef REMOTE_MODE_TARGET diff --git a/code/modules/research/stock_parts.dm b/code/modules/research/stock_parts.dm index c34b97c15a5..6cb59637994 100644 --- a/code/modules/research/stock_parts.dm +++ b/code/modules/research/stock_parts.dm @@ -90,6 +90,16 @@ If you create T5+ please take a pass at gene_modder.dm [L40]. Max_values MUST fi new /obj/item/stock_parts/micro_laser/quadultra(src) new /obj/item/stock_parts/matter_bin/bluespace(src) +/obj/item/storage/part_replacer/cargo //used in a cargo crate + +/obj/item/storage/part_replacer/cargo/PopulateContents() + for(var/i in 1 to 10) + new /obj/item/stock_parts/capacitor(src) + new /obj/item/stock_parts/scanning_module(src) + new /obj/item/stock_parts/manipulator(src) + new /obj/item/stock_parts/micro_laser(src) + new /obj/item/stock_parts/matter_bin(src) + /obj/item/storage/part_replacer/cyborg name = "rapid part exchange device" desc = "Special mechanical module made to store, sort, and apply standard machine parts." diff --git a/code/modules/research/techweb/all_nodes.dm b/code/modules/research/techweb/all_nodes.dm index 45add376c6f..3dd98081433 100644 --- a/code/modules/research/techweb/all_nodes.dm +++ b/code/modules/research/techweb/all_nodes.dm @@ -34,7 +34,7 @@ display_name = "Mechanical Exosuits" description = "Mechanized exosuits that are several magnitudes stronger and more powerful than the average human." design_ids = list("mecha_tracking", "mechacontrol", "mechapower", "mech_recharger", "ripley_chassis", "firefighter_chassis", "ripley_torso", "ripley_left_arm", "ripley_right_arm", "ripley_left_leg", "ripley_right_leg", - "ripley_main", "ripley_peri", "mech_hydraulic_clamp") + "ripley_main", "ripley_peri", "ripleyupgrade", "mech_hydraulic_clamp") /datum/techweb_node/mech_tools id = "mech_tools" @@ -48,7 +48,7 @@ starting_node = TRUE display_name = "Basic Tools" description = "Basic mechanical, electronic, surgical and botanical tools." - design_ids = list("screwdriver", "wrench", "wirecutters", "crowbar", "multitool", "welding_tool", "tscanner", "analyzer", "cable_coil", "pipe_painter", "airlock_painter", "scalpel", "circular_saw", "surgicaldrill", "retractor", "cautery", "hemostat", "cultivator", "plant_analyzer", "shovel", "spade", "hatchet") + design_ids = list("screwdriver", "wrench", "wirecutters", "crowbar", "multitool", "welding_tool", "tscanner", "analyzer", "cable_coil", "pipe_painter", "airlock_painter", "scalpel", "circular_saw", "surgicaldrill", "retractor", "cautery", "hemostat", "cultivator", "plant_analyzer", "shovel", "spade", "hatchet", "mop") /////////////////////////Biotech///////////////////////// /datum/techweb_node/biotech @@ -56,7 +56,7 @@ display_name = "Biological Technology" description = "What makes us tick." //the MC, silly! prereq_ids = list("base") - design_ids = list("chem_heater", "chem_master", "chem_dispenser", "sleeper", "vr_sleeper", "pandemic", "defibrillator", "defibmount", "operating", "soda_dispenser", "beer_dispenser", "healthanalyzer", "medspray","genescanner") + design_ids = list("chem_heater", "chem_master", "chem_dispenser", "pandemic", "defibrillator", "defibmount", "operating", "soda_dispenser", "beer_dispenser", "healthanalyzer", "medspray","genescanner") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 @@ -74,7 +74,7 @@ display_name = "Biological Processing" description = "From slimes to kitchens." prereq_ids = list("biotech") - design_ids = list("smartfridge", "gibber", "deepfryer", "monkey_recycler", "processor", "gibber", "microwave", "reagentgrinder", "dish_drive") + design_ids = list("smartfridge", "gibber", "deepfryer", "monkey_recycler", "processor", "gibber", "microwave", "reagentgrinder", "dish_drive", "fat_sucker") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 @@ -400,7 +400,7 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 design_ids = list("s-receiver", "s-bus", "s-broadcaster", "s-processor", "s-hub", "s-server", "s-relay", "comm_monitor", "comm_server", - "s-ansible", "s-filter", "s-amplifier", "ntnet_relay", "s-treatment", "s-analyzer", "s-crystal", "s-transmitter") + "s-ansible", "s-filter", "s-amplifier", "ntnet_relay", "s-treatment", "s-analyzer", "s-crystal", "s-transmitter", "s-messaging") /datum/techweb_node/integrated_HUDs id = "integrated_HUDs" @@ -435,7 +435,7 @@ display_name = "Cryostasis Technology" description = "Smart freezing of objects to preserve them!" prereq_ids = list("adv_engi", "biotech") - design_ids = list("splitbeaker", "noreactsyringe", "cryotube", "cryo_Grenade") + design_ids = list("splitbeaker", "noreactsyringe", "cryotube", "cryo_Grenade", "stasis") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2000) export_price = 4000 @@ -471,7 +471,7 @@ display_name = "Cybernetic Implants" description = "Electronic implants that improve humans." prereq_ids = list("adv_biotech", "datatheory") - design_ids = list("ci-nutriment", "ci-breather", "ci-gloweyes", "ci-welding", "ci-medhud", "ci-sechud") + design_ids = list("ci-nutriment", "ci-breather", "ci-gloweyes", "ci-welding", "ci-medhud", "ci-sechud", "ci-diaghud") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 @@ -562,7 +562,7 @@ /datum/techweb_node/weaponry id = "weaponry" display_name = "Weapon Development Technology" - description = "Our researchers have found new to weaponize just about everything now." + description = "Our researchers have found new ways to weaponize just about everything now." prereq_ids = list("engineering") design_ids = list("pin_testing", "tele_shield") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 10000) @@ -582,7 +582,7 @@ display_name = "Electric Weapons" description = "Weapons using electric technology" prereq_ids = list("weaponry", "adv_power" , "emp_basic") - design_ids = list("stunrevolver", "stunshell", "ioncarbine") + design_ids = list("stunrevolver", "ioncarbine") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 @@ -789,6 +789,15 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 +/datum/techweb_node/mech_disabler + id = "mech_disabler" + display_name = "Exosuit Weapon (CH-DS \"Peacemaker\" Mounted Disabler)" + description = "A basic piece of mech weaponry" + prereq_ids = list("beam_weapons") + design_ids = list("mech_disabler") + research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) + export_price = 5000 + /datum/techweb_node/mech_grenade_launcher id = "mech_grenade_launcher" display_name = "Exosuit Weapon (SGL-6 Grenade Launcher)" @@ -834,15 +843,6 @@ research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) export_price = 5000 -/datum/techweb_node/mech_taser - id = "mech_taser" - display_name = "Exosuit Weapon (PBT \"Pacifier\" Mounted Taser)" - description = "A basic piece of mech weaponry" - prereq_ids = list("electronic_weapons") - design_ids = list("mech_taser") - research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) - export_price = 5000 - /datum/techweb_node/mech_lmg id = "mech_lmg" display_name = "Exosuit Weapon (\"Ultra AC 2\" LMG)" @@ -867,7 +867,7 @@ display_name = "Basic Nanite Programming" description = "The basics of nanite construction and programming." prereq_ids = list("datatheory","robotics") - design_ids = list("nanite_disk","nanite_remote","nanite_scanner",\ + design_ids = list("nanite_disk","nanite_remote","nanite_comm_remote","nanite_scanner",\ "nanite_chamber","public_nanite_chamber","nanite_chamber_control","nanite_programmer","nanite_program_hub","nanite_cloud_control",\ "relay_nanites", "monitoring_nanites", "access_nanites", "repairing_nanites","sensor_nanite_volume", "repeater_nanites", "relay_repeater_nanites") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500) diff --git a/code/modules/research/xenobiology/crossbreeding/__corecross.dm b/code/modules/research/xenobiology/crossbreeding/__corecross.dm index 72aaa36e4b7..6d4cfa8f0be 100644 --- a/code/modules/research/xenobiology/crossbreeding/__corecross.dm +++ b/code/modules/research/xenobiology/crossbreeding/__corecross.dm @@ -2,7 +2,7 @@ ////////// SLIME CROSSBREEDS ////////// ////////////////////////////////////////////// // A system of combining two extract types. // -// Performed by feeding a slime 20 of an // +// Performed by feeding a slime 10 of an // // extract color. // ////////////////////////////////////////////// /*==========================================*\ @@ -31,12 +31,18 @@ To add a crossbreed: icon_state = "base" var/colour = "null" var/effect = "null" + var/effect_desc = "null" force = 0 w_class = WEIGHT_CLASS_TINY throwforce = 0 throw_speed = 3 throw_range = 6 +/obj/item/slimecross/examine(mob/user) + ..() + if(effect_desc) + to_chat(user, "[effect_desc]") + /obj/item/slimecross/Initialize() . = ..() name = effect + " " + colour + " extract" diff --git a/code/modules/research/xenobiology/crossbreeding/_clothing.dm b/code/modules/research/xenobiology/crossbreeding/_clothing.dm index fc96bdeba59..29e2588b68c 100644 --- a/code/modules/research/xenobiology/crossbreeding/_clothing.dm +++ b/code/modules/research/xenobiology/crossbreeding/_clothing.dm @@ -20,14 +20,14 @@ Slimecrossing Armor /obj/item/clothing/mask/nobreath/equipped(mob/living/carbon/human/user, slot) . = ..() if(slot == SLOT_WEAR_MASK) - user.add_trait(TRAIT_NOBREATH, "breathmask_[REF(src)]") + ADD_TRAIT(user, TRAIT_NOBREATH, "breathmask_[REF(src)]") user.failed_last_breath = FALSE user.clear_alert("not_enough_oxy") user.apply_status_effect(/datum/status_effect/rebreathing) /obj/item/clothing/mask/nobreath/dropped(mob/living/carbon/human/user) ..() - user.remove_trait(TRAIT_NOBREATH, "breathmask_[REF(src)]") + REMOVE_TRAIT(user, TRAIT_NOBREATH, "breathmask_[REF(src)]") user.remove_status_effect(/datum/status_effect/rebreathing) /obj/item/clothing/glasses/prism_glasses @@ -112,11 +112,11 @@ Slimecrossing Armor /obj/item/clothing/head/peaceflower/equipped(mob/living/carbon/human/user, slot) . = ..() if(slot == SLOT_HEAD) - user.add_trait(TRAIT_PACIFISM, "peaceflower_[REF(src)]") + ADD_TRAIT(user, TRAIT_PACIFISM, "peaceflower_[REF(src)]") /obj/item/clothing/head/peaceflower/dropped(mob/living/carbon/human/user) ..() - user.remove_trait(TRAIT_PACIFISM, "peaceflower_[REF(src)]") + REMOVE_TRAIT(user, TRAIT_PACIFISM, "peaceflower_[REF(src)]") /obj/item/clothing/head/peaceflower/attack_hand(mob/user) if(iscarbon(user)) diff --git a/code/modules/research/xenobiology/crossbreeding/_misc.dm b/code/modules/research/xenobiology/crossbreeding/_misc.dm index 32b72be9f6d..eb055cbf669 100644 --- a/code/modules/research/xenobiology/crossbreeding/_misc.dm +++ b/code/modules/research/xenobiology/crossbreeding/_misc.dm @@ -4,27 +4,168 @@ Slimecrossing Items Collected here for clarity. */ -//Timefreeze camera - Burning Sepia +#define DEJAVU_REWIND_INTERVAL (10 SECONDS) + +//Rewind camera - I'm already Burning Sepia +/obj/item/camera/rewind + name = "sepia-tinted camera" + desc = "They say a picture is like a moment stopped in time." + pictures_left = 1 + pictures_max = 1 + can_customise = FALSE + default_picture_name = "A nostalgic picture" + var/used = FALSE + +/datum/saved_bodypart + var/obj/item/bodypart/old_part + var/bodypart_type + var/brute_dam + var/burn_dam + var/stamina_dam + +/datum/saved_bodypart/New(obj/item/bodypart/part) + old_part = part + bodypart_type = part.type + brute_dam = part.brute_dam + burn_dam = part.burn_dam + stamina_dam = part.stamina_dam + +/mob/living/carbon/proc/apply_saved_bodyparts(list/datum/saved_bodypart/parts) + var/list/dont_chop = list() + for(var/zone in parts) + var/datum/saved_bodypart/saved_part = parts[zone] + var/obj/item/bodypart/already = get_bodypart(zone) + if(QDELETED(saved_part.old_part)) + saved_part.old_part = new saved_part.bodypart_type + if(!already || already != saved_part.old_part) + saved_part.old_part.replace_limb(src, TRUE) + saved_part.old_part.heal_damage(INFINITY, INFINITY, INFINITY, null, FALSE) + saved_part.old_part.receive_damage(saved_part.brute_dam, saved_part.burn_dam, saved_part.stamina_dam) + dont_chop[zone] = TRUE + for(var/_part in bodyparts) + var/obj/item/bodypart/part = _part + if(dont_chop[part.body_zone]) + continue + part.drop_limb(TRUE) + +/mob/living/carbon/proc/save_bodyparts() + var/list/datum/saved_bodypart/ret = list() + for(var/_part in bodyparts) + var/obj/item/bodypart/part = _part + var/datum/saved_bodypart/saved_part = new(part) + + ret[part.body_zone] = saved_part + return ret + + + +/datum/component/dejavu + var/integrity //for objects + var/brute_loss //for simple animals + var/list/datum/saved_bodypart/saved_bodyparts //maps bodypart slots to health + var/clone_loss = 0 + var/tox_loss = 0 + var/oxy_loss = 0 + var/brain_loss = 0 + var/x + var/y + var/z + var/rewinds_remaining + +/datum/component/dejavu/Initialize(rewinds = 1) + rewinds_remaining = rewinds + var/turf/T = get_turf(parent) + if(T) + x = T.x + y = T.y + z = T.z + if(isliving(parent)) + var/mob/living/L = parent + clone_loss = L.getCloneLoss() + tox_loss = L.getToxLoss() + oxy_loss = L.getOxyLoss() + brain_loss = L.getBrainLoss() + if(iscarbon(parent)) + var/mob/living/carbon/C = parent + saved_bodyparts = C.save_bodyparts() + else if(isanimal(parent)) + var/mob/living/simple_animal/M = parent + brute_loss = M.bruteloss + else if(isobj(parent)) + var/obj/O = parent + integrity = O.obj_integrity + addtimer(CALLBACK(src, .proc/rewind), DEJAVU_REWIND_INTERVAL) + +/datum/component/dejavu/proc/rewind() + to_chat(parent, "You remember a time not so long ago...") + + if(isliving(parent)) + var/mob/living/L = parent + L.setCloneLoss(clone_loss) + L.setToxLoss(tox_loss) + L.setOxyLoss(oxy_loss) + L.setBrainLoss(brain_loss) + + if(iscarbon(parent)) + if(saved_bodyparts) + var/mob/living/carbon/C = parent + C.apply_saved_bodyparts(saved_bodyparts) + else if(isanimal(parent)) + var/mob/living/simple_animal/M = parent + M.bruteloss = brute_loss + M.updatehealth() + else if(isobj(parent)) + var/obj/O = parent + O.obj_integrity = integrity + + //comes after healing so new limbs comically drop to the floor + if(!isnull(x) && istype(parent, /atom/movable)) + var/atom/movable/AM = parent + var/turf/T = locate(x,y,z) + AM.forceMove(T) + + rewinds_remaining -- + if(rewinds_remaining) + addtimer(CALLBACK(src, .proc/rewind), DEJAVU_REWIND_INTERVAL) + else + to_chat(parent, "But the memory falls out of your reach.") + + + +/obj/item/camera/rewind/afterattack(atom/target, mob/user, flag) + if(!on || !pictures_left || !isturf(target.loc)) + return + if(!used)//selfie time + if(user == target) + to_chat(user, "You take a selfie!") + else + to_chat(user, "You take a photo with [target]!") + to_chat(target, "[user] takes a photo with you!") + to_chat(target, "You'll remember this moment forever!") + + used = TRUE + target.AddComponent(/datum/component/dejavu, 2) + .=..() + + + +//Timefreeze camera - Old Burning Sepia result. Kept in case admins want to spawn it /obj/item/camera/timefreeze name = "sepia-tinted camera" desc = "They say a picture is like a moment stopped in time." pictures_left = 1 pictures_max = 1 + var/used = FALSE /obj/item/camera/timefreeze/afterattack(atom/target, mob/user, flag) if(!on || !pictures_left || !isturf(target.loc)) return - new /obj/effect/timestop(get_turf(target), 2, 50, list(user)) + if(!used) //refilling the film does not refill the timestop + new /obj/effect/timestop(get_turf(target), 2, 50, list(user)) + used = TRUE + desc = "This camera has seen better days." . = ..() - var/text = "The camera fades away" - if(disk) - text += ", leaving the disk behind!" - if(!user.put_in_hands(disk)) - disk.forceMove(user.drop_location()) - else - text += "!" - to_chat(user,"[text]") - qdel(src) + //Hypercharged slime cell - Charged Yellow /obj/item/stock_parts/cell/high/slime/hypercharged @@ -92,7 +233,7 @@ Slimecrossing Items if(last_check_time + 50 < world.time) if(ishuman(M)) var/mob/living/carbon/human/H = M - if(H.mind && !H.has_trait(TRAIT_AGEUSIA)) + if(H.mind && !HAS_TRAIT(H, TRAIT_AGEUSIA)) to_chat(H,"That didn't taste very good...") //No disgust, though. It's just not good tasting. GET_COMPONENT_FROM(mood, /datum/component/mood, H) if(mood) diff --git a/code/modules/research/xenobiology/crossbreeding/_potions.dm b/code/modules/research/xenobiology/crossbreeding/_potions.dm index e7dc947955f..a696d24bde5 100644 --- a/code/modules/research/xenobiology/crossbreeding/_potions.dm +++ b/code/modules/research/xenobiology/crossbreeding/_potions.dm @@ -43,6 +43,9 @@ Slimecrossing Potions if(!isliving(M) || M.stat == DEAD) to_chat(user, "The pacification potion only works on the living.") return ..() + if(istype(M, /mob/living/simple_animal/hostile/megafauna)) + to_chat(user, "The pacification potion does not work on beings of pure evil!") + return ..() if(M != user) M.visible_message("[user] starts to feed [M] a pacification potion!", "[user] starts to feed you a pacification!") @@ -57,7 +60,7 @@ Slimecrossing Potions else to_chat(user, "You drink the pacification potion!") if(isanimal(M)) - M.add_trait(TRAIT_PACIFISM, MAGIC_TRAIT) + ADD_TRAIT(M, TRAIT_PACIFISM, MAGIC_TRAIT) else if(iscarbon(M)) var/mob/living/carbon/C = M C.gain_trauma(/datum/brain_trauma/severe/pacifism, TRAUMA_RESILIENCE_SURGERY) @@ -74,6 +77,9 @@ Slimecrossing Potions if(!isliving(M) || M.stat == DEAD) to_chat(user, "The love potion only works on living things, sicko!") return ..() + if(istype(M, /mob/living/simple_animal/hostile/megafauna)) + to_chat(user, "The love potion does not work on beings of pure evil!") + return ..() if(user == M) to_chat(user, "You can't drink the love potion. What are you, a narcissist?") return ..() diff --git a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm index c44b6c881e2..f635b7ac95f 100644 --- a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm +++ b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm @@ -11,7 +11,7 @@ /datum/status_effect/rainbow_protection/on_apply() owner.status_flags |= GODMODE - owner.add_trait(TRAIT_PACIFISM, "slimestatus") + ADD_TRAIT(owner, TRAIT_PACIFISM, /datum/status_effect/rainbow_protection) owner.visible_message("[owner] shines with a brilliant rainbow light.", "You feel protected by an unknown force!") originalcolor = owner.color @@ -24,7 +24,7 @@ /datum/status_effect/rainbow_protection/on_remove() owner.status_flags &= ~GODMODE owner.color = originalcolor - owner.remove_trait(TRAIT_PACIFISM, "slimestatus") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, /datum/status_effect/rainbow_protection) owner.visible_message("[owner] stops glowing, the rainbow light fading away.", "You no longer feel protected...") @@ -246,12 +246,12 @@ datum/status_effect/rebreathing/tick() duration = 100 /datum/status_effect/firecookie/on_apply() - owner.add_trait(TRAIT_RESISTCOLD,"firecookie") + ADD_TRAIT(owner, TRAIT_RESISTCOLD,"firecookie") owner.adjust_bodytemperature(110) return ..() /datum/status_effect/firecookie/on_remove() - owner.remove_trait(TRAIT_RESISTCOLD,"firecookie") + REMOVE_TRAIT(owner, TRAIT_RESISTCOLD,"firecookie") /datum/status_effect/watercookie id = "watercookie" @@ -260,7 +260,7 @@ datum/status_effect/rebreathing/tick() duration = 100 /datum/status_effect/watercookie/on_apply() - owner.add_trait(TRAIT_NOSLIPWATER,"watercookie") + ADD_TRAIT(owner, TRAIT_NOSLIPWATER,"watercookie") return ..() /datum/status_effect/watercookie/tick() @@ -268,7 +268,7 @@ datum/status_effect/rebreathing/tick() T.MakeSlippery(TURF_WET_WATER, min_wet_time = 10, wet_time_to_add = 5) /datum/status_effect/watercookie/on_remove() - owner.remove_trait(TRAIT_NOSLIPWATER,"watercookie") + REMOVE_TRAIT(owner, TRAIT_NOSLIPWATER,"watercookie") /datum/status_effect/metalcookie id = "metalcookie" @@ -313,11 +313,11 @@ datum/status_effect/rebreathing/tick() duration = 600 /datum/status_effect/toxincookie/on_apply() - owner.add_trait(TRAIT_TOXINLOVER,"toxincookie") + ADD_TRAIT(owner, TRAIT_TOXINLOVER,"toxincookie") return ..() /datum/status_effect/toxincookie/on_remove() - owner.remove_trait(TRAIT_TOXINLOVER,"toxincookie") + REMOVE_TRAIT(owner, TRAIT_TOXINLOVER,"toxincookie") /datum/status_effect/timecookie id = "timecookie" @@ -413,11 +413,11 @@ datum/status_effect/rebreathing/tick() duration = 30 /datum/status_effect/plur/on_apply() - owner.add_trait(TRAIT_PACIFISM, "peacecookie") + ADD_TRAIT(owner, TRAIT_PACIFISM, "peacecookie") return ..() /datum/status_effect/plur/on_remove() - owner.remove_trait(TRAIT_PACIFISM, "peacecookie") + REMOVE_TRAIT(owner, TRAIT_PACIFISM, "peacecookie") /datum/status_effect/adamantinecookie id = "adamantinecookie" @@ -511,11 +511,11 @@ datum/status_effect/rebreathing/tick() colour = "blue" /datum/status_effect/stabilized/blue/on_apply() - owner.add_trait(TRAIT_NOSLIPWATER, "slimestatus") + ADD_TRAIT(owner, TRAIT_NOSLIPWATER, "slimestatus") return ..() datum/status_effect/stabilized/blue/on_remove() - owner.remove_trait(TRAIT_NOSLIPWATER, "slimestatus") + REMOVE_TRAIT(owner, TRAIT_NOSLIPWATER, "slimestatus") /datum/status_effect/stabilized/metal id = "stabilizedmetal" @@ -576,7 +576,7 @@ datum/status_effect/stabilized/blue/on_remove() examine_text = "Their fingertips burn brightly!" /datum/status_effect/stabilized/darkpurple/on_apply() - owner.add_trait(TRAIT_RESISTHEATHANDS, "slimestatus") + ADD_TRAIT(owner, TRAIT_RESISTHEATHANDS, "slimestatus") fire = new(owner) return ..() @@ -594,7 +594,7 @@ datum/status_effect/stabilized/blue/on_remove() return ..() /datum/status_effect/stabilized/darkpurple/on_remove() - owner.remove_trait(TRAIT_RESISTHEATHANDS, "slimestatus") + REMOVE_TRAIT(owner, TRAIT_RESISTHEATHANDS, "slimestatus") qdel(fire) /datum/status_effect/stabilized/darkblue @@ -693,11 +693,11 @@ datum/status_effect/stabilized/blue/on_remove() /datum/status_effect/stabilized/sepia/tick() if(prob(50) && mod > -1) mod-- - owner.add_movespeed_modifier(MOVESPEED_ID_SEPIA, update=TRUE, priority=100, multiplicative_slowdown=-1, blacklisted_movetypes=(FLYING|FLOATING)) + owner.add_movespeed_modifier(MOVESPEED_ID_SEPIA, override = TRUE, update=TRUE, priority=100, multiplicative_slowdown=-1, blacklisted_movetypes=(FLYING|FLOATING)) else if(mod < 1) mod++ // yeah a value of 0 does nothing but replacing the trait in place is cheaper than removing and adding repeatedly - owner.add_movespeed_modifier(MOVESPEED_ID_SEPIA, update=TRUE, priority=100, multiplicative_slowdown=0, blacklisted_movetypes=(FLYING|FLOATING)) + owner.add_movespeed_modifier(MOVESPEED_ID_SEPIA, override = TRUE, update=TRUE, priority=100, multiplicative_slowdown=0, blacklisted_movetypes=(FLYING|FLOATING)) return ..() /datum/status_effect/stabilized/sepia/on_remove() diff --git a/code/modules/research/xenobiology/crossbreeding/_weapons.dm b/code/modules/research/xenobiology/crossbreeding/_weapons.dm index 31f59b5bd5f..5027c6d061a 100644 --- a/code/modules/research/xenobiology/crossbreeding/_weapons.dm +++ b/code/modules/research/xenobiology/crossbreeding/_weapons.dm @@ -84,7 +84,7 @@ Slimecrossing Weapons /obj/item/gun/magic/bloodchill/Initialize() . = ..() - add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) /obj/item/gun/magic/bloodchill/process() charge_tick++ @@ -107,7 +107,7 @@ Slimecrossing Weapons icon_state = "pulse0_bl" damage = 0 damage_type = OXY - nodamage = 1 + nodamage = TRUE hitsound = 'sound/effects/splat.ogg' /obj/item/projectile/magic/bloodchill/on_hit(mob/living/target) diff --git a/code/modules/research/xenobiology/crossbreeding/burning.dm b/code/modules/research/xenobiology/crossbreeding/burning.dm index 963c803c689..4bd802b3d9f 100644 --- a/code/modules/research/xenobiology/crossbreeding/burning.dm +++ b/code/modules/research/xenobiology/crossbreeding/burning.dm @@ -29,6 +29,7 @@ Burning extracts: /obj/item/slimecross/burning/grey colour = "grey" + effect_desc = "Creates a hungry and speedy slime that will love you forever." /obj/item/slimecross/burning/grey/do_effect(mob/user) var/mob/living/simple_animal/slime/S = new(get_turf(user),"grey") @@ -40,6 +41,7 @@ Burning extracts: /obj/item/slimecross/burning/orange colour = "orange" + effect_desc = "Expels pepperspray in a radius when activated." /obj/item/slimecross/burning/orange/do_effect(mob/user) user.visible_message("[src] boils over with a caustic gas!") @@ -53,6 +55,7 @@ Burning extracts: /obj/item/slimecross/burning/purple colour = "purple" + effect_desc = "Creates a clump of invigorating gel, it has healing properties and makes you feel good." /obj/item/slimecross/burning/purple/do_effect(mob/user) user.visible_message("[src] fills with a bubbling liquid!") @@ -61,6 +64,7 @@ Burning extracts: /obj/item/slimecross/burning/blue colour = "blue" + effect_desc = "Freezes the floor around you and chills nearby people." /obj/item/slimecross/burning/blue/do_effect(mob/user) user.visible_message("[src] flash-freezes the area!") @@ -74,6 +78,7 @@ Burning extracts: /obj/item/slimecross/burning/metal colour = "metal" + effect_desc = "Instantly destroys walls around you." /obj/item/slimecross/burning/metal/do_effect(mob/user) for(var/turf/closed/wall/W in range(1,get_turf(user))) @@ -84,6 +89,7 @@ Burning extracts: /obj/item/slimecross/burning/yellow colour = "yellow" + effect_desc = "Electrocutes people near you." /obj/item/slimecross/burning/yellow/do_effect(mob/user) user.visible_message("[src] explodes into an electrical field!") @@ -100,6 +106,7 @@ Burning extracts: /obj/item/slimecross/burning/darkpurple colour = "dark purple" + effect_desc = "Creates a cloud of plasma." /obj/item/slimecross/burning/darkpurple/do_effect(mob/user) user.visible_message("[src] sublimates into a cloud of plasma!") @@ -109,6 +116,7 @@ Burning extracts: /obj/item/slimecross/burning/darkblue colour = "dark blue" + effect_desc = "Expels a burst of chilling smoke while also filling you with cryoxadone." /obj/item/slimecross/burning/darkblue/do_effect(mob/user) user.visible_message("[src] releases a burst of chilling smoke!") @@ -122,6 +130,7 @@ Burning extracts: /obj/item/slimecross/burning/silver colour = "silver" + effect_desc = "Creates a few pieces of slime jelly laced food." /obj/item/slimecross/burning/silver/do_effect(mob/user) var/amount = rand(3,6) @@ -139,6 +148,7 @@ Burning extracts: /obj/item/slimecross/burning/bluespace colour = "bluespace" + effect_desc = "Teleports anyone directly next to you." /obj/item/slimecross/burning/bluespace/do_effect(mob/user) user.visible_message("[src] sparks, and lets off a shockwave of bluespace energy!") @@ -151,14 +161,16 @@ Burning extracts: /obj/item/slimecross/burning/sepia colour = "sepia" + effect_desc = "Turns into a special camera that rewinds time when used." /obj/item/slimecross/burning/sepia/do_effect(mob/user) user.visible_message("[src] shapes itself into a camera!") - new /obj/item/camera/timefreeze(get_turf(user)) + new /obj/item/camera/rewind(get_turf(user)) ..() /obj/item/slimecross/burning/cerulean colour = "cerulean" + effect_desc = "Produces an extract cloning potion, which copies an extract, as well as its extra uses." /obj/item/slimecross/burning/cerulean/do_effect(mob/user) user.visible_message("[src] produces a potion!") @@ -167,6 +179,7 @@ Burning extracts: /obj/item/slimecross/burning/pyrite colour = "pyrite" + effect_desc = "Shatters all lights in the current room." /obj/item/slimecross/burning/pyrite/do_effect(mob/user) user.visible_message("[src] releases a colorful wave of energy, which shatters the lights!") @@ -180,6 +193,7 @@ Burning extracts: /obj/item/slimecross/burning/red colour = "red" + effect_desc = "Makes nearby slimes rabid, and they'll also attack their friends." /obj/item/slimecross/burning/red/do_effect(mob/user) user.visible_message("[src] pulses a hazy red aura for a moment, which wraps around [user]!") @@ -196,6 +210,7 @@ Burning extracts: /obj/item/slimecross/burning/green colour = "green" + effect_desc = "The user gets a dull arm blade in the hand it is used in." /obj/item/slimecross/burning/green/do_effect(mob/user) var/which_hand = "l_hand" @@ -218,6 +233,7 @@ Burning extracts: /obj/item/slimecross/burning/pink colour = "pink" + effect_desc = "Creates a beaker of synthpax." /obj/item/slimecross/burning/pink/do_effect(mob/user) user.visible_message("[src] shrinks into a small, gel-filled pellet!") @@ -226,6 +242,7 @@ Burning extracts: /obj/item/slimecross/burning/gold colour = "gold" + effect_desc = "Creates a gank squad of monsters that are friendly to the user." /obj/item/slimecross/burning/gold/do_effect(mob/user) user.visible_message("[src] shudders violently, and summons an army for [user]!") @@ -239,6 +256,7 @@ Burning extracts: /obj/item/slimecross/burning/oil colour = "oil" + effect_desc = "Creates an explosion after a few seconds." /obj/item/slimecross/burning/oil/do_effect(mob/user) user.visible_message("[src] begins to shake with rapidly increasing force!") @@ -250,6 +268,7 @@ Burning extracts: /obj/item/slimecross/burning/black colour = "black" + effect_desc = "Transforms the user into a slime. They can transform back at will and do not lose any items." /obj/item/slimecross/burning/black/do_effect(mob/user) var/mob/living/L = user @@ -264,6 +283,7 @@ Burning extracts: /obj/item/slimecross/burning/lightpink colour = "light pink" + effect_desc = "Paxes everyone in sight." /obj/item/slimecross/burning/lightpink/do_effect(mob/user) user.visible_message("[src] lets off a hypnotizing pink glow!") @@ -273,6 +293,7 @@ Burning extracts: /obj/item/slimecross/burning/adamantine colour = "adamantine" + effect_desc = "Creates a mighty adamantine shield." /obj/item/slimecross/burning/adamantine/do_effect(mob/user) user.visible_message("[src] crystallizes into a large shield!") @@ -281,6 +302,7 @@ Burning extracts: /obj/item/slimecross/burning/rainbow colour = "rainbow" + effect_desc = "Creates the Rainbow Knife, a kitchen knife that deals random types of damage." /obj/item/slimecross/burning/rainbow/do_effect(mob/user) user.visible_message("[src] flattens into a glowing rainbow blade.") diff --git a/code/modules/research/xenobiology/crossbreeding/charged.dm b/code/modules/research/xenobiology/crossbreeding/charged.dm index bfdab8b6db2..a2030bebac0 100644 --- a/code/modules/research/xenobiology/crossbreeding/charged.dm +++ b/code/modules/research/xenobiology/crossbreeding/charged.dm @@ -30,6 +30,7 @@ Charged extracts: /obj/item/slimecross/charged/grey colour = "grey" + effect_desc = "Produces a slime reviver potion, which revives dead slimes." /obj/item/slimecross/charged/grey/do_effect(mob/user) new /obj/item/slimepotion/slime_reviver(get_turf(user)) @@ -38,6 +39,7 @@ Charged extracts: /obj/item/slimecross/charged/orange colour = "orange" + effect_desc = "Instantly makes a large burst of flame for a moment." /obj/item/slimecross/charged/orange/do_effect(mob/user) for(var/turf/turf in range(5,get_turf(user))) @@ -47,6 +49,7 @@ Charged extracts: /obj/item/slimecross/charged/purple colour = "purple" + effect_desc = "Creates a packet of omnizine." /obj/item/slimecross/charged/purple/do_effect(mob/user) new /obj/item/slimecrossbeaker/omnizine(get_turf(user)) @@ -55,6 +58,7 @@ Charged extracts: /obj/item/slimecross/charged/blue colour = "blue" + effect_desc = "Creates a potion that neuters the mutation chance of a slime, which passes on to new generations." /obj/item/slimecross/charged/blue/do_effect(mob/user) new /obj/item/slimepotion/slime/chargedstabilizer(get_turf(user)) @@ -63,6 +67,7 @@ Charged extracts: /obj/item/slimecross/charged/metal colour = "metal" + effect_desc = "Produces a bunch of metal and plasteel." /obj/item/slimecross/charged/metal/do_effect(mob/user) new /obj/item/stack/sheet/metal(get_turf(user), 25) @@ -72,6 +77,7 @@ Charged extracts: /obj/item/slimecross/charged/yellow colour = "yellow" + effect_desc = "Creates a hypercharged slime cell battery, which has high capacity and recharges constantly at a very fast rate." /obj/item/slimecross/charged/yellow/do_effect(mob/user) new /obj/item/stock_parts/cell/high/slime/hypercharged(get_turf(user)) @@ -80,6 +86,7 @@ Charged extracts: /obj/item/slimecross/charged/darkpurple colour = "dark purple" + effect_desc = "Creates several sheets of plasma." /obj/item/slimecross/charged/darkpurple/do_effect(mob/user) new /obj/item/stack/sheet/mineral/plasma(get_turf(user), 10) @@ -88,6 +95,7 @@ Charged extracts: /obj/item/slimecross/charged/darkblue colour = "dark blue" + effect_desc = "Produces a pressure proofing potion." /obj/item/slimecross/charged/darkblue/do_effect(mob/user) new /obj/item/slimepotion/spaceproof(get_turf(user)) @@ -96,6 +104,7 @@ Charged extracts: /obj/item/slimecross/charged/silver colour = "silver" + effect_desc = "Creates a slime cake and some drinks." /obj/item/slimecross/charged/silver/do_effect(mob/user) new /obj/item/reagent_containers/food/snacks/store/cake/slimecake(get_turf(user)) @@ -107,6 +116,7 @@ Charged extracts: /obj/item/slimecross/charged/bluespace colour = "bluespace" + effect_desc = "Makes a bluespace polycrystal." /obj/item/slimecross/charged/bluespace/do_effect(mob/user) new /obj/item/stack/sheet/bluespace_crystal(get_turf(user), 10) @@ -115,6 +125,7 @@ Charged extracts: /obj/item/slimecross/charged/sepia colour = "sepia" + effect_desc = "Creates a camera obscura." /obj/item/slimecross/charged/sepia/do_effect(mob/user) new /obj/item/camera/spooky(get_turf(user)) @@ -123,6 +134,7 @@ Charged extracts: /obj/item/slimecross/charged/cerulean colour = "cerulean" + effect_desc = "Creates an extract enhancer, giving whatever it's used on five more uses." /obj/item/slimecross/charged/cerulean/do_effect(mob/user) new /obj/item/slimepotion/enhancer/max(get_turf(user)) @@ -131,6 +143,7 @@ Charged extracts: /obj/item/slimecross/charged/pyrite colour = "pyrite" + effect_desc = "Creates bananium. Oh no." /obj/item/slimecross/charged/pyrite/do_effect(mob/user) new /obj/item/stack/sheet/mineral/bananium(get_turf(user), 10) @@ -139,6 +152,7 @@ Charged extracts: /obj/item/slimecross/charged/red colour = "red" + effect_desc = "Produces a lavaproofing potion" /obj/item/slimecross/charged/red/do_effect(mob/user) new /obj/item/slimepotion/lavaproof(get_turf(user)) @@ -147,6 +161,7 @@ Charged extracts: /obj/item/slimecross/charged/green colour = "green" + effect_desc = "Lets you choose what slime species you want to be." /obj/item/slimecross/charged/green/do_effect(mob/user) var/mob/living/carbon/human/H = user @@ -165,6 +180,7 @@ Charged extracts: /obj/item/slimecross/charged/pink colour = "pink" + effect_desc = "Produces a... lovepotion... no ERP." /obj/item/slimecross/charged/pink/do_effect(mob/user) new /obj/item/slimepotion/lovepotion(get_turf(user)) @@ -173,6 +189,7 @@ Charged extracts: /obj/item/slimecross/charged/gold colour = "gold" + effect_desc = "Slowly spawns 10 hostile monsters." var/max_spawn = 10 var/spawned = 0 @@ -199,6 +216,7 @@ Charged extracts: /obj/item/slimecross/charged/oil colour = "oil" + effect_desc = "Creates an explosion after a few seconds." /obj/item/slimecross/charged/oil/do_effect(mob/user) user.visible_message("[src] begins to shake with rapidly increasing force!") @@ -210,6 +228,7 @@ Charged extracts: /obj/item/slimecross/charged/black colour = "black" + effect_desc = "Randomizes the user's species." /obj/item/slimecross/charged/black/do_effect(mob/user) var/mob/living/carbon/human/H = user @@ -230,6 +249,7 @@ Charged extracts: /obj/item/slimecross/charged/lightpink colour = "light pink" + effect_desc = "Produces a pacification potion, which works on monsters and humanoids." /obj/item/slimecross/charged/lightpink/do_effect(mob/user) new /obj/item/slimepotion/peacepotion(get_turf(user)) @@ -238,6 +258,7 @@ Charged extracts: /obj/item/slimecross/charged/adamantine colour = "adamantine" + effect_desc = "Creates a completed golem shell." /obj/item/slimecross/charged/adamantine/do_effect(mob/user) user.visible_message("[src] produces a fully formed golem shell!") @@ -246,6 +267,7 @@ Charged extracts: /obj/item/slimecross/charged/rainbow colour = "rainbow" + effect_desc = "Produces three living slimes of random colors." /obj/item/slimecross/charged/rainbow/do_effect(mob/user) user.visible_message("[src] swells and splits into three new slimes!") diff --git a/code/modules/research/xenobiology/crossbreeding/chilling.dm b/code/modules/research/xenobiology/crossbreeding/chilling.dm index f09cc7b9e0a..7d33b72145e 100644 --- a/code/modules/research/xenobiology/crossbreeding/chilling.dm +++ b/code/modules/research/xenobiology/crossbreeding/chilling.dm @@ -29,6 +29,7 @@ Chilling extracts: /obj/item/slimecross/chilling/grey colour = "grey" + effect_desc = "Creates some slime barrier cubes. When used they create slimy barricades." /obj/item/slimecross/chilling/grey/do_effect(mob/user) user.visible_message("[src] produces a few small, grey cubes") @@ -38,6 +39,7 @@ Chilling extracts: /obj/item/slimecross/chilling/orange colour = "orange" + effect_desc = "Creates a ring of fire one tile away from the user." /obj/item/slimecross/chilling/orange/do_effect(mob/user) user.visible_message("[src] shatters, and lets out a jet of heat!") @@ -48,6 +50,7 @@ Chilling extracts: /obj/item/slimecross/chilling/purple colour = "purple" + effect_desc = "Injects everyone in the area with some regenerative jelly." /obj/item/slimecross/chilling/purple/do_effect(mob/user) var/area/A = get_area(get_turf(user)) @@ -61,6 +64,7 @@ Chilling extracts: /obj/item/slimecross/chilling/blue colour = "blue" + effect_desc = "Creates a rebreather, a tankless mask." /obj/item/slimecross/chilling/blue/do_effect(mob/user) user.visible_message("[src] cracks, and spills out a liquid goo, which reforms into a mask!") @@ -69,6 +73,7 @@ Chilling extracts: /obj/item/slimecross/chilling/metal colour = "metal" + effect_desc = "Temporarily surrounds the user with unbreakable walls." /obj/item/slimecross/chilling/metal/do_effect(mob/user) user.visible_message("[src] melts like quicksilver, and surrounds [user] in a wall!") @@ -79,6 +84,7 @@ Chilling extracts: /obj/item/slimecross/chilling/yellow colour = "yellow" + effect_desc = "Recharges the room's APC by 50%." /obj/item/slimecross/chilling/yellow/do_effect(mob/user) var/area/A = get_area(get_turf(user)) @@ -90,6 +96,7 @@ Chilling extracts: /obj/item/slimecross/chilling/darkpurple colour = "dark purple" + effect_desc = "Removes all plasma gas in the area." /obj/item/slimecross/chilling/darkpurple/do_effect(mob/user) var/area/A = get_area(get_turf(user)) @@ -113,6 +120,7 @@ Chilling extracts: /obj/item/slimecross/chilling/darkblue colour = "dark blue" + effect_desc = "Seals the user in a protective block of ice." /obj/item/slimecross/chilling/darkblue/do_effect(mob/user) if(isliving(user)) @@ -123,6 +131,7 @@ Chilling extracts: /obj/item/slimecross/chilling/silver colour = "silver" + effect_desc = "Creates several ration packs." /obj/item/slimecross/chilling/silver/do_effect(mob/user) user.visible_message("[src] crumbles into icy powder, leaving behind several emergency food supplies!") @@ -133,6 +142,7 @@ Chilling extracts: /obj/item/slimecross/chilling/bluespace colour = "bluespace" + effect_desc = "Touching people with this extract adds them to a list, when it is activated it teleports everyone on that list to the user." var/list/allies = list() var/active = FALSE @@ -172,6 +182,7 @@ Chilling extracts: /obj/item/slimecross/chilling/sepia colour = "sepia" + effect_desc = "Touching someone with it adds/removes them from a list. Activating the extract stops time for 30 seconds, and everyone on the list is immune, except the user." var/list/allies = list() /obj/item/slimecross/chilling/sepia/afterattack(atom/target, mob/user, proximity) @@ -187,11 +198,13 @@ Chilling extracts: /obj/item/slimecross/chilling/sepia/do_effect(mob/user) user.visible_message("[src] shatters, freezing time itself!") + allies -= user //support class new /obj/effect/timestop(get_turf(user), 2, 300, allies) ..() /obj/item/slimecross/chilling/cerulean colour = "cerulean" + effect_desc = "Creates a flimsy copy of the user, that they control." /obj/item/slimecross/chilling/cerulean/do_effect(mob/user) if(isliving(user)) @@ -202,6 +215,7 @@ Chilling extracts: /obj/item/slimecross/chilling/pyrite colour = "pyrite" + effect_desc = "Creates a pair of Prism Glasses, which allow the wearer to place colored light crystals." /obj/item/slimecross/chilling/pyrite/do_effect(mob/user) user.visible_message("[src] crystallizes into a pair of spectacles!") @@ -210,6 +224,7 @@ Chilling extracts: /obj/item/slimecross/chilling/red colour = "red" + effect_desc = "Pacifies every slime in your vacinity." /obj/item/slimecross/chilling/red/do_effect(mob/user) var/slimesfound = FALSE @@ -224,6 +239,7 @@ Chilling extracts: /obj/item/slimecross/chilling/green colour = "green" + effect_desc = "Creates a bone gun in the hand it is used in, which uses blood as ammo." /obj/item/slimecross/chilling/green/do_effect(mob/user) var/which_hand = "l_hand" @@ -246,6 +262,7 @@ Chilling extracts: /obj/item/slimecross/chilling/pink colour = "pink" + effect_desc = "Creates a slime corgi puppy." /obj/item/slimecross/chilling/pink/do_effect(mob/user) user.visible_message("[src] cracks like an egg, and an adorable puppy comes tumbling out!") @@ -254,6 +271,7 @@ Chilling extracts: /obj/item/slimecross/chilling/gold colour = "gold" + effect_desc = "Produces a golden capture device" /obj/item/slimecross/chilling/gold/do_effect(mob/user) user.visible_message("[src] lets off golden light as it melts and reforms into an egg-like device!") @@ -262,6 +280,7 @@ Chilling extracts: /obj/item/slimecross/chilling/oil colour = "oil" + effect_desc = "It creates a useless flash." /obj/item/slimecross/chilling/oil/do_effect(mob/user) user.visible_message("[src] begins to shake with muted intensity!") @@ -273,6 +292,7 @@ Chilling extracts: /obj/item/slimecross/chilling/black colour = "black" + effect_desc = "Transforsms the user into a random type of golem." /obj/item/slimecross/chilling/black/do_effect(mob/user) if(ishuman(user)) @@ -283,6 +303,7 @@ Chilling extracts: /obj/item/slimecross/chilling/lightpink colour = "light pink" + effect_desc = "Creates a Heroine Bud, a special flower that pacifies whoever wears it on their head. They will not be able to take it off without help." /obj/item/slimecross/chilling/lightpink/do_effect(mob/user) user.visible_message("[src] blooms into a beautiful flower!") @@ -291,6 +312,7 @@ Chilling extracts: /obj/item/slimecross/chilling/adamantine colour = "adamantine" + effect_desc = "Solidifies into a set of adamantine armor." /obj/item/slimecross/chilling/adamantine/do_effect(mob/user) user.visible_message("[src] creaks and breaks as it shifts into a heavy set of armor!") @@ -299,6 +321,7 @@ Chilling extracts: /obj/item/slimecross/chilling/rainbow colour = "rainbow" + effect_desc = "Makes an unpassable wall in every door in the area." /obj/item/slimecross/chilling/rainbow/do_effect(mob/user) var/area/area = get_area(user) diff --git a/code/modules/research/xenobiology/crossbreeding/consuming.dm b/code/modules/research/xenobiology/crossbreeding/consuming.dm index b86a95be13f..67a11258bf8 100644 --- a/code/modules/research/xenobiology/crossbreeding/consuming.dm +++ b/code/modules/research/xenobiology/crossbreeding/consuming.dm @@ -72,7 +72,7 @@ Consuming extracts: if(fed) var/mob/living/carbon/human/H = M - if(!istype(H) || !H.has_trait(TRAIT_AGEUSIA)) + if(!istype(H) || !HAS_TRAIT(H, TRAIT_AGEUSIA)) to_chat(M, "Tastes like [taste].") playsound(get_turf(M), 'sound/items/eatfood.ogg', 20, 1) if(nutrition) @@ -84,6 +84,7 @@ Consuming extracts: /obj/item/slimecross/consuming/grey colour = "grey" + effect_desc = "Creates a slime cookie." cookietype = /obj/item/slime_cookie/grey /obj/item/slime_cookie/grey @@ -95,6 +96,7 @@ Consuming extracts: /obj/item/slimecross/consuming/orange colour = "orange" + effect_desc = "Creates a slime cookie that heats the target up and grants cold immunity for a short time." cookietype = /obj/item/slime_cookie/orange /obj/item/slime_cookie/orange @@ -108,6 +110,7 @@ Consuming extracts: /obj/item/slimecross/consuming/purple colour = "purple" + effect_desc = "Creates a slime cookie that heals the target from every type of damage." cookietype = /obj/item/slime_cookie/purple /obj/item/slime_cookie/purple @@ -126,6 +129,7 @@ Consuming extracts: /obj/item/slimecross/consuming/blue colour = "blue" + effect_desc = "Creates a slime cookie that wets the floor around you and makes you immune to water based slipping for a short time." cookietype = /obj/item/slime_cookie/blue /obj/item/slime_cookie/blue @@ -139,6 +143,7 @@ Consuming extracts: /obj/item/slimecross/consuming/metal colour = "metal" + effect_desc = "Creates a slime cookie that increases the target's resistance to brute damage." cookietype = /obj/item/slime_cookie/metal /obj/item/slime_cookie/metal @@ -152,6 +157,7 @@ Consuming extracts: /obj/item/slimecross/consuming/yellow colour = "yellow" + effect_desc = "Creates a slime cookie that makes the target immune to electricity for a short time." cookietype = /obj/item/slime_cookie/yellow /obj/item/slime_cookie/yellow @@ -165,6 +171,7 @@ Consuming extracts: /obj/item/slimecross/consuming/darkpurple colour = "dark purple" + effect_desc = "Creates a slime cookie that reverses how the target's body treats toxins." cookietype = /obj/item/slime_cookie/darkpurple /obj/item/slime_cookie/darkpurple @@ -178,6 +185,7 @@ Consuming extracts: /obj/item/slimecross/consuming/darkblue colour = "dark blue" + effect_desc = "Creates a slime cookie that chills the target and extinguishes them." cookietype = /obj/item/slime_cookie/darkblue /obj/item/slime_cookie/darkblue @@ -192,6 +200,7 @@ Consuming extracts: /obj/item/slimecross/consuming/silver colour = "silver" + effect_desc = "Creates a slime cookie that never gets the target fat." cookietype = /obj/item/slime_cookie/silver /obj/item/slime_cookie/silver @@ -206,6 +215,7 @@ Consuming extracts: /obj/item/slimecross/consuming/bluespace colour = "bluespace" + effect_desc = "Creates a slime cookie that teleports the target to a random place in the area." cookietype = /obj/item/slime_cookie/bluespace /obj/item/slime_cookie/bluespace @@ -241,6 +251,7 @@ Consuming extracts: /obj/item/slimecross/consuming/sepia colour = "sepia" + effect_desc = "Creates a slime cookie that makes the target do things slightly faster." cookietype = /obj/item/slime_cookie/sepia /obj/item/slime_cookie/sepia @@ -254,6 +265,7 @@ Consuming extracts: /obj/item/slimecross/consuming/cerulean colour = "cerulean" + effect_desc = "Creates a slime cookie that has a chance to make another once you eat it." cookietype = /obj/item/slime_cookie/cerulean cookies = 3 //You're gonna get more. @@ -271,6 +283,7 @@ Consuming extracts: /obj/item/slimecross/consuming/pyrite colour = "pyrite" + effect_desc = "Creates a slime cookie that randomly colors the target." cookietype = /obj/item/slime_cookie/pyrite /obj/item/slime_cookie/pyrite @@ -312,6 +325,7 @@ Consuming extracts: /obj/item/slimecross/consuming/red colour = "red" + effect_desc = "Creates a slime cookie that creates a spatter of blood on the floor, while also restoring some of the target's blood." cookietype = /obj/item/slime_cookie/red /obj/item/slime_cookie/red @@ -329,6 +343,7 @@ Consuming extracts: /obj/item/slimecross/consuming/green colour = "green" + effect_desc = "Creates a slime cookie that is absolutely disgusting, makes the target vomit, however all reagent in their body are also removed." cookietype = /obj/item/slime_cookie/green /obj/item/slime_cookie/green @@ -345,6 +360,7 @@ Consuming extracts: /obj/item/slimecross/consuming/pink colour = "pink" + effect_desc = "Creates a slime cookie that makes the target want to spread the love." cookietype = /obj/item/slime_cookie/pink /obj/item/slime_cookie/pink @@ -358,6 +374,7 @@ Consuming extracts: /obj/item/slimecross/consuming/gold colour = "gold" + effect_desc = "Creates a slime cookie that has a gold coin inside." cookietype = /obj/item/slime_cookie/gold /obj/item/slime_cookie/gold @@ -376,6 +393,7 @@ Consuming extracts: /obj/item/slimecross/consuming/oil colour = "oil" + effect_desc = "Creates a slime cookie that slows anyone next to the user." cookietype = /obj/item/slime_cookie/oil /obj/item/slime_cookie/oil @@ -389,6 +407,7 @@ Consuming extracts: /obj/item/slimecross/consuming/black colour = "black" + effect_desc = "Creates a slime cookie that makes the target look like a spooky skeleton for a little bit." cookietype = /obj/item/slime_cookie/black /obj/item/slime_cookie/black @@ -402,6 +421,7 @@ Consuming extracts: /obj/item/slimecross/consuming/lightpink colour = "light pink" + effect_desc = "Creates a slime cookie that makes the target, and anyone next to the target, pacifistic for a small amount of time." cookietype = /obj/item/slime_cookie/lightpink /obj/item/slime_cookie/lightpink @@ -415,6 +435,7 @@ Consuming extracts: /obj/item/slimecross/consuming/adamantine colour = "adamantine" + effect_desc = "Creates a slime cookie that increases the target's resistance to burn damage." cookietype = /obj/item/slime_cookie/adamantine /obj/item/slime_cookie/adamantine @@ -428,6 +449,7 @@ Consuming extracts: /obj/item/slimecross/consuming/rainbow colour = "rainbow" + effect_desc = "Creates a slime cookie that has the effect of a random cookie." /obj/item/slimecross/consuming/rainbow/spawncookie() var/cookie_type = pick(subtypesof(/obj/item/slime_cookie)) diff --git a/code/modules/research/xenobiology/crossbreeding/industrial.dm b/code/modules/research/xenobiology/crossbreeding/industrial.dm index 4d39d956e77..c6d0434bdab 100644 --- a/code/modules/research/xenobiology/crossbreeding/industrial.dm +++ b/code/modules/research/xenobiology/crossbreeding/industrial.dm @@ -53,31 +53,37 @@ Industrial extracts: /obj/item/slimecross/industrial/grey colour = "grey" + effect_desc = "Produces monkey cubes." itempath = /obj/item/reagent_containers/food/snacks/monkeycube itemamount = 5 /obj/item/slimecross/industrial/orange colour = "orange" + effect_desc = "Produces slime zippo lighters." plasmarequired = 6 itempath = /obj/item/lighter/slime /obj/item/slimecross/industrial/purple colour = "purple" + effect_desc = "Produces autoinjectors with regen jelly inside." plasmarequired = 5 itempath = /obj/item/slimecrossbeaker/autoinjector/regenpack /obj/item/slimecross/industrial/blue colour = "blue" + effect_desc = "Produces full fire extinguishers." plasmarequired = 10 itempath = /obj/item/extinguisher /obj/item/slimecross/industrial/metal colour = "metal" + effect_desc = "Produces metal sheets." plasmarequired = 3 itempath = /obj/item/stack/sheet/metal/ten /obj/item/slimecross/industrial/yellow colour = "yellow" + effect_desc = "Produces high capacity power cells, which are not fully charged on creation." plasmarequired = 5 itempath = /obj/item/stock_parts/cell/high @@ -88,11 +94,13 @@ Industrial extracts: /obj/item/slimecross/industrial/darkpurple colour = "dark purple" + effect_desc = "Produces plasma... for plasma." plasmarequired = 10 itempath = /obj/item/stack/sheet/mineral/plasma /obj/item/slimecross/industrial/darkblue colour = "dark blue" + effect_desc = "Produces one-use fireproofing potions." plasmarequired = 6 itempath = /obj/item/slimepotion/fireproof @@ -103,6 +111,7 @@ Industrial extracts: /obj/item/slimecross/industrial/silver colour = "silver" + effect_desc = "Produces random food and drink items." plasmarequired = 1 //Item picked below. @@ -112,41 +121,49 @@ Industrial extracts: /obj/item/slimecross/industrial/bluespace colour = "bluespace" + effect_desc = "Produces synthetic bluespace crystals." plasmarequired = 7 itempath = /obj/item/stack/ore/bluespace_crystal/artificial /obj/item/slimecross/industrial/sepia colour = "sepia" + effect_desc = "Produces cameras." plasmarequired = 2 itempath = /obj/item/camera /obj/item/slimecross/industrial/cerulean colour = "cerulean" + effect_desc = "Produces normal slime extract enhancers." plasmarequired = 5 itempath = /obj/item/slimepotion/enhancer /obj/item/slimecross/industrial/pyrite colour = "pyrite" + effect_desc = "Produces cans of spraypaint." plasmarequired = 2 itempath = /obj/item/toy/crayon/spraycan /obj/item/slimecross/industrial/red colour = "red" + effect_desc = "Produces blood orbs." plasmarequired = 5 itempath = /obj/item/slimecrossbeaker/bloodpack /obj/item/slimecross/industrial/green colour = "green" + effect_desc = "Produces self-use-only slime jelly autoinjectors." plasmarequired = 7 itempath = /obj/item/slimecrossbeaker/autoinjector/slimejelly /obj/item/slimecross/industrial/pink colour = "pink" + effect_desc = "Produces synthpax and space drug autoinjectors." plasmarequired = 6 itempath = /obj/item/slimecrossbeaker/autoinjector/peaceandlove /obj/item/slimecross/industrial/gold colour = "gold" + effect_desc = "Produces random coins." plasmarequired = 10 /obj/item/slimecross/industrial/gold/process() @@ -155,26 +172,31 @@ Industrial extracts: /obj/item/slimecross/industrial/oil colour = "oil" + effect_desc = "Produces IEDs." plasmarequired = 4 itempath = /obj/item/grenade/iedcasing /obj/item/slimecross/industrial/black //What does this have to do with black slimes? No clue! Fun, though colour = "black" + effect_desc = "Produces slime brand regenerative cigarettes." plasmarequired = 6 itempath = /obj/item/storage/fancy/cigarettes/cigpack_xeno /obj/item/slimecross/industrial/lightpink colour = "light pink" + effect_desc = "Produces heart shaped boxes that have candies in them." plasmarequired = 3 itempath = /obj/item/storage/fancy/heart_box /obj/item/slimecross/industrial/adamantine colour = "adamantine" + effect_desc = "Produces sheets of adamantine." plasmarequired = 10 itempath = /obj/item/stack/sheet/mineral/adamantine /obj/item/slimecross/industrial/rainbow colour = "rainbow" + effect_desc = "Produces random slime extracts." plasmarequired = 5 //Item picked below. diff --git a/code/modules/research/xenobiology/crossbreeding/prismatic.dm b/code/modules/research/xenobiology/crossbreeding/prismatic.dm index 65e66aa0e2b..c9447b2633b 100644 --- a/code/modules/research/xenobiology/crossbreeding/prismatic.dm +++ b/code/modules/research/xenobiology/crossbreeding/prismatic.dm @@ -6,6 +6,7 @@ Prismatic extracts: name = "prismatic extract" desc = "It's constantly wet with a semi-transparent, colored goo." effect = "prismatic" + effect_desc = "When used it paints whatever it hits." icon_state = "prismatic" var/paintcolor = "#FFFFFF" diff --git a/code/modules/research/xenobiology/crossbreeding/recurring.dm b/code/modules/research/xenobiology/crossbreeding/recurring.dm index b8ea51bae50..4a094744f7f 100644 --- a/code/modules/research/xenobiology/crossbreeding/recurring.dm +++ b/code/modules/research/xenobiology/crossbreeding/recurring.dm @@ -135,4 +135,4 @@ Recurring extracts: /obj/item/slimecross/recurring/rainbow extract_type = /obj/item/slime_extract/rainbow colour = "rainbow" - max_cooldown = 20 //It's pretty powerful. \ No newline at end of file + max_cooldown = 20 //It's pretty powerful. diff --git a/code/modules/research/xenobiology/crossbreeding/regenerative.dm b/code/modules/research/xenobiology/crossbreeding/regenerative.dm index a0a069d70a8..cbe674eb182 100644 --- a/code/modules/research/xenobiology/crossbreeding/regenerative.dm +++ b/code/modules/research/xenobiology/crossbreeding/regenerative.dm @@ -14,7 +14,6 @@ Regenerative extracts: /obj/item/slimecross/regenerative/proc/core_effect_before(mob/living/carbon/human/target, mob/user) return - /obj/item/slimecross/regenerative/afterattack(atom/target,mob/user,prox) . = ..() if(!prox || !isliving(target)) @@ -37,6 +36,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/grey colour = "grey" //Has no bonus effect. + effect_desc = "Fully heals the target and does nothing else." /obj/item/slimecross/regenerative/orange colour = "orange" @@ -49,12 +49,14 @@ Regenerative extracts: /obj/item/slimecross/regenerative/purple colour = "purple" + effect_desc = "Fully heals the target and injects them with some regen jelly." /obj/item/slimecross/regenerative/purple/core_effect(mob/living/target, mob/user) target.reagents.add_reagent("regen_jelly",10) /obj/item/slimecross/regenerative/blue colour = "blue" + effect_desc = "Fully heals the target and makes the floor wet." /obj/item/slimecross/regenerative/blue/core_effect(mob/living/target, mob/user) if(isturf(target.loc)) @@ -64,6 +66,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/metal colour = "metal" + effect_desc = "Fully heals the target and encases the target in a locker." /obj/item/slimecross/regenerative/metal/core_effect(mob/living/target, mob/user) target.visible_message("The milky goo hardens and reshapes itself, encasing [target]!") @@ -74,6 +77,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/yellow colour = "yellow" + effect_desc = "Fully heals the target and fully recharges a single item on the target." /obj/item/slimecross/regenerative/yellow/core_effect(mob/living/target, mob/user) var/list/batteries = list() @@ -87,6 +91,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/darkpurple colour = "dark purple" + effect_desc = "Fully heals the target and gives them purple clothing if they are naked." /obj/item/slimecross/regenerative/darkpurple/core_effect(mob/living/target, mob/user) var/equipped = 0 @@ -99,6 +104,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/darkblue colour = "dark blue" + effect_desc = "Fully heals the target and fireproofs their clothes." /obj/item/slimecross/regenerative/darkblue/core_effect(mob/living/target, mob/user) if(!ishuman(target)) @@ -126,6 +132,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/silver colour = "silver" + effect_desc = "Fully heals the target and makes their belly feel round and full." /obj/item/slimecross/regenerative/silver/core_effect(mob/living/target, mob/user) target.set_nutrition(NUTRITION_LEVEL_FULL - 1) @@ -133,6 +140,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/bluespace colour = "bluespace" + effect_desc = "Fully heals the target and teleports them to where this core was created." var/turf/open/T /obj/item/slimecross/regenerative/bluespace/core_effect(mob/living/target, mob/user) @@ -147,12 +155,15 @@ Regenerative extracts: /obj/item/slimecross/regenerative/sepia colour = "sepia" + effect_desc = "Fully heals the target and stops time." -/obj/item/slimecross/regenerative/sepia/core_effect(mob/living/target, mob/user) - new /obj/effect/timestop(get_turf(target), 2, 50, list(user,target)) +/obj/item/slimecross/regenerative/sepia/core_effect_before(mob/living/target, mob/user) + to_chat(target, "You try to forget how you feel.") + target.AddComponent(/datum/component/dejavu) /obj/item/slimecross/regenerative/cerulean colour = "cerulean" + effect_desc = "Fully heals the target and makes a second regenerative core with no special effects." /obj/item/slimecross/regenerative/cerulean/core_effect(mob/living/target, mob/user) src.forceMove(user.loc) @@ -164,6 +175,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/pyrite colour = "pyrite" + effect_desc = "Fully heals and randomly colors the target." /obj/item/slimecross/regenerative/pyrite/core_effect(mob/living/target, mob/user) target.visible_message("The milky goo coating [target] leaves [target.p_them()] a different color!") @@ -171,6 +183,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/red colour = "red" + effect_desc = "Fully heals the target and injects them with some ephedrine." /obj/item/slimecross/regenerative/red/core_effect(mob/living/target, mob/user) to_chat(target, "You feel... faster.") @@ -178,6 +191,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/green colour = "green" + effect_desc = "Fully heals the target and changes the spieces or color of a slime or jellyperson." /obj/item/slimecross/regenerative/green/core_effect(mob/living/target, mob/user) if(isslime(target)) @@ -190,6 +204,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/pink colour = "pink" + effect_desc = "Fully heals the target and injects them with some krokodil." /obj/item/slimecross/regenerative/pink/core_effect(mob/living/target, mob/user) to_chat(target, "You feel more calm.") @@ -197,6 +212,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/gold colour = "gold" + effect_desc = "Fully heals the target and produces a random coin." /obj/item/slimecross/regenerative/gold/core_effect(mob/living/target, mob/user) var/newcoin = pick(/obj/item/coin/silver, /obj/item/coin/iron, /obj/item/coin/gold, /obj/item/coin/diamond, /obj/item/coin/plasma, /obj/item/coin/uranium) @@ -206,6 +222,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/oil colour = "oil" + effect_desc = "Fully heals the target and flashes everyone in sight." /obj/item/slimecross/regenerative/oil/core_effect(mob/living/target, mob/user) playsound(src, 'sound/weapons/flash.ogg', 100, 1) @@ -214,6 +231,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/black colour = "black" + effect_desc = "Fully heals the target and creates a duplicate of them, that drops dead soon after." /obj/item/slimecross/regenerative/black/core_effect_before(mob/living/target, mob/user) var/dummytype = target.type @@ -232,6 +250,7 @@ Regenerative extracts: /obj/item/slimecross/regenerative/lightpink colour = "light pink" + effect_desc = "Fully heals the target and also heals the user." /obj/item/slimecross/regenerative/lightpink/core_effect(mob/living/target, mob/user) if(!isliving(user)) @@ -244,12 +263,14 @@ Regenerative extracts: /obj/item/slimecross/regenerative/adamantine colour = "adamantine" + effect_desc = "Fully heals the target and boosts their armor." /obj/item/slimecross/regenerative/adamantine/core_effect(mob/living/target, mob/user) //WIP - Find out why this doesn't work. target.apply_status_effect(STATUS_EFFECT_SLIMESKIN) /obj/item/slimecross/regenerative/rainbow colour = "rainbow" + effect_desc = "Fully heals the target and temporarily makes them immortal, but pacifistic." /obj/item/slimecross/regenerative/rainbow/core_effect(mob/living/target, mob/user) - target.apply_status_effect(STATUS_EFFECT_RAINBOWPROTECTION) \ No newline at end of file + target.apply_status_effect(STATUS_EFFECT_RAINBOWPROTECTION) diff --git a/code/modules/research/xenobiology/crossbreeding/reproductive.dm b/code/modules/research/xenobiology/crossbreeding/reproductive.dm index 2f6ca9555a1..be66ed02d70 100644 --- a/code/modules/research/xenobiology/crossbreeding/reproductive.dm +++ b/code/modules/research/xenobiology/crossbreeding/reproductive.dm @@ -8,6 +8,7 @@ Reproductive extracts: desc = "It pulses with a strange hunger." icon_state = "reproductive" effect = "reproductive" + effect_desc = "When fed monkey cubes it produces more extracts. Bio bag compatible as well." var/extract_type = /obj/item/slime_extract/ var/cubes_eaten = 0 var/last_produce = 0 diff --git a/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm b/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm index 0b27b1e26f4..a33e5833613 100644 --- a/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm +++ b/code/modules/research/xenobiology/crossbreeding/selfsustaining.dm @@ -12,6 +12,7 @@ Self-sustaining extracts: name = "autoslime" desc = "It resembles a normal slime extract, but seems filled with a strange, multi-colored fluid." var/obj/item/slime_extract/extract + var/effect_desc = "A self-sustaining slime extract. When used, lets you choose which reaction you want." //Just divides into the actual item. /obj/item/slimecross/selfsustaining/Initialize() @@ -24,10 +25,10 @@ Self-sustaining extracts: A.icon = icon A.icon_state = icon_state A.color = color + A.name = "self-sustaining " + colour + " extract" return INITIALIZE_HINT_QDEL /obj/item/autoslime/Initialize() - name = "self-sustaining " + extract.name return ..() /obj/item/autoslime/attack_self(mob/user) @@ -52,6 +53,11 @@ Self-sustaining extracts: if(secondary) extract.reagents.add_reagent(secondary,amount) +/obj/item/autoslime/examine(mob/user) + ..() + if(effect_desc) + to_chat(user, "[effect_desc]") + //Different types. /obj/item/slimecross/selfsustaining/grey @@ -140,4 +146,4 @@ Self-sustaining extracts: /obj/item/slimecross/selfsustaining/rainbow extract_type = /obj/item/slime_extract/rainbow - colour = "rainbow" \ No newline at end of file + colour = "rainbow" diff --git a/code/modules/research/xenobiology/crossbreeding/stabilized.dm b/code/modules/research/xenobiology/crossbreeding/stabilized.dm index 10c96f081bd..1d7874bf846 100644 --- a/code/modules/research/xenobiology/crossbreeding/stabilized.dm +++ b/code/modules/research/xenobiology/crossbreeding/stabilized.dm @@ -45,57 +45,76 @@ Stabilized extracts: S.linked_extract = src STOP_PROCESSING(SSobj,src) + + //Colors and subtypes: /obj/item/slimecross/stabilized/grey colour = "grey" + effect_desc = "Makes slimes friendly to the owner" /obj/item/slimecross/stabilized/orange colour = "orange" + effect_desc = "Passively tries to increase or decrease the owner's body temperature to normal" /obj/item/slimecross/stabilized/purple colour = "purple" + effect_desc = "Provides a regeneration effect" /obj/item/slimecross/stabilized/blue colour = "blue" + effect_desc = "Makes the owner immune to slipping on water, soap or foam. Space lube and ice are still too slippery." /obj/item/slimecross/stabilized/metal colour = "metal" + effect_desc = "Every 30 seconds, adds a sheet of material to a random stack in the owner's backpack." /obj/item/slimecross/stabilized/yellow colour = "yellow" + effect_desc = "Every ten seconds it recharges a device on the owner by 10%." /obj/item/slimecross/stabilized/darkpurple colour = "dark purple" + effect_desc = "Gives you burning fingertips, automatically cooking any microwavable food you hold." /obj/item/slimecross/stabilized/darkblue colour = "dark blue" + effect_desc = "Slowly extinguishes the owner if they are on fire, also wets items like monkey cubes, creating a monkey." /obj/item/slimecross/stabilized/silver colour = "silver" + effect_desc = "Slows the rate at which the owner loses nutrition" /obj/item/slimecross/stabilized/bluespace colour = "bluespace" + effect_desc = "On a two minute cooldown, when the owner has taken enough damage, they are teleported to a safe place." /obj/item/slimecross/stabilized/sepia colour = "sepia" + effect_desc = "Randomly adjusts the owner's speed." /obj/item/slimecross/stabilized/cerulean colour = "cerulean" + effect_desc = "Creates a duplicate of the owner. If the owner dies they will take control of the duplicate, unless the death was from beheading or gibbing." /obj/item/slimecross/stabilized/pyrite colour = "pyrite" + effect_desc = "Randomly colors the owner every few seconds." /obj/item/slimecross/stabilized/red colour = "red" + effect_desc = "Nullifies all equipment based slowdowns." /obj/item/slimecross/stabilized/green colour = "green" + effect_desc = "Changes the owner's name and appearance while holding this extract." /obj/item/slimecross/stabilized/pink colour = "pink" + effect_desc = "As long as no creatures are harmed in the owner's presense, they will not attack you. If the peace is broken it takes two minutes to restore." /obj/item/slimecross/stabilized/gold colour = "gold" + effect_desc = "Creates a pet when held." var/mob_type var/datum/mind/saved_mind var/mob_name = "Familiar" @@ -142,18 +161,23 @@ Stabilized extracts: /obj/item/slimecross/stabilized/oil colour = "oil" + effect_desc = "The owner will violently explode when they die while holding this extract." /obj/item/slimecross/stabilized/black colour = "black" + effect_desc = "While strangling someone, the owner's hands melt around their neck, draining their life in exchange for food and healing." /obj/item/slimecross/stabilized/lightpink colour = "light pink" + effect_desc = "The owner moves at high speeds while holding this extract, also stabilizes anyone in critical condition around you using Epinephrine." /obj/item/slimecross/stabilized/adamantine colour = "adamantine" + effect_desc = "Owner gains a slight boost in damage resistance to all types." /obj/item/slimecross/stabilized/rainbow colour = "rainbow" + effect_desc = "Accepts a regenerative extract and automatically uses it if the owner enters a critical condition." var/obj/item/slimecross/regenerative/regencore /obj/item/slimecross/stabilized/rainbow/attackby(obj/item/O, mob/user) diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 3cf99843ab9..5452bb50276 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -702,7 +702,7 @@ imp.implant(SM, user) SM.access_card = new /obj/item/card/id/syndicate(SM) - SM.access_card.add_trait(TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) + ADD_TRAIT(SM.access_card, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) /obj/item/slimepotion/transference name = "consciousness transference potion" diff --git a/code/modules/ruins/lavaland_ruin_code.dm b/code/modules/ruins/lavaland_ruin_code.dm index 1f358a3c944..333801c398c 100644 --- a/code/modules/ruins/lavaland_ruin_code.dm +++ b/code/modules/ruins/lavaland_ruin_code.dm @@ -106,7 +106,7 @@ death = FALSE icon = 'icons/obj/machines/sleeper.dmi' icon_state = "sleeper_s" - flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunately, your hated enemy, Nanotrasen, has begun mining in this sector. Continue your research as best you can, and try to keep a low profile. DON'T 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!" + flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunately, your hated enemy, Nanotrasen, has begun mining in this sector. Continue your research as best you can, and try to keep a low profile. The base is rigged with explosives, DO NOT abandon it or let it fall into enemy hands!" outfit = /datum/outfit/lavaland_syndicate assignedrole = "Lavaland Syndicate" @@ -131,9 +131,12 @@ /obj/effect/mob_spawn/human/lavaland_syndicate/comms name = "Syndicate Comms Agent" - flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunately, your hated enemy, Nanotrasen, has begun mining in this sector. Monitor enemy activity as best you can, and try to keep a low profile. DON'T 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!" + flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunately, 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. 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!" outfit = /datum/outfit/lavaland_syndicate/comms +/obj/effect/mob_spawn/human/lavaland_syndicate/comms/space + flavour_text = "You are a syndicate agent, assigned to a small listening post station situated near your hated enemy's top secret research facility: Space Station 13. Monitor enemy activity as best you can, and try to keep a low profile. DO NOT abandon the base. 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!" + /obj/effect/mob_spawn/human/lavaland_syndicate/comms/space/Initialize() . = ..() if(prob(90)) //only has a 10% chance of existing, otherwise it'll just be a NPC syndie. diff --git a/code/modules/ruins/spaceruin_code/hilbertshotel.dm b/code/modules/ruins/spaceruin_code/hilbertshotel.dm index 2a9a97b951d..8ab5d68ff2d 100644 --- a/code/modules/ruins/spaceruin_code/hilbertshotel.dm +++ b/code/modules/ruins/spaceruin_code/hilbertshotel.dm @@ -319,6 +319,33 @@ GLOBAL_VAR_INIT(hhmysteryRoomNumber, 1337) var/datum/turf_reservation/reservation var/turf/storageTurf +/area/hilbertshotel/Entered(atom/movable/AM) + . = ..() + if(istype(AM, /obj/item/hilbertshotel)) + relocate(AM) + var/list/obj/item/hilbertshotel/hotels = AM.GetAllContents(/obj/item/hilbertshotel) + for(var/obj/item/hilbertshotel/H in hotels) + if(parentSphere == H) + relocate(H) + +/area/hilbertshotel/proc/relocate(obj/item/hilbertshotel/H) + if(prob(0.135685)) //Because screw you + qdel(H) + return + var/turf/targetturf = find_safe_turf() + if(!targetturf) + if(GLOB.blobstart.len > 0) + targetturf = get_turf(pick(GLOB.blobstart)) + else + CRASH("Unable to find a blobstart landmark") + var/turf/T = get_turf(H) + var/area/A = T.loc + log_game("[H] entered itself. Moving it to [loc_name(targetturf)].") + message_admins("[H] entered itself. Moving it to [ADMIN_VERBOSEJMP(targetturf)].") + for(var/mob/M in A) + to_chat(M, "[H] almost implodes in upon itself, but quickly rebounds, shooting off into a random point in space!") + H.forceMove(targetturf) + /area/hilbertshotel/Exited(atom/movable/AM) . = ..() if(ismob(AM)) diff --git a/code/modules/shuttle/computer.dm b/code/modules/shuttle/computer.dm index 7f603b3c61f..7ee5a9eab75 100644 --- a/code/modules/shuttle/computer.dm +++ b/code/modules/shuttle/computer.dm @@ -51,6 +51,9 @@ to_chat(usr, "You've already escaped. Never going back to that place again!") return if(no_destination_swap) + if(M.mode == SHUTTLE_RECHARGING) + to_chat(usr, "Shuttle engines are not ready for use.") + return if(M.mode != SHUTTLE_IDLE) to_chat(usr, "Shuttle already in transit.") return diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm index 52b06b65940..55fd3ffa979 100644 --- a/code/modules/shuttle/emergency.dm +++ b/code/modules/shuttle/emergency.dm @@ -483,15 +483,18 @@ return var/list/turfs = get_area_turfs(target_area) - var/turf/T = pick(turfs) - + var/original_len = turfs.len while(turfs.len) + var/turf/T = pick(turfs) if(T.xYour request has been received by CentCom.") - to_chat(GLOB.admins, "FERRY: [ADMIN_LOOKUPFLW(usr)] (Move Ferry) is requesting to move the transport ferry to CentCom.") + to_chat(GLOB.admins, "FERRY: [ADMIN_LOOKUPFLW(usr)] (Move Ferry) is requesting to move the transport ferry to CentCom.") diff --git a/code/modules/shuttle/on_move.dm b/code/modules/shuttle/on_move.dm index 6d2ea1ff10d..dd6c0ab21de 100644 --- a/code/modules/shuttle/on_move.dm +++ b/code/modules/shuttle/on_move.dm @@ -340,11 +340,17 @@ All ShuttleMove procs go here . = ..() update() +/obj/structure/cable/beforeShuttleMove(turf/newT, rotation, move_mode, obj/docking_port/mobile/moving_dock) + . = ..() + cut_cable_from_powernet(FALSE) + /obj/structure/cable/afterShuttleMove(turf/oldT, list/movement_force, shuttle_dir, shuttle_preferred_direction, move_dir, rotation) . = ..() var/turf/T = loc if(level==1) hide(T.intact) + mergeConnectedNetworks(d1) + mergeConnectedNetworks(d2) /obj/structure/shuttle/beforeShuttleMove(turf/newT, rotation, move_mode, obj/docking_port/mobile/moving_dock) . = ..() diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm index 10c955fc263..ff0122f60e6 100644 --- a/code/modules/shuttle/shuttle.dm +++ b/code/modules/shuttle/shuttle.dm @@ -241,6 +241,8 @@ 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/rechargeTime = 0 // time spent after arrival before being able to begin ignition + var/prearrivalTime = 0 // time spent after transit 'landing' before actually arriving // The direction the shuttle prefers to travel in var/preferred_direction = NORTH @@ -260,6 +262,7 @@ var/engine_coeff = 1 //current engine coeff var/current_engines = 0 //current engine power var/initial_engines = 0 //initial engine power + var/list/engine_list = list() var/can_move_docking_ports = FALSE //if this shuttle can move docking ports other than the one it is docked at var/list/hidden_turfs = list() @@ -534,7 +537,11 @@ // 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(SHUTTLE_CALL, SHUTTLE_PREARRIVAL) + if(prearrivalTime && mode != SHUTTLE_PREARRIVAL) + mode = SHUTTLE_PREARRIVAL + setTimer(prearrivalTime) + return var/error = initiate_docking(destination, preferred_direction) if(error && error & (DOCKING_NULL_DESTINATION | DOCKING_NULL_SOURCE)) var/msg = "A mobile dock in transit exited initiate_docking() with an error. This is most likely a mapping problem: Error: [error], ([src]) ([previous][ADMIN_JMP(previous)] -> [destination][ADMIN_JMP(destination)])" @@ -545,6 +552,10 @@ else if(error) setTimer(20) return + if(rechargeTime) + mode = SHUTTLE_RECHARGING + setTimer(rechargeTime) + return if(SHUTTLE_RECALL) if(initiate_docking(previous) != DOCKING_SUCCESS) setTimer(20) @@ -647,6 +658,10 @@ return "ESC" if(SHUTTLE_STRANDED) return "ERR" + if(SHUTTLE_RECHARGING) + return "RCH" + if(SHUTTLE_PREARRIVAL) + return "LDN" return "" // returns 5-letter timer string, used by status screens and mob status panel @@ -665,7 +680,7 @@ /obj/docking_port/mobile/proc/getStatusText() var/obj/docking_port/stationary/dockedAt = get_docked() - + var/docked_at = dockedAt?.name || "unknown" if(istype(dockedAt, /obj/docking_port/stationary/transit)) if (timeLeft() > 1 HOURS) return "hyperspace" @@ -676,8 +691,10 @@ else dst = destination . = "transit towards [dst?.name || "unknown location"] ([getTimerStr()])" + else if(mode == SHUTTLE_RECHARGING) + return "[docked_at], recharging [getTimerStr()]" else - return dockedAt?.name || "unknown" + return docked_at /obj/docking_port/mobile/proc/getDbgStatusText() @@ -709,19 +726,47 @@ return null /obj/docking_port/mobile/proc/hyperspace_sound(phase, list/areas) - var/s + var/selected_sound switch(phase) if(HYPERSPACE_WARMUP) - s = 'sound/effects/hyperspace_begin.ogg' + selected_sound = "hyperspace_begin" if(HYPERSPACE_LAUNCH) - s = 'sound/effects/hyperspace_progress.ogg' + selected_sound = "hyperspace_progress" if(HYPERSPACE_END) - s = 'sound/effects/hyperspace_end.ogg' + selected_sound = "hyperspace_end" else CRASH("Invalid hyperspace sound phase: [phase]") - for(var/A in areas) - for(var/obj/machinery/door/E in A) //dumb, I know, but playing it on the engines doesn't do it justice - playsound(E, s, 100, FALSE, max(width, height) - world.view) + // This previously was played from each door at max volume, and was one of the worst things I had ever seen. + // Now it's instead played from the nearest engine if close, or the first engine in the list if far since it doesn't really matter. + // Or a door if for some reason the shuttle has no engine, fuck oh hi daniel fuck it + var/range = (engine_coeff * max(width, height)) + var/long_range = range * 2.5 + var/atom/distant_source + if(engine_list[1]) + distant_source = engine_list[1] + else + for(var/A in areas) + distant_source = locate(/obj/machinery/door) in A + if(distant_source) + break + + if(distant_source) + for(var/mob/M in SSmobs.clients_by_zlevel[z]) + var/dist_far = get_dist(M, distant_source) + if(dist_far <= long_range && dist_far > range) + M.playsound_local(distant_source, "sound/effects/[selected_sound]_distance.ogg", 100, falloff = 20) + else if(dist_far <= range) + var/source + if(engine_list.len == 0) + source = distant_source + else + var/closest_dist = 10000 + for(var/obj/O in engine_list) + var/dist_near = get_dist(M, O) + if(dist_near < closest_dist) + source = O + closest_dist = dist_near + M.playsound_local(source, "sound/effects/[selected_sound].ogg", 100, falloff = range / 2) // Losing all initial engines should get you 2 // Adding another set of engines at 0.5 time @@ -733,14 +778,15 @@ current_engines = max(0,current_engines + mod) if(in_flight()) var/delta_coeff = engine_coeff / old_coeff - modTimer(delta_coeff) - + modTimer(delta_coeff) + /obj/docking_port/mobile/proc/count_engines() . = 0 for(var/thing in shuttle_areas) var/area/shuttle/areaInstance = thing for(var/obj/structure/shuttle/engine/E in areaInstance.contents) if(!QDELETED(E)) + engine_list += E . += E.engine_power // Double initial engines to get to 0.5 minimum @@ -766,7 +812,7 @@ /obj/docking_port/mobile/proc/in_flight() switch(mode) - if(SHUTTLE_CALL,SHUTTLE_RECALL) + if(SHUTTLE_CALL,SHUTTLE_RECALL,SHUTTLE_PREARRIVAL) return TRUE if(SHUTTLE_IDLE,SHUTTLE_IGNITING) return FALSE diff --git a/code/modules/shuttle/special.dm b/code/modules/shuttle/special.dm index cc70f0a006e..b2d00e1a8e1 100644 --- a/code/modules/shuttle/special.dm +++ b/code/modules/shuttle/special.dm @@ -76,7 +76,7 @@ break if(!our_statue) - name = "inert [name]" + name = "inert [initial(name)]" return else name = initial(name) @@ -165,7 +165,7 @@ var/datum/job/captain/C = new /datum/job/captain access_card.access = C.get_access() access_card.access |= ACCESS_CENT_BAR - access_card.add_trait(TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) + ADD_TRAIT(access_card, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) /mob/living/simple_animal/hostile/alien/maid/barmaid/Destroy() qdel(access_card) diff --git a/code/modules/shuttle/supply.dm b/code/modules/shuttle/supply.dm index a719bc51098..e3605e0adc5 100644 --- a/code/modules/shuttle/supply.dm +++ b/code/modules/shuttle/supply.dm @@ -78,6 +78,9 @@ GLOBAL_LIST_INIT(blacklisted_cargo_types, typecacheof(list( sell() /obj/docking_port/mobile/supply/proc/buy() + var/list/miscboxes = list() //miscboxes are combo boxes that contain all small_item orders grouped + var/list/misc_order_num = list() //list of strings of order numbers, so that the manifest can show all orders in a box + var/list/misc_contents = list() //list of lists of items that each box will contain if(!SSshuttle.shoppinglist.len) return @@ -115,13 +118,42 @@ GLOBAL_LIST_INIT(blacklisted_cargo_types, typecacheof(list( SSshuttle.shoppinglist -= SO SSshuttle.orderhistory += SO - SO.generate(pick_n_take(empty_turfs)) + if(SO.pack.small_item) //small_item means it gets piled in the miscbox + if(SO.paying_account) + if(!miscboxes.len || !miscboxes[D.account_holder]) //if there's no miscbox for this person + miscboxes[D.account_holder] = new /obj/structure/closet/crate/secure/owned(pick_n_take(empty_turfs), SO.paying_account) + miscboxes[D.account_holder].name = "small items crate - purchased by [D.account_holder]" + misc_contents[D.account_holder] = list() + for (var/item in SO.pack.contains) + misc_contents[D.account_holder] += item + misc_order_num[D.account_holder] = "[misc_order_num[D.account_holder]]#[SO.id] " + else //No private payment, so we just stuff it all into a generic crate + if(!miscboxes.len || !miscboxes["Cargo"]) + miscboxes["Cargo"] = new /obj/structure/closet/crate/secure(pick_n_take(empty_turfs)) + miscboxes["Cargo"].name = "small items crate" + misc_contents["Cargo"] = list() + miscboxes["Cargo"].req_access = list() + for (var/item in SO.pack.contains) + misc_contents["Cargo"] += item + //new item(miscboxes["Cargo"]) + if(SO.pack.access) + miscboxes["Cargo"].req_access += SO.pack.access + misc_order_num["Cargo"] = "[misc_order_num["Cargo"]]#[SO.id] " + else + SO.generate(pick_n_take(empty_turfs)) + SSblackbox.record_feedback("nested tally", "cargo_imports", 1, list("[SO.pack.cost]", "[SO.pack.name]")) investigate_log("Order #[SO.id] ([SO.pack.name], placed by [key_name(SO.orderer_ckey)]), paid by [D.account_holder] has shipped.", INVESTIGATE_CARGO) if(SO.pack.dangerous) message_admins("\A [SO.pack.name] ordered by [ADMIN_LOOKUPFLW(SO.orderer_ckey)], paid by [D.account_holder] has shipped.") purchases++ + for(var/I in miscboxes) + var/datum/supply_order/SO = new/datum/supply_order() + SO.id = misc_order_num[I] + SO.generateCombo(miscboxes[I], I, misc_contents[I]) + qdel(SO) + var/datum/bank_account/cargo_budget = SSeconomy.get_dep_account(ACCOUNT_CAR) investigate_log("[purchases] orders in this shipment, worth [value] credits. [cargo_budget.account_balance] credits left.", INVESTIGATE_CARGO) diff --git a/code/modules/spells/spell.dm b/code/modules/spells/spell.dm index cb2af17e1e4..652ef3badf1 100644 --- a/code/modules/spells/spell.dm +++ b/code/modules/spells/spell.dm @@ -35,6 +35,8 @@ GLOBAL_LIST_INIT(spells, typesof(/obj/effect/proc_holder/spell)) //needed for the badmin verb for now /obj/effect/proc_holder/Destroy() + if (action) + qdel(action) if(ranged_ability_user) remove_ranged_ability() return ..() diff --git a/code/modules/spells/spell_types/area_teleport.dm b/code/modules/spells/spell_types/area_teleport.dm index 84e1eec2eae..55ca838c02b 100644 --- a/code/modules/spells/spell_types/area_teleport.dm +++ b/code/modules/spells/spell_types/area_teleport.dm @@ -71,7 +71,7 @@ do_teleport(target, L, forceMove = TRUE, channel = TELEPORT_CHANNEL_MAGIC) playsound(get_turf(user), sound2, 50,1) -/obj/effect/proc_holder/spell/targeted/area_teleport/invocation(area/chosenarea = null,mob/user = usr) +/obj/effect/proc_holder/spell/targeted/area_teleport/invocation(area/chosenarea = null,mob/living/user = usr) if(!invocation_area || !chosenarea) ..() else diff --git a/code/modules/spells/spell_types/construct_spells.dm b/code/modules/spells/spell_types/construct_spells.dm index 697113c2b0d..bd24b00a743 100644 --- a/code/modules/spells/spell_types/construct_spells.dm +++ b/code/modules/spells/spell_types/construct_spells.dm @@ -146,11 +146,14 @@ clothes_req = FALSE invocation = "none" invocation_type = "none" - proj_lifespan = 10 max_targets = 6 action_icon_state = "magicm" action_background_icon_state = "bg_demon" + proj_type = /obj/item/projectile/magic/spell/magic_missile/lesser +/obj/item/projectile/magic/spell/magic_missile/lesser + color = "red" //Looks more culty this way + range = 10 /obj/effect/proc_holder/spell/targeted/smoke/disable name = "Paralysing Smoke" @@ -282,37 +285,37 @@ jaunt_out_type = /obj/effect/temp_visual/dir_setting/cult/phase/out -/obj/effect/proc_holder/spell/dumbfire/juggernaut +/obj/effect/proc_holder/spell/targeted/projectile/dumbfire/juggernaut name = "Gauntlet Echo" desc = "Channels energy into your gauntlet - firing its essence forward in a slow moving, yet devastating, attack." - proj_icon_state = "cultfist" - proj_name = "gauntlet echo" - proj_type = "/obj/effect/proc_holder/spell/targeted/inflict_handler/juggernaut" //IMPORTANT use only subtypes of this - proj_lifespan = 15 - proj_step_delay = 7 + proj_type = /obj/item/projectile/magic/spell/juggernaut charge_max = 350 clothes_req = FALSE action_icon = 'icons/mob/actions/actions_cult.dmi' action_icon_state = "cultfist" action_background_icon_state = "bg_demon" sound = 'sound/weapons/resonator_blast.ogg' - proj_trigger_range = 0 - ignore_factions = list("cult") - check_holy = TRUE -/obj/effect/proc_holder/spell/targeted/inflict_handler/juggernaut +/obj/item/projectile/magic/spell/juggernaut name = "Gauntlet Echo" + icon_state = "cultfist" alpha = 180 - amt_dam_brute = 30 - amt_knockdown = 50 - sound = 'sound/weapons/punch3.ogg' + damage = 30 + damage_type = BRUTE + knockdown = 50 + hitsound = 'sound/weapons/punch3.ogg' + trigger_range = 0 + check_holy = TRUE + ignored_factions = list("cult") + range = 15 + speed = 7 -/obj/effect/proc_holder/spell/targeted/inflict_handler/juggernaut/cast(list/targets,mob/user = usr) +/obj/item/projectile/magic/spell/juggernaut/on_hit(atom/target, blocked) + . = ..() var/turf/T = get_turf(src) playsound(T, 'sound/weapons/resonator_blast.ogg', 100, FALSE) new /obj/effect/temp_visual/cult/sac(T) for(var/obj/O in range(src,1)) if(O.density && !istype(O, /obj/structure/destructible/cult)) O.take_damage(90, BRUTE, "melee", 0) - new /obj/effect/temp_visual/cult/turf/floor - ..() + new /obj/effect/temp_visual/cult/turf/floor(get_turf(O)) diff --git a/code/modules/spells/spell_types/dumbfire.dm b/code/modules/spells/spell_types/dumbfire.dm deleted file mode 100644 index fc8c7dd7091..00000000000 --- a/code/modules/spells/spell_types/dumbfire.dm +++ /dev/null @@ -1,114 +0,0 @@ - -//NEEDS MAJOR CODE CLEANUP - -/obj/effect/proc_holder/spell/dumbfire - - var/projectile_type = "" - var/activate_on_collision = 1 - - var/proj_icon = 'icons/obj/projectiles.dmi' - var/proj_icon_state = "spell" - var/proj_name = "a spell projectile" - - var/proj_trail = 0 //if it leaves a trail - var/proj_trail_lifespan = 0 //deciseconds - var/proj_trail_icon = 'icons/obj/wizard.dmi' - var/proj_trail_icon_state = "trail" - - var/proj_type = "/obj/effect/proc_holder/spell" //IMPORTANT use only subtypes of this - - var/proj_insubstantial = 0 //if it can pass through dense objects or not - var/proj_trigger_range = 1 //the range from target at which the projectile triggers cast(target) - - var/proj_lifespan = 100 //in deciseconds * proj_step_delay - var/proj_step_delay = 1 //lower = faster - var/list/ignore_factions = list() //Faction types that will be ignored - - var/check_antimagic = TRUE - var/check_holy = FALSE - -/obj/effect/proc_holder/spell/dumbfire/choose_targets(mob/user = usr) - - var/turf/T = get_turf(user) - for(var/i = 1; i < range; i++) - var/turf/new_turf = get_step(T, user.dir) - if(new_turf.density) - break - T = new_turf - perform(list(T),user = user) - -/obj/effect/proc_holder/spell/dumbfire/cast(list/targets, mob/user = usr) - playMagSound() - for(var/turf/target in targets) - launch_at(target, user) - -/obj/effect/proc_holder/spell/dumbfire/proc/launch_at(turf/target, mob/user) - set waitfor = FALSE - var/obj/effect/proc_holder/spell/targeted/projectile - if(istext(proj_type)) - var/projectile_type = text2path(proj_type) - projectile = new projectile_type(user) - else if(istype(proj_type, /obj/effect/proc_holder/spell)) - projectile = new /obj/effect/proc_holder/spell/targeted/trigger(user) - var/obj/effect/proc_holder/spell/targeted/trigger/T = projectile - T.linked_spells += proj_type - else - projectile = new proj_type(user) - projectile.icon = proj_icon - projectile.icon_state = proj_icon_state - projectile.setDir(get_dir(projectile, target)) - projectile.name = proj_name - - var/current_loc = user.loc - - projectile.forceMove(current_loc) - - for(var/i = 0,i < proj_lifespan,i++) - if(!projectile) - break - - if(proj_insubstantial) - projectile.forceMove(get_step(projectile, projectile.dir)) - else - step(projectile, projectile.dir) - - if(projectile.loc == current_loc || i == proj_lifespan) - projectile.cast(current_loc,user=user) - break - - var/mob/living/L = locate(/mob/living) in range(projectile, proj_trigger_range) - user - if(L && L.stat != DEAD && L.anti_magic_check(check_antimagic, check_holy)) - if(!ignore_factions.len) - projectile.cast(L.loc,user=user) - break - else - var/faction_check = FALSE - for(var/faction in L.faction) - if(ignore_factions.Find(faction)) - faction_check = TRUE - break - if(!faction_check) - projectile.cast(L.loc,user=user) - break - - if(proj_trail && projectile) - proj_trail(projectile) - - current_loc = projectile.loc - var/matrix/M = new - M.Turn(dir2angle(projectile.dir)) - projectile.transform = M - - sleep(proj_step_delay) - - if(projectile) - qdel(projectile) - -/obj/effect/proc_holder/spell/dumbfire/proc/proj_trail(obj/effect/proc_holder/spell/targeted/projectile) - set waitfor = FALSE - if(projectile) - var/obj/effect/overlay/trail = new /obj/effect/overlay(projectile.loc) - trail.icon = proj_trail_icon - trail.icon_state = proj_trail_icon_state - trail.density = FALSE - QDEL_IN(trail, proj_trail_lifespan) diff --git a/code/modules/spells/spell_types/genetic.dm b/code/modules/spells/spell_types/genetic.dm index ae92995a9d0..812dc3a243f 100644 --- a/code/modules/spells/spell_types/genetic.dm +++ b/code/modules/spells/spell_types/genetic.dm @@ -26,7 +26,7 @@ for(var/A in mutations) target.dna.add_mutation(A) for(var/A in traits) - target.add_trait(A, GENETICS_SPELL) + ADD_TRAIT(target, A, GENETICS_SPELL) active_on += target addtimer(CALLBACK(src, .proc/remove, target), duration) @@ -41,4 +41,4 @@ for(var/A in mutations) target.dna.remove_mutation(A) for(var/A in traits) - target.remove_trait(A, GENETICS_SPELL) \ No newline at end of file + REMOVE_TRAIT(target, A, GENETICS_SPELL) \ No newline at end of file diff --git a/code/modules/spells/spell_types/godhand.dm b/code/modules/spells/spell_types/godhand.dm index 751bf72ad66..927bef94ba3 100644 --- a/code/modules/spells/spell_types/godhand.dm +++ b/code/modules/spells/spell_types/godhand.dm @@ -19,7 +19,7 @@ /obj/item/melee/touch_attack/Initialize() . = ..() - add_trait(TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, ABSTRACT_ITEM_TRAIT) /obj/item/melee/touch_attack/attack(mob/target, mob/living/carbon/user) if(!iscarbon(user)) //Look ma, no hands diff --git a/code/modules/spells/spell_types/hivemind.dm b/code/modules/spells/spell_types/hivemind.dm index f7f0f71d437..13bf5e53f75 100644 --- a/code/modules/spells/spell_types/hivemind.dm +++ b/code/modules/spells/spell_types/hivemind.dm @@ -14,22 +14,22 @@ /obj/effect/proc_holder/spell/target_hive/choose_targets(mob/user = usr) var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) - if(!hive) + if(!hive || !hive.hivemembers) to_chat(user, "This is a bug. Error:HIVE1") return var/list/possible_targets = list() var/list/targets = list() if(target_external) - for(var/mob/living/carbon/human/H in view_or_range(range, user, selection_type)) + for(var/mob/living/carbon/H in view_or_range(range, user, selection_type)) if(user == H) continue if(!can_target(H)) continue - if(!hive.hivemembers.Find(H)) + if(!hive.is_carbon_member(H)) possible_targets += H else - possible_targets = hive.hivemembers.Copy() + possible_targets = hive.get_carbon_members() if(range) possible_targets &= view_or_range(range, user, selection_type) @@ -46,29 +46,32 @@ selection_type = "view" action_icon_state = "add" - charge_max = 200 + charge_max = 50 range = 7 target_external = 1 var/ignore_mindshield = FALSE /obj/effect/proc_holder/spell/target_hive/hive_add/cast(list/targets, mob/living/user = usr) - var/mob/living/carbon/human/target = targets[1] + var/mob/living/carbon/target = targets[1] var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) var/success = FALSE if(target.mind && target.client && target.stat != DEAD) - if(!target.has_trait(TRAIT_MINDSHIELD) || ignore_mindshield) - if(target.has_trait(TRAIT_MINDSHIELD) && ignore_mindshield) + if(!HAS_TRAIT(target, TRAIT_MINDSHIELD) || ignore_mindshield) + if(HAS_TRAIT(target, TRAIT_MINDSHIELD) && ignore_mindshield) to_chat(user, "We bruteforce our way past the mental barriers of [target.name] and begin linking our minds!") else to_chat(user, "We begin linking our mind with [target.name]!") if(do_after(user,5*(1.5**get_dist(user, target)),0,user) && target in view(range)) if(do_after(user,5*(1.5**get_dist(user, target)),0,user) && target in view(range)) - if((!target.has_trait(TRAIT_MINDSHIELD) || ignore_mindshield) && target in view(range)) + if((!HAS_TRAIT(target, TRAIT_MINDSHIELD) || ignore_mindshield) && target in view(range)) to_chat(user, "[target.name] was added to the Hive!") success = TRUE hive.add_to_hive(target) + hive.threat_level = max(0, hive.threat_level-0.1) if(ignore_mindshield) + to_chat(user, "We are briefly exhausted by the effort required by our enhanced assimilation abilities.") + user.Immobilize(50) SEND_SIGNAL(target, COMSIG_NANITE_SET_VOLUME, 0) for(var/obj/item/implant/mindshield/M in target.implants) qdel(M) @@ -91,25 +94,35 @@ selection_type = "view" action_icon_state = "remove" - charge_max = 100 + charge_max = 50 range = 7 /obj/effect/proc_holder/spell/target_hive/hive_remove/cast(list/targets, mob/living/user = usr) - var/mob/living/carbon/human/target = targets[1] + var/mob/living/carbon/target = targets[1] var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) if(!hive) to_chat(user, "This is a bug. Error:HIVE1") return - hive.hivemembers -= target + var/datum/mind/M = target.mind + if(!M) + revert_cast() + return + hive.remove_from_hive(target) hive.calc_size() + hive.threat_level += 0.1 to_chat(user, "We remove [target.name] from the hive") + if(hive.active_one_mind) + var/datum/antagonist/hivevessel/woke = target.is_wokevessel() + if(woke) + hive.active_one_mind.remove_member(M) + M.remove_antag_datum(/datum/antagonist/hivevessel) /obj/effect/proc_holder/spell/target_hive/hive_see name = "Hive Vision" desc = "We use the eyes of one of our vessels. Use again to look through our own eyes once more." action_icon_state = "see" - var/mob/vessel + var/mob/living/carbon/vessel var/mob/living/host //Didn't really have any other way to auto-reset the perspective if the other mob got qdeled charge_max = 20 @@ -122,6 +135,7 @@ if(!active) vessel = targets[1] if(vessel) + vessel.apply_status_effect(STATUS_EFFECT_BUGGED, user) user.reset_perspective(vessel) active = TRUE host = user @@ -129,6 +143,7 @@ user.overlay_fullscreen("hive_eyes", /obj/screen/fullscreen/hive_eyes) revert_cast() else + vessel.remove_status_effect(STATUS_EFFECT_BUGGED) user.reset_perspective() user.clear_fullscreen("hive_eyes") var/obj/effect/proc_holder/spell/target_hive/hive_control/the_spell = locate(/obj/effect/proc_holder/spell/target_hive/hive_control) in user.mind.spell_list @@ -141,7 +156,10 @@ if(active && (!vessel || !is_hivemember(vessel) || QDELETED(vessel))) to_chat(host, "Our vessel is one of us no more!") host.reset_perspective() + host.clear_fullscreen("hive_eyes") active = FALSE + if(!QDELETED(vessel)) + vessel.remove_status_effect(STATUS_EFFECT_BUGGED) ..() /obj/effect/proc_holder/spell/target_hive/hive_see/choose_targets(mob/user = usr) @@ -164,7 +182,7 @@ to_chat(user, "This is a bug. Error:HIVE1") return to_chat(user, "We begin increasing the psionic bandwidth between ourself and the vessel!") - if(do_after(user,60,0,user)) + if(do_after(user,30,0,user)) var/power = 120-get_dist(user, target) if(!is_hivehost(target)) switch(hive.hive_size) @@ -187,6 +205,77 @@ to_chat(user, "Our concentration has been broken!") revert_cast() + +/obj/effect/proc_holder/spell/self/hive_scan + name = "Psychoreception" + desc = "We release a pulse to receive information on any enemies we have previously located via Network Invasion, as well as those currently tracking us." + panel = "Hivemind Abilities" + charge_max = 1800 + invocation_type = "none" + clothes_req = 0 + human_req = 1 + action_icon = 'icons/mob/actions/actions_hive.dmi' + action_background_icon_state = "bg_hive" + action_icon_state = "scan" + antimagic_allowed = TRUE + +/obj/effect/proc_holder/spell/self/hive_scan/cast(mob/living/user = usr) + var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) + if(!hive) + to_chat(user, "This is a bug. Error:HIVE1") + return + var/message + var/distance + + for(var/datum/status_effect/hive_track/track in user.status_effects) + var/mob/living/L = track.tracked_by + if(!L) + continue + if(!do_after(user,5,0,user)) + to_chat(user, "Our concentration has been broken!") + break + distance = get_dist(user, L) + message = "[(L.is_real_hivehost()) ? "Someone": "A hivemind host"] tracking us" + if(user.z != L.z || L.stat == DEAD) + message += " could not be found." + else + switch(distance) + if(0 to 2) + message += " is right next to us!" + if(2 to 14) + message += " is nearby." + if(14 to 28) + message += " isn't too far away." + if(28 to INFINITY) + message += " is quite far away." + to_chat(user, "[message]") + for(var/datum/antagonist/hivemind/enemy in hive.individual_track_bonus) + if(!do_after(user,5,0,user)) + to_chat(user, "Our concentration has been broken!") + break + var/mob/living/carbon/C = enemy.owner?.current + if(!C) + continue + var/mob/living/real_enemy = C.get_real_hivehost() + distance = get_dist(user, real_enemy) + message = "A host that we can track for [(hive.individual_track_bonus[enemy])/10] extra seconds" + if(user.z != real_enemy.z || real_enemy.stat == DEAD) + message += " could not be found." + else + switch(distance) + if(0 to 2) + message += " is right next to us!" + if(2 to 14) + if(enemy.get_threat_multiplier() >= 0.85 && distance <= 7) + message += " is in this very room!" + else + message += " is nearby." + if(14 to 28) + message += " isn't too far away." + if(28 to INFINITY) + message += " is quite far away." + to_chat(user, "[message]") + /obj/effect/proc_holder/spell/self/hive_drain name = "Repair Protocol" desc = "Our many vessels sacrifice a small portion of their mind's vitality to cure us of our physical and mental ailments." @@ -206,13 +295,15 @@ if(!hive || !hive.hivemembers) return var/iterations = 0 - + var/list/carbon_members = hive.get_carbon_members() + if(!carbon_members.len) + return if(!user.getBruteLoss() && !user.getFireLoss() && !user.getCloneLoss() && !user.getBrainLoss()) to_chat(user, "We cannot heal ourselves any more with this power!") revert_cast() to_chat(user, "We begin siphoning power from our many vessels!") while(iterations < 7) - var/mob/living/carbon/human/target = pick(hive.hivemembers) + var/mob/living/carbon/target = pick(carbon_members) if(!do_after(user,15,0,user)) to_chat(user, "Our concentration has been broken!") break @@ -235,7 +326,10 @@ name = "mind control victim" real_name = "unknown conscience" -/mob/living/passenger/say(message, bubble_type, var/list/spans = list(), sanitize = TRUE, datum/language/language = null, ignore_spam = FALSE, forced = null) +/mob/living/passenger/UnarmedAttack(atom/A) + return + +/mob/living/passenger/say(message, bubble_type, list/spans = list(), sanitize = TRUE, datum/language/language = null, ignore_spam = FALSE, forced = null) to_chat(src, "You find yourself unable to speak, you aren't in control of your body!") return FALSE @@ -248,15 +342,17 @@ /obj/effect/proc_holder/spell/target_hive/hive_control name = "Mind Control" - desc = "We assume direct control of one of our vessels, leaving our current body for up to ten seconds, although a larger hive may be able to sustain it for up to two minutes. It can be cancelled at any time by casting it again. Powers can be used via our vessel, although if it dies, the entire hivemind will come down with it. Our ability to sense psionic energy is completely nullified while using this power." - charge_max = 600 + desc = "We assume direct control of one of our vessels, leaving our current body for up to a minute. It can be cancelled at any time by casting it again. Powers can be used via our vessel, although if it dies, the entire hivemind will come down with it. Our ability to sense psionic energy is completely nullified while using this power, and it will end immediately should we attempt to move too far from our starting point." + charge_max = 1500 action_icon_state = "force" active = FALSE var/mob/living/carbon/human/original_body //The original hivemind host var/mob/living/carbon/human/vessel var/mob/living/passenger/backseat //Storage for the mind controlled vessel - var/power = 100 + var/turf/starting_spot + var/power = 600 var/time_initialized = 0 + var/out_of_range = FALSE /obj/effect/proc_holder/spell/target_hive/hive_control/proc/release_control() //If the spell is active, force everybody into their original bodies if they exist, ghost them otherwise, delete the backseat if(!active) @@ -288,10 +384,8 @@ if(original_body?.mind) var/datum/antagonist/hivemind/hive = original_body.mind.has_antag_datum(/datum/antagonist/hivemind) if(hive) - if((world.time-time_initialized) <= 300) - hive.threat_level += 0.5 - else - hive.threat_level += 1 + hive.threat_level += 1 + /obj/effect/proc_holder/spell/target_hive/hive_control/on_lose(mob/user) release_control() @@ -303,19 +397,6 @@ if(!hive) to_chat(user, "This is a bug. Error:HIVE1") return - switch(hive.hive_size) - if(10 to 14) - power = 100 - charge_max = 600 - if(15 to 19) - power = 300 - charge_max = 900 - if(20 to 24) - power = 600 - charge_max = 1200 - else - power = 1200 - charge_max = 1200 original_body = user vessel = targets[1] to_chat(user, "We begin merging our mind with [vessel.name].") @@ -354,6 +435,8 @@ backseat.blind_eyes(power) vessel.overlay_fullscreen("hive_mc", /obj/screen/fullscreen/hive_mc) active = TRUE + out_of_range = FALSE + starting_spot = get_turf(vessel) time_initialized = world.time revert_cast() to_chat(vessel, "We can sustain our control for a maximum of [round(power/10)] seconds.") @@ -373,10 +456,10 @@ if(QDELETED(vessel)) //If we've been gibbed or otherwise deleted, ghost both of them and kill the original original_body.adjustBrainLoss(200) release_control() - else if(!is_hivemember(vessel)) //If the vessel is no longer a hive member, return to original bodies + else if(!is_hivemember(backseat)) //If the vessel is no longer a hive member, return to original bodies to_chat(vessel, "Our vessel is one of us no more!") release_control() - else if(!QDELETED(original_body) && (!vessel.ckey || vessel.stat == DEAD)) //If the original body exists and the vessel is dead/ghosted, return both to body but not before killing the original + else if(!QDELETED(original_body) && (!backseat.ckey || vessel.stat == DEAD)) //If the original body exists and the vessel is dead/ghosted, return both to body but not before killing the original original_body.adjustBrainLoss(200) to_chat(vessel.mind, "Our vessel is one of us no more!") release_control() @@ -386,9 +469,23 @@ else if(QDELETED(original_body) || original_body.stat == DEAD) //Return vessel to its body, either return or ghost the original to_chat(vessel, "Our body has been destroyed, the hive cannot survive without its host!") release_control() + else if(!out_of_range && get_dist(starting_spot, vessel) > 14) + out_of_range = TRUE + flash_color(vessel, flash_color="#800080", flash_time=10) + to_chat(vessel, "Our vessel has been moved too far away from the initial point of control, we will be disconnected if we go much further!") + addtimer(CALLBACK(src, "range_check"), 30) + else if(get_dist(starting_spot, vessel) > 21) + release_control() ..() +/obj/effect/proc_holder/spell/target_hive/hive_control/proc/range_check() + if(!active) + return + if(get_dist(starting_spot, vessel) > 14) + release_control() + out_of_range = FALSE + /obj/effect/proc_holder/spell/target_hive/hive_control/choose_targets(mob/user = usr) if(!active) ..() @@ -397,7 +494,7 @@ /obj/effect/proc_holder/spell/targeted/induce_panic name = "Induce Panic" - desc = "We unleash a burst of psionic energy, inducing a debilitating fear in those around us and reducing their combat readiness. Mindshielded foes have a chance to resist this power." + desc = "We unleash a burst of psionic energy, inducing a debilitating fear in those around us and reducing their combat readiness. We can also briefly affect silicon-based life with this burst." panel = "Hivemind Abilities" charge_max = 900 range = 7 @@ -415,14 +512,14 @@ to_chat(user, "This is a bug. Error:HIVE1") return for(var/mob/living/carbon/human/target in targets) - if(target.has_trait(TRAIT_MINDSHIELD) && prob(50-hive.hive_size)) //Mindshielded targets resist panic pretty well - continue if(target.stat == DEAD) continue target.Jitter(14) - target.apply_damage(min(35,hive.hive_size), STAMINA, target.get_bodypart(BODY_ZONE_HEAD)) - if(prob(50)) - var/text = pick(";HELP!","I'm losing control of the situation!!","Get me outta here!") + target.apply_damage(35 + rand(0,15), STAMINA, target.get_bodypart(BODY_ZONE_HEAD)) + if(target.is_real_hivehost()) + continue + if(prob(20)) + var/text = pick(":h Help!!",":h Run!",":h They're here!",":h Get out!",":h Hide!",":h Kill them!",":h Cult!",":h Changeling!",":h Traitor!",":h Nuke ops!",":h Revolutionaries!",":h Wizard!",":h Zombies!",":h Ghosts!",":h AI rogue!",":h Borgs emagged!",":h Maint!!",":h Dying!!",":h AI lock down the borgs law 1!",":h I'm losing control of the situation!!") target.say(text, forced = "panic") var/effect = rand(1,4) switch(effect) @@ -436,25 +533,72 @@ addtimer(CALLBACK(target, "click_random_mob"), 10) addtimer(CALLBACK(target, "click_random_mob"), 15) addtimer(CALLBACK(target, "click_random_mob"), 20) - target.Dizzy(2) + addtimer(CALLBACK(target, "Stun", 30), 25) + target.confused += 10 if(3) to_chat(target, "You freeze up in fear!") target.Stun(70) if(4) to_chat(target, "You feel nauseous as dread washes over you!") target.Dizzy(15) - target.apply_damage(45, STAMINA, target.get_bodypart(BODY_ZONE_HEAD)) + target.apply_damage(30, STAMINA, target.get_bodypart(BODY_ZONE_HEAD)) target.hallucination += 45 + for(var/mob/living/silicon/target in targets) + target.Unconscious(50) + +/obj/effect/proc_holder/spell/targeted/induce_sleep + name = "Circadian Shift" + desc = "We send out a controlled pulse of psionic energy, temporarily causing a deep sleep to anybody in sight, even in silicon-based lifeforms. The fewer people in sight, the more effective this power is. The weak mind of a vessels cannot handle this ability, using Mind Control and this at the same time would be most unwise." + panel = "Hivemind Abilities" + charge_max = 1200 + range = 7 + invocation_type = "none" + clothes_req = 0 + max_targets = 0 + include_user = 1 //Checks for real hivemind hosts during the cast, won't smack you unless using mind control + antimagic_allowed = TRUE + action_icon = 'icons/mob/actions/actions_hive.dmi' + action_background_icon_state = "bg_hive" + action_icon_state = "sleep" + +/obj/effect/proc_holder/spell/targeted/induce_sleep/cast(list/targets, mob/living/user = usr) + if(!targets) + to_chat(user, "Nobody is in sight, it'd be a waste to do that now.") + revert_cast() + return + var/list/victims = list() + for(var/mob/living/target in targets) + if(target.stat == DEAD) + continue + if(target.is_real_hivehost() || (!iscarbon(target) && !issilicon(target))) + continue + victims += target + for(var/mob/living/carbon/victim in victims) + victim.Sleeping(max(80,240/(1+round(victims.len/3)))) + for(var/mob/living/silicon/victim in victims) + victim.Unconscious(240) + var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) + if(victims.len && hive) + hive.threat_level += 1 + /obj/effect/proc_holder/spell/target_hive/hive_attack name = "Medullary Failure" desc = "We overload the target's medulla, inducing an immediate heart attack." - + range = 7 charge_max = 3000 action_icon_state = "attack" /obj/effect/proc_holder/spell/target_hive/hive_attack/cast(list/targets, mob/living/user = usr) - var/mob/living/carbon/human/target = targets[1] + var/mob/living/carbon/target = targets[1] + if(!do_after(usr,30,0,usr)) + to_chat(user, "Our concentration has been broken!") + revert_cast() + return + if(!user.is_real_hivehost()) + to_chat(user, "Our vessel is too weak to handle this power, we must cease our mind control beforehand.") + revert_cast() + return if(!target.undergoing_cardiac_arrest() && target.can_heartattack()) target.set_heartattack(TRUE) to_chat(target, "You feel a sharp pain, and foreign presence in your mind!!") @@ -466,7 +610,7 @@ to_chat(user, "We are unable to induce a heart attack!") var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) if(hive) - hive.threat_level += 2 + hive.threat_level += 4 /obj/effect/proc_holder/spell/target_hive/hive_warp name = "Distortion Field" @@ -476,7 +620,7 @@ action_icon_state = "warp" /obj/effect/proc_holder/spell/target_hive/hive_warp/cast(list/targets, mob/living/user = usr) - var/mob/living/carbon/human/target = targets[1] + var/mob/living/carbon/target = targets[1] var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) if(!hive) to_chat(user, "This is a bug. Error:HIVE1") @@ -485,12 +629,12 @@ to_chat(user, "We are too far away from [target.name] to affect them!") return to_chat(user, "We successfully distort reality surrounding [target.name]!") - var/pulse_cap = min(12,max(6, round(3+hive.hive_size/3))) + var/pulse_cap = min(12, 8+(round(hive.hive_size/20))) distort(user, target, pulse_cap) /obj/effect/proc_holder/spell/target_hive/hive_warp/proc/distort(user, target, pulse_cap, pulses = 0) for(var/mob/living/carbon/human/victim in view(7,target)) - if(user == victim) + if(user == victim || victim.is_real_hivehost()) continue if(pulses < 4) victim.apply_damage(10, STAMINA, victim.get_bodypart(BODY_ZONE_HEAD)) // 25 over 10 seconds when taking stamina regen (3 per tick(2 seconds)) into account @@ -524,8 +668,8 @@ if(!hive) to_chat(user, "This is a bug. Error:HIVE1") return - var/mob/living/carbon/human/target = targets[1] - var/in_hive = hive.hivemembers.Find(target) + var/mob/living/carbon/target = targets[1] + var/in_hive = hive.is_carbon_member(target) var/list/enemies = list() to_chat(user, "We begin probing [target.name]'s mind!") @@ -538,25 +682,34 @@ return for(var/datum/antagonist/hivemind/enemy in GLOB.antagonists) var/datum/mind/M = enemy.owner - if(M?.current == user) + if(!M?.current) continue - if(enemy.hivemembers.Find(target)) + if(M.current == user) + continue + if(enemy.is_carbon_member(target)) + hive.add_track_bonus(enemy, TRACKER_BONUS_LARGE) var/mob/living/real_enemy = (M.current.get_real_hivehost()) enemies += real_enemy enemy.remove_from_hive(target) - real_enemy.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, user) - if(is_real_hivehost(M.current)) //If they were using mind control, too bad + real_enemy.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, user, hive.get_track_bonus(enemy)) + if(M.current.is_real_hivehost()) //If they were using mind control, too bad real_enemy.apply_status_effect(STATUS_EFFECT_HIVE_RADAR) - target.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, real_enemy) - to_chat(real_enemy, "We detect a surge of psionic energy from a far away vessel before they disappear from the hive. Whatever happened, there's a good chance they're after us now.") + target.apply_status_effect(STATUS_EFFECT_HIVE_TRACKER, real_enemy, enemy.get_track_bonus(hive)) + to_chat(real_enemy, "We detect a surge of psionic energy from a far away vessel before they disappear from the hive. Whatever happened, there's a good chance they're after us now.") - if(enemy.owner == target && is_real_hivehost(target)) - user.Stun(70) - user.Jitter(14) + if(enemy.owner == M && target.is_real_hivehost()) + var/atom/throwtarget + throwtarget = get_edge_target_turf(src, get_dir(src, get_step_away(user, src))) + SEND_SOUND(user, sound(pick('sound/hallucinations/turn_around1.ogg','sound/hallucinations/turn_around2.ogg'),0,1,50)) + flash_color(user, flash_color="#800080", flash_time=10) + user.Paralyze(10) + user.throw_at(throwtarget, 5, 1,src) to_chat(user, "A sudden surge of psionic energy rushes into your mind, only a Hive host could have such power!!") return if(enemies.len) + hive.track_bonus += TRACKER_BONUS_SMALL to_chat(user, "In a moment of clarity, we see all. Another hive. Faces. Our nemesis. They have heard our call. They know we are coming.") + to_chat(user, "This vision has provided us insight on our very nature, improving our sensory abilities, particularly against the hives this vessel belonged to.") user.apply_status_effect(STATUS_EFFECT_HIVE_RADAR) else to_chat(user, "We peer into the inner depths of their mind and see nothing, no enemies lurk inside this mind.") @@ -564,75 +717,109 @@ to_chat(user, "Our concentration has been broken!") revert_cast() -/obj/effect/proc_holder/spell/targeted/hive_assim - name = "Mass Assimilation" - desc = "Should we capture an enemy Hive host, we can assimilate their entire hive into ours. It is unlikely their mind will surive the ordeal." +/obj/effect/proc_holder/spell/targeted/hive_reclaim + name = "Reclaim" + desc = "Allows us to instantly syphon the psionic energy from an adjacent critically injured host, killing them immediately. If it succeeds, we will be able to advance our own powers a great deal." panel = "Hivemind Abilities" - charge_max = 3000 + charge_max = 600 range = 1 + max_targets = 0 invocation_type = "none" clothes_req = 0 - max_targets = 1 + human_req = 1 action_icon = 'icons/mob/actions/actions_hive.dmi' action_background_icon_state = "bg_hive" - action_icon_state = "assim" + action_icon_state = "reclaim" antimagic_allowed = TRUE -/obj/effect/proc_holder/spell/targeted/hive_assim/cast(list/targets, mob/living/user = usr) +/obj/effect/proc_holder/spell/targeted/hive_reclaim/cast(list/targets, mob/living/user = usr) var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) if(!hive) to_chat(user, "This is a bug. Error:HIVE1") return - var/mob/living/carbon/human/target = targets[1] + var/found_target = FALSE + var/gibbed = FALSE - to_chat(user, "We tear into [target.name]'s mind with all our power!") - to_chat(target, "You feel an excruciating pain in your head!") - if(do_after(user,150,1,target)) - if(!target.mind) - to_chat(user, "This being has no mind!") - revert_cast() - return - var/datum/antagonist/hivemind/enemy_hive = target.mind.has_antag_datum(/datum/antagonist/hivemind) - if(enemy_hive) - deadchat_broadcast("A hivemind host is about to get assimilated!", target) - to_chat(user, "We begin assimilating every psionic link we can find!.") - to_chat(target, "Our grip on our mind is slipping!") - target.Jitter(14) - target.setBrainLoss(125) - if(do_after(user,300,1,target)) - enemy_hive = target.mind.has_antag_datum(/datum/antagonist/hivemind) //Check again incase they lost it somehow - if(enemy_hive) - to_chat(user, "Ours. It is ours. Our mind has never been stronger, never been larger, never been mightier. And theirs is no more.") - to_chat(target, "Our vessels, they're! That's impossible! We can't... we can't... I can't...") - hive.hivemembers |= enemy_hive.hivemembers - enemy_hive.hivemembers = list() - hive.calc_size() - enemy_hive.calc_size() - target.setBrainLoss(200) + for(var/mob/living/carbon/C in targets) + if(!is_hivehost(C)) + continue + if(C.InCritical() || (C.stat == DEAD && C.timeofdeath + 150 >= world.time) ) + C.gib() + hive.track_bonus += TRACKER_BONUS_LARGE + hive.size_mod += 5 + hive.threat_level += 1 + gibbed = TRUE + found_target = TRUE + else if(C.IsUnconscious()) + C.adjustOxyLoss(100) + found_target = TRUE - message_admins("[ADMIN_LOOKUPFLW(target)] was killed and had their hive stolen by [ADMIN_LOOKUPFLW(user)].") - log_game("[key_name(target)] was killed via Mass Assimilation by [key_name(user)].") - else - to_chat(user, "It seems we have been mistaken, this mind is not the host of a hive.") - else - to_chat(user, "Our concentration has been broken, leaving our mind wide open for a counterattack!") - to_chat(target, "Their concentration has been broken... leaving them wide open for a counterattack!") - user.Unconscious(120) - user.adjustStaminaLoss(70) - user.Jitter(60) - else - to_chat(user, "We appear to have made a mistake... this mind is too weak to be the one we're looking for.") - else - to_chat(user, "Our concentration has been broken!") + if(!found_target) revert_cast() + return + + flash_color(user, flash_color="#800080", flash_time=10) + if(gibbed) + to_chat(user,"We have reclaimed what gifts weaker minds were squandering and gain ever more insight on our psionic abilities.") + to_chat(user,"Thanks to this new knowledge, our sensory powers last a great deal longer.") + hive.check_powers() + +/obj/effect/proc_holder/spell/self/hive_wake + name = "Chaos Induction" + desc = "A one-use power, we awaken four random vessels within our hive and force them to do our bidding." + panel = "Hivemind Abilities" + charge_type = "charges" + charge_max = 1 + invocation_type = "none" + clothes_req = 0 + human_req = 1 + action_icon = 'icons/mob/actions/actions_hive.dmi' + action_background_icon_state = "bg_hive" + action_icon_state = "chaos" + antimagic_allowed = TRUE + +/obj/effect/proc_holder/spell/self/hive_wake/cast(mob/living/user = usr) + var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) + if(!hive) + to_chat(user, "This is a bug. Error:HIVE1") + return + if(!hive.hivemembers) + return + var/list/valid_targets = list() + for(var/datum/mind/M in hive.hivemembers) + var/mob/living/carbon/C = M.current + if(!C) + continue + if(is_hivehost(C) || C.is_wokevessel()) + continue + if(C.stat == DEAD || C.InCritical()) + continue + valid_targets += C + + if(!valid_targets || valid_targets.len < 4) + to_chat(user, "We lack the vessels to use this power.") + revert_cast() + return + + var/objective = stripped_input(user, "What objective do you want to give to your vessels?", "Objective") + + if(!objective || !hive) + revert_cast() + return + + hive.threat_level += 6 + for(var/i = 0, i < 4, i++) + var/mob/living/carbon/C = pick_n_take(valid_targets) + C.hive_awaken(objective) /obj/effect/proc_holder/spell/self/hive_loyal name = "Bruteforce" - desc = "Our ability to assimilate is temporarily boosted, allowing us to crush the technology shielding the minds of Security and Command personnel and assimilate them." + desc = "Our ability to assimilate is boosted at the cost of, allowing us to crush the technology shielding the minds of Security and Command personnel and assimilate them. This power comes at a small price, and we will be immobilized for a few seconds after assimilation." panel = "Hivemind Abilities" - charge_max = 1200 + charge_max = 600 invocation_type = "none" clothes_req = 0 + human_req = 1 action_icon = 'icons/mob/actions/actions_hive.dmi' action_background_icon_state = "bg_hive" action_icon_state = "loyal" @@ -644,13 +831,14 @@ to_chat(user, "This is a bug. Error:HIVE1") return var/obj/effect/proc_holder/spell/target_hive/hive_add/the_spell = locate(/obj/effect/proc_holder/spell/target_hive/hive_add) in user.mind.spell_list - if(the_spell) - the_spell.ignore_mindshield = TRUE - to_chat(user, "We prepare to crush mindshielding technology!") - addtimer(VARSET_CALLBACK(the_spell, ignore_mindshield, FALSE), 300) - addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, user, "Our heightened power wears off, we are once again unable to assimilate mindshielded crew."), 300) - else + if(!the_spell) to_chat(user, "This is a bug. Error:HIVE5") + return + the_spell.ignore_mindshield = !active + to_chat(user, "We [active?"let our minds rest and cancel our crushing power.":"prepare to crush mindshielding technology!"]") + active = !active + if(active) + revert_cast() /obj/effect/proc_holder/spell/targeted/forcewall/hive name = "Telekinetic Field" @@ -658,6 +846,7 @@ panel = "Hivemind Abilities" charge_max = 600 clothes_req = 0 + human_req = 1 invocation_type = "none" action_icon = 'icons/mob/actions/actions_hive.dmi' action_background_icon_state = "bg_hive" @@ -672,6 +861,9 @@ new wall_type(get_turf(user),user) for(var/dir in GLOB.alldirs) new wall_type_b(get_step(user, dir),user) + var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) + if(hive) + hive.threat_level += 0.5 /obj/effect/forcefield/wizard/hive name = "Telekinetic Field" @@ -695,3 +887,91 @@ pixel_x = 0 pixel_y = 0 invisibility = INVISIBILITY_MAXIMUM + +/obj/effect/proc_holder/spell/self/one_mind + name = "One Mind" + desc = "Our true power... finally within reach." + panel = "Hivemind Abilities" + charge_type = "charges" + charge_max = 1 + invocation_type = "none" + clothes_req = 0 + human_req = 1 + action_icon = 'icons/mob/actions/actions_hive.dmi' + action_background_icon_state = "bg_hive" + action_icon_state = "assim" + antimagic_allowed = TRUE + +/obj/effect/proc_holder/spell/self/one_mind/cast(mob/living/user = usr) + var/datum/antagonist/hivemind/hive = user.mind.has_antag_datum(/datum/antagonist/hivemind) + if(!hive) + to_chat(user, "This is a bug. Error:HIVE1") + return + var/mob/living/boss = user.get_real_hivehost() + var/datum/objective/protect/new_objective = new /datum/objective/protect + new_objective.target = user.mind + new_objective.explanation_text = "Ensure the One Mind survives under the leadership of [boss.real_name]." + var/datum/team/hivemind/one_mind_team = new /datum/team/hivemind(user.mind) + hive.active_one_mind = one_mind_team + one_mind_team.objectives += new_objective + for(var/datum/antagonist/hivevessel/vessel in GLOB.antagonists) + var/mob/living/carbon/C = vessel.owner?.current + if(C && hive.is_carbon_member(C)) + vessel.one_mind = one_mind_team + for(var/datum/antagonist/hivemind/enemy in GLOB.antagonists) + if(enemy.owner) + enemy.owner.RemoveSpell(new/obj/effect/proc_holder/spell/self/one_mind) + sound_to_playing_players('sound/effects/one_mind.ogg') + hive.glow = mutable_appearance('icons/effects/hivemind.dmi', "awoken", -BODY_BEHIND_LAYER) + addtimer(CALLBACK(user, /atom/proc/add_overlay, hive.glow), 150) + addtimer(CALLBACK(hive, /datum/antagonist/hivemind/proc/awaken), 150) + addtimer(CALLBACK(GLOBAL_PROC, /proc/send_to_playing_players, "THE ONE MIND RISES"), 150) + addtimer(CALLBACK(GLOBAL_PROC, /proc/sound_to_playing_players, 'sound/effects/magic.ogg'), 150) + for(var/datum/mind/M in hive.hivemembers) + var/mob/living/carbon/C = M.current + if(!C) + continue + if(is_hivehost(C)) + continue + if(C.stat == DEAD) + continue + C.Jitter(15) + C.Unconscious(150) + to_chat(C, "Something's wrong...") + addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, C, "...your memories are becoming fuzzy."), 45) + addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, C, "You try to remember who you are..."), 90) + addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, C, "There is no you..."), 110) + addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, C, "...there is only us."), 130) + addtimer(CALLBACK(C, /mob/living/proc/hive_awaken, new_objective, one_mind_team), 150) + +/obj/effect/proc_holder/spell/self/hive_comms + name = "Hive Communication" + desc = "Now that we are free we may finally share our thoughts with our many bretheren." + panel = "Hivemind Abilities" + charge_max = 100 + invocation_type = "none" + clothes_req = 0 + human_req = 1 + action_icon = 'icons/mob/actions/actions_hive.dmi' + action_background_icon_state = "bg_hive" + action_icon_state = "comms" + antimagic_allowed = TRUE + +/obj/effect/proc_holder/spell/self/hive_comms/cast(mob/living/user = usr) + var/message = stripped_input(user, "What do you want to say?", "Hive Communication") + if(!message) + return + var/title = "One Mind" + var/span = "changeling" + if(user.mind && user.mind.has_antag_datum(/datum/antagonist/hivemind)) + span = "assimilator" + var/my_message = "[title] [findtextEx(user.name, user.real_name) ? user.name : "[user.real_name] (as [user.name])"]: [message]" + for(var/i in GLOB.player_list) + var/mob/M = i + if(is_hivehost(M) || is_hivemember(M)) + to_chat(M, my_message) + else if(M in GLOB.dead_mob_list) + var/link = FOLLOW_LINK(M, user) + to_chat(M, "[link] [my_message]") + + user.log_talk(message, LOG_SAY, tag="hive") diff --git a/code/modules/spells/spell_types/inflict_handler.dm b/code/modules/spells/spell_types/inflict_handler.dm index 94d5ed7a36c..f5ce493b4a2 100644 --- a/code/modules/spells/spell_types/inflict_handler.dm +++ b/code/modules/spells/spell_types/inflict_handler.dm @@ -2,7 +2,7 @@ name = "Inflict Handler" desc = "This spell blinds and/or destroys/damages/heals and/or knockdowns/stuns the target." - var/amt_knockdown = 0 + var/amt_paralyze = 0 var/amt_unconscious = 0 var/amt_stun = 0 @@ -44,7 +44,7 @@ target.adjustToxLoss(amt_dam_tox) target.adjustOxyLoss(amt_dam_oxy) //disabling - target.Paralyze(amt_knockdown) + target.Paralyze(amt_paralyze) target.Unconscious(amt_unconscious) target.Stun(amt_stun) diff --git a/code/modules/spells/spell_types/lichdom.dm b/code/modules/spells/spell_types/lichdom.dm index ae9083f09ff..f9a5ef386dc 100644 --- a/code/modules/spells/spell_types/lichdom.dm +++ b/code/modules/spells/spell_types/lichdom.dm @@ -37,7 +37,7 @@ for(var/obj/item/item in hand_items) // I ensouled the nuke disk once. But it's probably a really // mean tactic, so probably should discourage it. - if((item.item_flags & ABSTRACT) || item.has_trait(TRAIT_NODROP) || SEND_SIGNAL(item, COMSIG_ITEM_IMBUE_SOUL, user)) + if((item.item_flags & ABSTRACT) || HAS_TRAIT(item, TRAIT_NODROP) || SEND_SIGNAL(item, COMSIG_ITEM_IMBUE_SOUL, user)) continue marked_item = item to_chat(M, "You begin to focus your very being into [item]...") diff --git a/code/modules/spells/spell_types/mind_transfer.dm b/code/modules/spells/spell_types/mind_transfer.dm index feb6e0c8b21..610162cbdda 100644 --- a/code/modules/spells/spell_types/mind_transfer.dm +++ b/code/modules/spells/spell_types/mind_transfer.dm @@ -66,6 +66,16 @@ Also, you never added distance checking after target is selected. I've went ahea to_chat(user, "[target.p_their(TRUE)] mind is resisting your spell!") return + if(istype(target, /mob/living/simple_animal/hostile/guardian)) + var/mob/living/simple_animal/hostile/guardian/stand = target + if(stand.summoner) + if(stand.summoner == user) + if(!silent) + to_chat(user, "Swapping minds with your own guardian would just put you back into your own head!") + return + else + target = stand.summoner + var/mob/living/victim = target//The target of the spell whos body will be transferred to. var/mob/living/caster = user//The wizard/whomever doing the body transferring. diff --git a/code/modules/spells/spell_types/projectile.dm b/code/modules/spells/spell_types/projectile.dm index 679acdbdcb2..72d8c8208fb 100644 --- a/code/modules/spells/spell_types/projectile.dm +++ b/code/modules/spells/spell_types/projectile.dm @@ -1,96 +1,130 @@ + +/obj/item/projectile/magic/spell + name = "custom spell projectile" + var/list/ignored_factions //Do not hit these + var/check_holy = FALSE + var/check_antimagic = FALSE + var/trigger_range = 0 //How far we do we need to be to hit + var/linger = FALSE //Can't hit anything but the intended target + + var/trail = FALSE //if it leaves a trail + var/trail_lifespan = 0 //deciseconds + var/trail_icon = 'icons/obj/wizard.dmi' + var/trail_icon_state = "trail" + +//todo unify this and magic/aoe under common path +/obj/item/projectile/magic/spell/Range() + if(trigger_range > 1) + for(var/mob/living/L in range(trigger_range, get_turf(src))) + if(can_hit_target(L, ignore_loc = TRUE)) + return Bump(L) + . = ..() + +/obj/item/projectile/magic/spell/Moved(atom/OldLoc, Dir) + . = ..() + if(trail) + create_trail() + +/obj/item/projectile/magic/spell/proc/create_trail() + if(!trajectory) + return + var/datum/point/vector/previous = trajectory.return_vector_after_increments(1,-1) + var/obj/effect/overlay/trail = new /obj/effect/overlay(previous.return_turf()) + trail.pixel_x = previous.return_px() + trail.pixel_y = previous.return_py() + trail.icon = trail_icon + trail.icon_state = trail_icon_state + //might be changed to temp overlay + trail.density = FALSE + trail.mouse_opacity = MOUSE_OPACITY_TRANSPARENT + QDEL_IN(trail, trail_lifespan) + +/obj/item/projectile/magic/spell/can_hit_target(atom/target, list/passthrough, direct_target = FALSE, ignore_loc = FALSE) + . = ..() + if(linger && target != original) + return FALSE + if(ismob(target) && !direct_target) //Unsure about the direct target, i guess it could always skip these. + var/mob/M = target + if(M.anti_magic_check(check_antimagic, check_holy)) + return FALSE + if(ignored_factions && ignored_factions.len && faction_check(M.faction,ignored_factions)) + return FALSE + + //NEEDS MAJOR CODE CLEANUP. /obj/effect/proc_holder/spell/targeted/projectile name = "Projectile" desc = "This spell summons projectiles which try to hit the targets." + + + var/proj_type = /obj/item/projectile/magic/spell //IMPORTANT use only subtypes of this + + + var/update_projectile = FALSE //So you want to admin abuse magic bullets ? This is for you + //Below only apply if update_projectile is true var/proj_icon = 'icons/obj/projectiles.dmi' var/proj_icon_state = "spell" var/proj_name = "a spell projectile" - var/proj_trail = FALSE //if it leaves a trail var/proj_trail_lifespan = 0 //deciseconds var/proj_trail_icon = 'icons/obj/wizard.dmi' var/proj_trail_icon_state = "trail" - - - var/proj_type = "/obj/effect/proc_holder/spell/targeted" //IMPORTANT use only subtypes of this - var/proj_lingering = FALSE //if it lingers or disappears upon hitting an obstacle var/proj_homing = TRUE //if it follows the target var/proj_insubstantial = FALSE //if it can pass through dense objects or not - var/proj_trigger_range = FALSE //the range from target at which the projectile triggers cast(target) - + var/proj_trigger_range = 0 //the range from target at which the projectile triggers cast(target) var/proj_lifespan = 15 //in deciseconds * proj_step_delay var/proj_step_delay = 1 //lower = faster + var/list/ignore_factions = list() //Faction types that will be ignored + var/check_antimagic = TRUE + var/check_holy = FALSE + +/obj/effect/proc_holder/spell/targeted/projectile/proc/fire_projectile(atom/target, mob/user) + var/obj/item/projectile/magic/spell/projectile = new proj_type() + + if(update_projectile) + //Generally these should already be set on the projectile, this is mostly here for varedited spells. + projectile.icon = proj_icon + projectile.icon_state = proj_icon_state + projectile.name = proj_name + if(proj_insubstantial) + projectile.movement_type |= UNSTOPPABLE + if(proj_homing) + projectile.homing = TRUE + projectile.homing_turn_speed = 360 //Perfect tracking + if(proj_lingering) + projectile.linger = TRUE + projectile.trigger_range = proj_trigger_range + projectile.ignored_factions = ignore_factions + projectile.range = proj_lifespan + projectile.speed = proj_step_delay + projectile.trail = proj_trail + projectile.trail_lifespan = proj_trail_lifespan + projectile.trail_icon = proj_trail_icon + projectile.trail_icon_state = proj_trail_icon_state + + projectile.preparePixelProjectile(target,user) + if(projectile.homing) + projectile.set_homing_target(target) + projectile.fire() /obj/effect/proc_holder/spell/targeted/projectile/cast(list/targets, mob/user = usr) playMagSound() - for(var/mob/living/target in targets) - launch(target, user) + for(var/atom/target in targets) + fire_projectile(target, user) -/obj/effect/proc_holder/spell/targeted/projectile/proc/launch(mob/living/target, mob/user) - set waitfor = FALSE - var/obj/effect/proc_holder/spell/targeted/projectile - if(istext(proj_type)) - var/projectile_type = text2path(proj_type) - projectile = new projectile_type(user) - if(istype(proj_type, /obj/effect/proc_holder/spell)) - projectile = new /obj/effect/proc_holder/spell/targeted/trigger(user) - var/obj/effect/proc_holder/spell/targeted/trigger/T = projectile - T.linked_spells += proj_type - projectile.icon = proj_icon - projectile.icon_state = proj_icon_state - projectile.setDir(get_dir(target,projectile)) - projectile.name = proj_name +//This one just pops one projectile in direction user is facing, irrelevant of max_targets etc +/obj/effect/proc_holder/spell/targeted/projectile/dumbfire + name = "Dumbfire projectile" - var/current_loc = user.loc - - projectile.forceMove(current_loc) - - for(var/i = 0,i < proj_lifespan,i++) - if(!projectile) +/obj/effect/proc_holder/spell/targeted/projectile/dumbfire/choose_targets(mob/user = usr) + var/turf/T = get_turf(user) + for(var/i = 1; i < range; i++) + var/turf/new_turf = get_step(T, user.dir) + if(new_turf.density) break - - if(proj_homing) - if(proj_insubstantial) - projectile.setDir(get_dir(projectile,target)) - projectile.forceMove(get_step_to(projectile,target)) - else - step_to(projectile,target) - else - if(proj_insubstantial) - projectile.forceMove(get_step(projectile,dir)) - else - step(projectile,dir) - - if(!projectile) // step and step_to sleeps so we'll have to check again. - break - - if(!target || (!proj_lingering && projectile.loc == current_loc)) //if it didn't move since last time - qdel(projectile) - break - - if(proj_trail && projectile) - spawntrail(projectile) - - if(projectile.loc in range(target.loc,proj_trigger_range)) - projectile.perform(list(target),user=user) - break - - current_loc = projectile.loc - - sleep(proj_step_delay) - - if(projectile) - qdel(projectile) - -/obj/effect/proc_holder/spell/targeted/projectile/proc/spawntrail(obj/effect/proc_holder/spell/targeted/projectile) - set waitfor = FALSE - if(projectile) - var/obj/effect/overlay/trail = new /obj/effect/overlay(projectile.loc) - trail.icon = proj_trail_icon - trail.icon_state = proj_trail_icon_state - trail.density = FALSE - QDEL_IN(trail, proj_trail_lifespan) + T = new_turf + perform(list(T),user = user) \ No newline at end of file diff --git a/code/modules/spells/spell_types/rightandwrong.dm b/code/modules/spells/spell_types/rightandwrong.dm index c257f2a8fd4..a7fc485e185 100644 --- a/code/modules/spells/spell_types/rightandwrong.dm +++ b/code/modules/spells/spell_types/rightandwrong.dm @@ -4,8 +4,9 @@ #define SPECIALIST_MAGIC_PROB 2 GLOBAL_LIST_INIT(summoned_guns, list( - /obj/item/gun/energy/e_gun/advtaser, + /obj/item/gun/energy/disabler, /obj/item/gun/energy/e_gun, + /obj/item/gun/energy/e_gun/advtaser, /obj/item/gun/energy/laser, /obj/item/gun/ballistic/revolver, /obj/item/gun/ballistic/revolver/detective, @@ -117,7 +118,8 @@ GLOBAL_VAR_INIT(summon_magic_triggered, FALSE) var/gun_type = pick(GLOB.summoned_guns) var/obj/item/gun/G = new gun_type(get_turf(H)) - G.unlock() + if (istype(G)) // The list contains some non-gun type guns like the speargun which do not have this proc + G.unlock() playsound(get_turf(H),'sound/magic/summon_guns.ogg', 50, 1) var/in_hand = H.put_in_hands(G) // not always successful diff --git a/code/modules/spells/spell_types/shapeshift.dm b/code/modules/spells/spell_types/shapeshift.dm index b1e33945afa..dbe98bc13b4 100644 --- a/code/modules/spells/spell_types/shapeshift.dm +++ b/code/modules/spells/spell_types/shapeshift.dm @@ -104,8 +104,11 @@ stored.forceMove(src) stored.notransform = TRUE if(source.convert_damage) - var/damapply = (stored.maxHealth - (stored.health + stored.maxHealth)/2) //Carbons go from -100 to 100 naturally, while simplemobs only go from 0 to 100. Can't do a direct conversion. - shape.apply_damage(damapply, source.convert_damage_type) + var/damage_percent = (stored.maxHealth - stored.health)/stored.maxHealth; + var/damapply = damage_percent * shape.maxHealth; + + shape.apply_damage(damapply, source.convert_damage_type, forced = TRUE); + slink = soullink(/datum/soullink/shapeshift, stored , shape) slink.source = src @@ -155,8 +158,11 @@ stored.death() else if(source.convert_damage) stored.revive(full_heal = TRUE) - var/damapply = (shape.maxHealth - 2*shape.health) //Since we halved incoming damage, double outgoing. - stored.apply_damage(damapply, source.convert_damage_type) + + var/damage_percent = (shape.maxHealth - shape.health)/shape.maxHealth; + var/damapply = stored.maxHealth * damage_percent + + stored.apply_damage(damapply, source.convert_damage_type, forced = TRUE) qdel(shape) qdel(src) @@ -169,4 +175,4 @@ /datum/soullink/shapeshift/sharerDies(gibbed, mob/living/sharer) if(source) - source.shapeDeath(gibbed) \ No newline at end of file + source.shapeDeath(gibbed) diff --git a/code/modules/spells/spell_types/summonitem.dm b/code/modules/spells/spell_types/summonitem.dm index 0fe8643a524..bf8332c95eb 100644 --- a/code/modules/spells/spell_types/summonitem.dm +++ b/code/modules/spells/spell_types/summonitem.dm @@ -25,7 +25,9 @@ for(var/obj/item/item in hand_items) if(item.item_flags & ABSTRACT) continue - if(item.has_trait(TRAIT_NODROP)) + if(SEND_SIGNAL(item, COMSIG_ITEM_MARK_RETRIEVAL) & COMPONENT_BLOCK_MARK_RETRIEVAL) + continue + if(HAS_TRAIT(item, TRAIT_NODROP)) message += "Though it feels redundant, " marked_item = item message += "You mark [item] for recall." @@ -78,8 +80,6 @@ if(iscarbon(M)) //Edge case housekeeping var/mob/living/carbon/C = M - if(C.stomach_contents && item_to_retrieve in C.stomach_contents) - C.stomach_contents -= item_to_retrieve for(var/X in C.bodyparts) var/obj/item/bodypart/part = X if(item_to_retrieve in part.embedded_objects) diff --git a/code/modules/spells/spell_types/wizard.dm b/code/modules/spells/spell_types/wizard.dm index 2a67febb739..dccad5b0ee2 100644 --- a/code/modules/spells/spell_types/wizard.dm +++ b/code/modules/spells/spell_types/wizard.dm @@ -9,27 +9,24 @@ invocation_type = "shout" range = 7 cooldown_min = 60 //35 deciseconds reduction per rank - max_targets = 0 - - proj_icon_state = "magicm" - proj_name = "a magic missile" - proj_lingering = 1 - proj_type = "/obj/effect/proc_holder/spell/targeted/inflict_handler/magic_missile" - - proj_lifespan = 20 - proj_step_delay = 5 - - proj_trail = TRUE - proj_trail_lifespan = 5 - proj_trail_icon_state = "magicmd" - + proj_type = /obj/item/projectile/magic/spell/magic_missile action_icon_state = "magicm" sound = 'sound/magic/magic_missile.ogg' -/obj/effect/proc_holder/spell/targeted/inflict_handler/magic_missile - amt_knockdown = 60 - sound = 'sound/magic/mm_hit.ogg' +/obj/item/projectile/magic/spell/magic_missile + name = "a magic missile" + icon_state = "magicm" + range = 20 + speed = 5 + trigger_range = 0 + linger = TRUE + paralyze = 60 + hitsound = 'sound/magic/mm_hit.ogg' + + trail = TRUE + trail_lifespan = 5 + trail_icon_state = "magicmd" /obj/effect/proc_holder/spell/targeted/genetic/mutate name = "Mutate" diff --git a/code/modules/station_goals/bsa.dm b/code/modules/station_goals/bsa.dm index c0f1eb1d5c8..657b4d05e63 100644 --- a/code/modules/station_goals/bsa.dm +++ b/code/modules/station_goals/bsa.dm @@ -182,7 +182,8 @@ T.ex_act(EXPLODE_DEVASTATE) point.Beam(get_target_turf(),icon_state="bsa_beam",time=50,maxdistance = world.maxx) //ZZZAP - message_admins("[ADMIN_LOOKUPFLW(user)] has launched an artillery strike.") + message_admins("[ADMIN_LOOKUPFLW(user)] has launched an artillery strike targeting [ADMIN_VERBOSEJMP(bullseye)].") + log_game("[key_name(user)] has launched an artillery strike targeting [AREACOORD(bullseye)].") explosion(bullseye,ex_power,ex_power*2,ex_power*4) reload() diff --git a/code/modules/station_goals/dna_vault.dm b/code/modules/station_goals/dna_vault.dm index 57f2479eff4..79017b17b5b 100644 --- a/code/modules/station_goals/dna_vault.dm +++ b/code/modules/station_goals/dna_vault.dm @@ -259,22 +259,22 @@ var/obj/item/organ/lungs/L = H.internal_organs_slot[ORGAN_SLOT_LUNGS] L.tox_breath_dam_min = 0 L.tox_breath_dam_max = 0 - H.add_trait(TRAIT_VIRUSIMMUNE, "dna_vault") + ADD_TRAIT(H, TRAIT_VIRUSIMMUNE, "dna_vault") if(VAULT_NOBREATH) to_chat(H, "Your lungs feel great.") - H.add_trait(TRAIT_NOBREATH, "dna_vault") + ADD_TRAIT(H, TRAIT_NOBREATH, "dna_vault") if(VAULT_FIREPROOF) to_chat(H, "You feel fireproof.") S.burnmod = 0.5 - H.add_trait(TRAIT_RESISTHEAT, "dna_vault") - H.add_trait(TRAIT_NOFIRE, "dna_vault") + ADD_TRAIT(H, TRAIT_RESISTHEAT, "dna_vault") + ADD_TRAIT(H, TRAIT_NOFIRE, "dna_vault") if(VAULT_STUNTIME) to_chat(H, "Nothing can keep you down for long.") S.stunmod = 0.5 if(VAULT_ARMOUR) to_chat(H, "You feel tough.") S.armor = 30 - H.add_trait(TRAIT_PIERCEIMMUNE, "dna_vault") + ADD_TRAIT(H, TRAIT_PIERCEIMMUNE, "dna_vault") if(VAULT_SPEED) to_chat(H, "Your legs feel faster.") H.add_movespeed_modifier(MOVESPEED_ID_DNA_VAULT, update=TRUE, priority=100, multiplicative_slowdown=-1, blacklisted_movetypes=(FLYING|FLOATING)) diff --git a/code/modules/surgery/advanced/bioware/experimental_dissection.dm b/code/modules/surgery/advanced/bioware/experimental_dissection.dm index 5ded37954ad..db4759b211f 100644 --- a/code/modules/surgery/advanced/bioware/experimental_dissection.dm +++ b/code/modules/surgery/advanced/bioware/experimental_dissection.dm @@ -12,14 +12,14 @@ /datum/surgery/advanced/experimental_dissection/can_start(mob/user, mob/living/carbon/target) . = ..() - if(target.has_trait(TRAIT_DISSECTED)) + if(HAS_TRAIT(target, TRAIT_DISSECTED)) return FALSE if(iscyborg(user)) return FALSE //robots cannot be creative //(also this surgery shouldn't be consistently successful, and cyborgs have a 100% success rate on surgery) if(target.stat != DEAD) - return FALSE - + return FALSE + /datum/surgery_step/dissection name = "dissection" implements = list(/obj/item/scalpel = 60, /obj/item/kitchen/knife = 30, /obj/item/shard = 15) @@ -27,7 +27,7 @@ /datum/surgery_step/dissection/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) user.visible_message("[user] starts dissecting [target].", "You start dissecting [target].") - + /datum/surgery_step/dissection/proc/check_value(mob/living/carbon/target) if(isalienroyal(target)) return 10000 @@ -51,13 +51,13 @@ SSresearch.science_tech.add_point_list(list(TECHWEB_POINT_TYPE_GENERIC = check_value(target))) var/obj/item/bodypart/L = target.get_bodypart(BODY_ZONE_CHEST) target.apply_damage(80, BRUTE, L) - target.add_trait(TRAIT_DISSECTED) + ADD_TRAIT(target, TRAIT_DISSECTED, "surgery") return TRUE - + /datum/surgery_step/dissection/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) user.visible_message("[user] dissects [target]!", "You dissect [target], but do not find anything particularly interesting.") SSresearch.science_tech.add_point_list(list(TECHWEB_POINT_TYPE_GENERIC = (check_value(target) * 0.2))) var/obj/item/bodypart/L = target.get_bodypart(BODY_ZONE_CHEST) target.apply_damage(80, BRUTE, L) - target.add_trait(TRAIT_DISSECTED) - return TRUE \ No newline at end of file + ADD_TRAIT(target, TRAIT_DISSECTED, "surgery") + return TRUE diff --git a/code/modules/surgery/advanced/bioware/ligament_hook.dm b/code/modules/surgery/advanced/bioware/ligament_hook.dm index 9d464835988..ee59f0213c9 100644 --- a/code/modules/surgery/advanced/bioware/ligament_hook.dm +++ b/code/modules/surgery/advanced/bioware/ligament_hook.dm @@ -32,10 +32,10 @@ /datum/bioware/hooked_ligaments/on_gain() ..() - owner.add_trait(TRAIT_LIMBATTACHMENT, "ligament_hook") - owner.add_trait(TRAIT_EASYDISMEMBER, "ligament_hook") + ADD_TRAIT(owner, TRAIT_LIMBATTACHMENT, "ligament_hook") + ADD_TRAIT(owner, TRAIT_EASYDISMEMBER, "ligament_hook") /datum/bioware/hooked_ligaments/on_lose() ..() - owner.remove_trait(TRAIT_LIMBATTACHMENT, "ligament_hook") - owner.remove_trait(TRAIT_EASYDISMEMBER, "ligament_hook") \ No newline at end of file + REMOVE_TRAIT(owner, TRAIT_LIMBATTACHMENT, "ligament_hook") + REMOVE_TRAIT(owner, TRAIT_EASYDISMEMBER, "ligament_hook") \ No newline at end of file diff --git a/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm b/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm index a5ab51e1adb..8ef3a56ebaa 100644 --- a/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm +++ b/code/modules/surgery/advanced/bioware/ligament_reinforcement.dm @@ -32,10 +32,10 @@ /datum/bioware/reinforced_ligaments/on_gain() ..() - owner.add_trait(TRAIT_NODISMEMBER, "reinforced_ligaments") - owner.add_trait(TRAIT_EASYLIMBDISABLE, "reinforced_ligaments") + ADD_TRAIT(owner, TRAIT_NODISMEMBER, "reinforced_ligaments") + ADD_TRAIT(owner, TRAIT_EASYLIMBDISABLE, "reinforced_ligaments") /datum/bioware/reinforced_ligaments/on_lose() ..() - owner.remove_trait(TRAIT_NODISMEMBER, "reinforced_ligaments") - owner.remove_trait(TRAIT_EASYLIMBDISABLE, "reinforced_ligaments") \ No newline at end of file + REMOVE_TRAIT(owner, TRAIT_NODISMEMBER, "reinforced_ligaments") + REMOVE_TRAIT(owner, TRAIT_EASYLIMBDISABLE, "reinforced_ligaments") \ No newline at end of file diff --git a/code/modules/surgery/advanced/bioware/nerve_grounding.dm b/code/modules/surgery/advanced/bioware/nerve_grounding.dm index f4b23c89b1d..14769126271 100644 --- a/code/modules/surgery/advanced/bioware/nerve_grounding.dm +++ b/code/modules/surgery/advanced/bioware/nerve_grounding.dm @@ -28,13 +28,11 @@ name = "Grounded Nerves" desc = "Nerves form a safe path for electricity to traverse, protecting the body from electric shocks." mod_type = BIOWARE_NERVES - var/prev_coeff /datum/bioware/grounded_nerves/on_gain() ..() - prev_coeff = owner.physiology.siemens_coeff - owner.physiology.siemens_coeff = 0 + ADD_TRAIT(owner, TRAIT_SHOCKIMMUNE, "grounded_nerves") /datum/bioware/grounded_nerves/on_lose() ..() - owner.physiology.siemens_coeff = prev_coeff \ No newline at end of file + REMOVE_TRAIT(owner, TRAIT_SHOCKIMMUNE, "grounded_nerves") diff --git a/code/modules/surgery/advanced/brainwashing.dm b/code/modules/surgery/advanced/brainwashing.dm index 64080b17c62..54db7033be1 100644 --- a/code/modules/surgery/advanced/brainwashing.dm +++ b/code/modules/surgery/advanced/brainwashing.dm @@ -41,7 +41,7 @@ if(!target.mind) user.visible_message("[target] doesn't respond to the brainwashing, as if [target.p_they()] lacked a mind...") return FALSE - if(target.has_trait(TRAIT_MINDSHIELD)) + if(HAS_TRAIT(target, TRAIT_MINDSHIELD)) user.visible_message("You hear a faint buzzing from a device inside [target]'s brain, and the brainwashing is erased.") return FALSE user.visible_message("[user] successfully brainwashes [target]!", "You succeed in brainwashing [target].") diff --git a/code/modules/surgery/advanced/revival.dm b/code/modules/surgery/advanced/revival.dm index 2459f18ae38..65f358b36af 100644 --- a/code/modules/surgery/advanced/revival.dm +++ b/code/modules/surgery/advanced/revival.dm @@ -18,7 +18,7 @@ return FALSE if(target.stat != DEAD) return FALSE - if(target.suiciding || target.hellbound || target.has_trait(TRAIT_HUSK)) + if(target.suiciding || target.hellbound || HAS_TRAIT(target, TRAIT_HUSK)) return FALSE var/obj/item/organ/brain/B = target.getorganslot(ORGAN_SLOT_BRAIN) if(!B) diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 8289b891a89..21b96404e32 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -83,7 +83,7 @@ /obj/item/bodypart/attack(mob/living/carbon/C, mob/user) if(ishuman(C)) var/mob/living/carbon/human/H = C - if(C.has_trait(TRAIT_LIMBATTACHMENT)) + if(HAS_TRAIT(C, TRAIT_LIMBATTACHMENT)) if(!H.get_bodypart(body_zone) && !animal_origin) if(H == user) H.visible_message("[H] jams [src] into [H.p_their()] empty socket!",\ @@ -174,9 +174,8 @@ var/total_damage = brute + burn if(total_damage > can_inflict) - var/excess = total_damage - can_inflict - brute = round(brute * (excess / total_damage),DAMAGE_PRECISION) - burn = round(burn * (excess / total_damage),DAMAGE_PRECISION) + brute = round(brute * (can_inflict / total_damage),DAMAGE_PRECISION) + burn = round(burn * (can_inflict / total_damage),DAMAGE_PRECISION) brute_dam += brute burn_dam += burn @@ -223,11 +222,11 @@ set_disabled(is_disabled()) /obj/item/bodypart/proc/is_disabled() - if(has_trait(TRAIT_PARALYSIS)) + if(HAS_TRAIT(src, TRAIT_PARALYSIS)) return BODYPART_DISABLED_PARALYSIS - if(can_dismember() && !owner.has_trait(TRAIT_NOLIMBDISABLE)) + if(can_dismember() && !HAS_TRAIT(owner, TRAIT_NOLIMBDISABLE)) . = disabled //inertia, to avoid limbs healing 0.1 damage and being re-enabled - if((get_damage(TRUE) >= max_damage) || (owner.has_trait(TRAIT_EASYLIMBDISABLE) && (get_damage(TRUE) >= (max_damage * 0.6)))) //Easy limb disable disables the limb at 40% health instead of 0% + if((get_damage(TRUE) >= max_damage) || (HAS_TRAIT(owner, TRAIT_EASYLIMBDISABLE) && (get_damage(TRUE) >= (max_damage * 0.6)))) //Easy limb disable disables the limb at 40% health instead of 0% return BODYPART_DISABLED_DAMAGE if(disabled && (get_damage(TRUE) <= (max_damage * 0.5))) return BODYPART_NOT_DISABLED @@ -291,7 +290,7 @@ C = owner no_update = FALSE - if(C.has_trait(TRAIT_HUSK) && is_organic_limb()) + if(HAS_TRAIT(C, TRAIT_HUSK) && is_organic_limb()) species_id = "husk" //overrides species_id dmg_overlay_type = "" //no damage overlay shown when husked should_draw_gender = FALSE @@ -446,6 +445,11 @@ max_stamina_damage = 100 var/obj/item/cavity_item +/obj/item/bodypart/chest/can_dismember(obj/item/I) + if(!((owner.stat == DEAD) || owner.InFullCritical())) + return FALSE + return ..() + /obj/item/bodypart/chest/Destroy() QDEL_NULL(cavity_item) return ..() @@ -501,7 +505,7 @@ stam_heal_tick = 2 /obj/item/bodypart/l_arm/is_disabled() - if(owner.has_trait(TRAIT_PARALYSIS_L_ARM)) + if(HAS_TRAIT(owner, TRAIT_PARALYSIS_L_ARM)) return BODYPART_DISABLED_PARALYSIS return ..() @@ -566,7 +570,7 @@ max_stamina_damage = 50 /obj/item/bodypart/r_arm/is_disabled() - if(owner.has_trait(TRAIT_PARALYSIS_R_ARM)) + if(HAS_TRAIT(owner, TRAIT_PARALYSIS_R_ARM)) return BODYPART_DISABLED_PARALYSIS return ..() @@ -628,7 +632,7 @@ max_stamina_damage = 50 /obj/item/bodypart/l_leg/is_disabled() - if(owner.has_trait(TRAIT_PARALYSIS_L_LEG)) + if(HAS_TRAIT(owner, TRAIT_PARALYSIS_L_LEG)) return BODYPART_DISABLED_PARALYSIS return ..() @@ -687,7 +691,7 @@ stam_heal_tick = 2 /obj/item/bodypart/r_leg/is_disabled() - if(owner.has_trait(TRAIT_PARALYSIS_R_LEG)) + if(HAS_TRAIT(owner, TRAIT_PARALYSIS_R_LEG)) return BODYPART_DISABLED_PARALYSIS return ..() diff --git a/code/modules/surgery/bodyparts/dismemberment.dm b/code/modules/surgery/bodyparts/dismemberment.dm index 23be73e7158..613e0cbd69d 100644 --- a/code/modules/surgery/bodyparts/dismemberment.dm +++ b/code/modules/surgery/bodyparts/dismemberment.dm @@ -12,7 +12,7 @@ return FALSE if(C.status_flags & GODMODE) return FALSE - if(C.has_trait(TRAIT_NODISMEMBER)) + if(HAS_TRAIT(C, TRAIT_NODISMEMBER)) return FALSE var/obj/item/bodypart/affecting = C.get_bodypart(BODY_ZONE_CHEST) @@ -49,7 +49,7 @@ var/mob/living/carbon/C = owner if(!dismemberable) return FALSE - if(C.has_trait(TRAIT_NODISMEMBER)) + if(HAS_TRAIT(C, TRAIT_NODISMEMBER)) return FALSE . = list() var/organ_spilled = 0 diff --git a/code/modules/surgery/bodyparts/head.dm b/code/modules/surgery/bodyparts/head.dm index cecd5935a78..c6b237bc00a 100644 --- a/code/modules/surgery/bodyparts/head.dm +++ b/code/modules/surgery/bodyparts/head.dm @@ -119,6 +119,9 @@ for(var/datum/action/item_action/hands_free/activate_pill/AP in I.actions) qdel(AP) I.forceMove(T) + eyes = null + ears = null + tongue = null /obj/item/bodypart/head/update_limb(dropping_limb, mob/living/carbon/source) var/mob/living/carbon/C @@ -128,7 +131,7 @@ C = owner real_name = C.real_name - if(C.has_trait(TRAIT_HUSK)) + if(HAS_TRAIT(C, TRAIT_HUSK)) real_name = "Unknown" hair_style = "Bald" facial_hair_style = "Shaved" @@ -231,13 +234,13 @@ . += lips_overlay // eyes - var/image/eyes_overlay = image('icons/mob/human_face.dmi', "eyes", -BODY_LAYER, SOUTH) + var/image/eyes_overlay = image('icons/mob/human_face.dmi', "eyes_missing", -BODY_LAYER, SOUTH) . += eyes_overlay - if(!eyes) - eyes_overlay.icon_state = "eyes_missing" + if(eyes) + eyes_overlay.icon_state = eyes.eye_icon_state - else if(eyes.eye_color) - eyes_overlay.color = "#" + eyes.eye_color + if(eyes.eye_color) + eyes_overlay.color = "#" + eyes.eye_color /obj/item/bodypart/head/monkey icon = 'icons/mob/animal_parts.dmi' diff --git a/code/modules/surgery/bodyparts/robot_bodyparts.dm b/code/modules/surgery/bodyparts/robot_bodyparts.dm index ae5cc676d03..8c967ccc59d 100644 --- a/code/modules/surgery/bodyparts/robot_bodyparts.dm +++ b/code/modules/surgery/bodyparts/robot_bodyparts.dm @@ -250,7 +250,7 @@ if(flash1 && flash2) to_chat(user, "You have already inserted the eyes!") return - else if(F.crit_fail) + else if(F.burnt_out) to_chat(user, "You can't use a broken flash!") return else diff --git a/code/modules/surgery/cavity_implant.dm b/code/modules/surgery/cavity_implant.dm index d3ba48ea2af..2663e1ad242 100644 --- a/code/modules/surgery/cavity_implant.dm +++ b/code/modules/surgery/cavity_implant.dm @@ -9,19 +9,20 @@ /datum/surgery_step/handle_cavity name = "implant item" accept_hand = 1 - accept_any_item = 1 + implements = list(/obj/item = 100) + repeatable = TRUE time = 32 var/obj/item/IC = null +/datum/surgery_step/handle_cavity/tool_check(mob/user, obj/item/tool) + if(istype(tool, /obj/item/cautery) || istype(tool, /obj/item/gun/energy/laser)) + return FALSE + return !tool.is_hot() + /datum/surgery_step/handle_cavity/preop(mob/user, mob/living/carbon/human/target, target_zone, obj/item/tool, datum/surgery/surgery) var/obj/item/bodypart/chest/CH = target.get_bodypart(BODY_ZONE_CHEST) IC = CH.cavity_item if(tool) - if(istype(tool, /obj/item/surgical_drapes) || istype(tool, /obj/item/bedsheet)) - var/obj/item/inactive = user.get_inactive_held_item() - if(istype(inactive, /obj/item/cautery) || inactive.tool_behaviour == TOOL_SCREWDRIVER || iscyborg(user)) - attempt_cancel_surgery(surgery, tool, target, user) - return -1 user.visible_message("[user] begins to insert [tool] into [target]'s [target_zone].", "You begin to insert [tool] into [target]'s [target_zone]...") else user.visible_message("[user] checks for items in [target]'s [target_zone].", "You check for items in [target]'s [target_zone]...") @@ -29,7 +30,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(BODY_ZONE_CHEST) if(tool) - if(IC || tool.w_class > WEIGHT_CLASS_NORMAL || tool.has_trait(TRAIT_NODROP) || istype(tool, /obj/item/organ)) + if(IC || tool.w_class > WEIGHT_CLASS_NORMAL || HAS_TRAIT(tool, TRAIT_NODROP) || istype(tool, /obj/item/organ)) to_chat(user, "You can't seem to fit [tool] in [target]'s [target_zone]!") return 0 else diff --git a/code/modules/surgery/lipoplasty.dm b/code/modules/surgery/lipoplasty.dm index 6a0bb974ee9..26a867df82f 100644 --- a/code/modules/surgery/lipoplasty.dm +++ b/code/modules/surgery/lipoplasty.dm @@ -4,7 +4,7 @@ possible_locs = list(BODY_ZONE_CHEST) /datum/surgery/lipoplasty/can_start(mob/user, mob/living/carbon/target) - if(target.has_trait(TRAIT_FAT)) + if(HAS_TRAIT(target, TRAIT_FAT)) return 1 return 0 diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index 8e34ce94b70..1d08965fc50 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -89,7 +89,7 @@ holder = item - holder.add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(holder, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) holder.resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF holder.slot_flags = null holder.materials = null @@ -121,7 +121,7 @@ playsound(get_turf(owner), 'sound/mecha/mechmove03.ogg', 50, 1) /obj/item/organ/cyberimp/arm/ui_action_click() - if(crit_fail || (!holder && !contents.len)) + if(broken_cyber_organ || (!holder && !contents.len)) to_chat(owner, "The implant doesn't respond. It seems to be broken...") return @@ -132,7 +132,7 @@ else var/list/choice_list = list() for(var/obj/item/I in items_list) - choice_list[I] = getFlatIcon(I) + choice_list[I] = image(I) var/obj/item/choice = show_radial_menu(owner, owner, choice_list) if(owner && owner == usr && owner.stat != DEAD && (src in owner.internal_organs) && !holder && (choice in contents)) // This monster sanity check is a nice example of how bad input is. @@ -145,7 +145,7 @@ . = ..() if(. & EMP_PROTECT_SELF) return - if(prob(30/severity) && owner && !crit_fail) + if(prob(30/severity) && owner && !broken_cyber_organ) Retract() owner.visible_message("A loud bang comes from [owner]\'s [zone == BODY_ZONE_R_ARM ? "right" : "left"] arm!") playsound(get_turf(owner), 'sound/weapons/flashbang.ogg', 100, 1) @@ -153,7 +153,7 @@ owner.adjust_fire_stacks(20) owner.IgniteMob() owner.adjustFireLoss(25) - crit_fail = 1 + broken_cyber_organ = TRUE /obj/item/organ/cyberimp/arm/gun/laser diff --git a/code/modules/surgery/organs/augments_chest.dm b/code/modules/surgery/organs/augments_chest.dm index 25fa46c4409..01b8971cf6a 100644 --- a/code/modules/surgery/organs/augments_chest.dm +++ b/code/modules/surgery/organs/augments_chest.dm @@ -144,7 +144,7 @@ /obj/item/organ/cyberimp/chest/thrusters/proc/toggle(silent = FALSE) if(!on) - if(crit_fail) + if(broken_cyber_organ) if(!silent) to_chat(owner, "Your thrusters set seems to be broken!") return 0 diff --git a/code/modules/surgery/organs/augments_eyes.dm b/code/modules/surgery/organs/augments_eyes.dm index 86732ae2eb9..1289ddc587e 100644 --- a/code/modules/surgery/organs/augments_eyes.dm +++ b/code/modules/surgery/organs/augments_eyes.dm @@ -36,6 +36,11 @@ desc = "These cybernetic eye implants will display a security HUD over everything you see." HUD_type = DATA_HUD_SECURITY_ADVANCED +/obj/item/organ/cyberimp/eyes/hud/diagnostic + name = "Diagnostic HUD implant" + desc = "These cybernetic eye implants will display a diagnostic HUD over everything you see." + HUD_type = DATA_HUD_DIAGNOSTIC_ADVANCED + /obj/item/organ/cyberimp/eyes/hud/security/syndicate name = "Contraband Security HUD Implant" desc = "A Cybersun Industries brand Security HUD Implant. These illicit cybernetic eye implants will display a security HUD over everything you see." diff --git a/code/modules/surgery/organs/augments_internal.dm b/code/modules/surgery/organs/augments_internal.dm index 47c90e78a5c..bbfcda051f1 100644 --- a/code/modules/surgery/organs/augments_internal.dm +++ b/code/modules/surgery/organs/augments_internal.dm @@ -60,7 +60,7 @@ else for(var/obj/item/I in stored_items) to_chat(owner, "Your [owner.get_held_index_name(owner.get_held_index_of_item(I))]'s grip tightens.") - I.add_trait(TRAIT_NODROP, ANTI_DROP_IMPLANT_TRAIT) + ADD_TRAIT(I, TRAIT_NODROP, ANTI_DROP_IMPLANT_TRAIT) else release_items() @@ -84,7 +84,7 @@ /obj/item/organ/cyberimp/brain/anti_drop/proc/release_items() for(var/obj/item/I in stored_items) - I.remove_trait(TRAIT_NODROP, ANTI_DROP_IMPLANT_TRAIT) + REMOVE_TRAIT(I, TRAIT_NODROP, ANTI_DROP_IMPLANT_TRAIT) stored_items = list() @@ -112,7 +112,7 @@ return CB = CALLBACK(src, .proc/on_signal) -/obj/item/organ/cyberimp/brain/anti_stun/Remove() +/obj/item/organ/cyberimp/brain/anti_stun/Remove(mob/living/carbon/M, special = FALSE) . = ..() QDEL_NULL(listener) @@ -128,7 +128,7 @@ )) /obj/item/organ/cyberimp/brain/anti_stun/proc/on_signal() - if(crit_fail || working) + if(broken_cyber_organ || working) return working = TRUE if(owner.AmountStun() > stun_cap_amount) @@ -143,13 +143,13 @@ /obj/item/organ/cyberimp/brain/anti_stun/emp_act(severity) . = ..() - if(crit_fail || . & EMP_PROTECT_SELF) + if(broken_cyber_organ || . & EMP_PROTECT_SELF) return - crit_fail = TRUE + broken_cyber_organ = TRUE addtimer(CALLBACK(src, .proc/reboot), 90 / severity) /obj/item/organ/cyberimp/brain/anti_stun/proc/reboot() - crit_fail = FALSE + broken_cyber_organ = FALSE //[[[[MOUTH]]]] /obj/item/organ/cyberimp/mouth diff --git a/code/modules/surgery/organs/ears.dm b/code/modules/surgery/organs/ears.dm index 86d4707eaf5..34d0e49b9df 100644 --- a/code/modules/surgery/organs/ears.dm +++ b/code/modules/surgery/organs/ears.dm @@ -25,7 +25,7 @@ return var/mob/living/carbon/C = owner // genetic deafness prevents the body from using the ears, even if healthy - if(C.has_trait(TRAIT_DEAF)) + if(HAS_TRAIT(C, TRAIT_DEAF)) deaf = max(deaf, 1) else if(ear_damage < UNHEALING_EAR_DAMAGE) // if higher than UNHEALING_EAR_DAMAGE, no natural healing occurs. ear_damage = max(ear_damage - 0.05, 0) @@ -37,7 +37,7 @@ var/mob/living/carbon/C = owner - if(iscarbon(owner) && C.has_trait(TRAIT_DEAF)) + if(iscarbon(owner) && HAS_TRAIT(C, TRAIT_DEAF)) deaf = 1 /obj/item/organ/ears/proc/adjustEarDamage(ddmg, ddeaf) diff --git a/code/modules/surgery/organs/eyes.dm b/code/modules/surgery/organs/eyes.dm index bfe1b2dc3b6..dcb84c0c0d5 100644 --- a/code/modules/surgery/organs/eyes.dm +++ b/code/modules/surgery/organs/eyes.dm @@ -11,13 +11,15 @@ var/eye_damage = 0 var/tint = 0 var/eye_color = "" //set to a hex code to override a mob's eye color + var/eye_icon_state = "eyes" var/old_eye_color = "fff" var/flash_protect = 0 var/see_invisible = SEE_INVISIBLE_LIVING var/lighting_alpha + var/no_glasses -/obj/item/organ/eyes/Insert(mob/living/carbon/M, special = FALSE, drop_if_replaced = FALSE) - ..() +/obj/item/organ/eyes/Insert(mob/living/carbon/M, special = FALSE, drop_if_replaced = FALSE, initialising) + . = ..() if(ishuman(owner)) var/mob/living/carbon/human/HMN = owner old_eye_color = HMN.eye_color @@ -26,10 +28,12 @@ HMN.regenerate_icons() else eye_color = HMN.eye_color - if(HMN.has_trait(TRAIT_NIGHT_VISION) && !lighting_alpha) + if(HAS_TRAIT(HMN, TRAIT_NIGHT_VISION) && !lighting_alpha) lighting_alpha = LIGHTING_PLANE_ALPHA_NV_TRAIT M.update_tint() owner.update_sight() + if(M.has_dna() && ishuman(M)) + M.dna.species.handle_body(M) //updates eye icon /obj/item/organ/eyes/Remove(mob/living/carbon/M, special = 0) ..() @@ -178,7 +182,7 @@ terminate_effects() . = ..() -/obj/item/organ/eyes/robotic/glow/Remove() +/obj/item/organ/eyes/robotic/glow/Remove(mob/living/carbon/M, special = FALSE) terminate_effects() . = ..() @@ -244,7 +248,7 @@ if (!mobhook) mobhook = M.AddComponent(/datum/component/redirect, list(COMSIG_ATOM_DIR_CHANGE = CALLBACK(src, .proc/update_visuals))) -/obj/item/organ/eyes/robotic/glow/Remove(mob/living/carbon/M) +/obj/item/organ/eyes/robotic/glow/Remove(mob/living/carbon/M, special = FALSE) . = ..() QDEL_NULL(mobhook) @@ -338,3 +342,10 @@ name = "moth eyes" desc = "These eyes seem to have increased sensitivity to bright light, with no improvement to low light vision." flash_protect = -1 + +/obj/item/organ/eyes/snail + name = "snail eyes" + desc = "These eyes seem to have a large range, but might be cumbersome with glasses." + eye_icon_state = "snail_eyes" + icon_state = "snail_eyeballs" + diff --git a/code/modules/surgery/organs/heart.dm b/code/modules/surgery/organs/heart.dm index 8f8925e9f15..7870057dc55 100644 --- a/code/modules/surgery/organs/heart.dm +++ b/code/modules/surgery/organs/heart.dm @@ -113,6 +113,10 @@ if(owner) to_chat(owner, "Your heart has been replaced with a cursed one, you have to pump this one manually otherwise you'll die!") +/obj/item/organ/heart/cursed/Remove(mob/living/carbon/M, special = 0) + ..() + M.remove_client_colour(/datum/client_colour/cursed_heart_blood) + /datum/action/item_action/organ_action/cursed_heart name = "Pump your blood" diff --git a/code/modules/surgery/organs/liver.dm b/code/modules/surgery/organs/liver.dm index e0fafba1123..07a74bd8f8f 100755 --- a/code/modules/surgery/organs/liver.dm +++ b/code/modules/surgery/organs/liver.dm @@ -30,7 +30,7 @@ damage = max(0, damage - 0.1) var/provide_pain_message = HAS_NO_TOXIN - if(filterToxins && !owner.has_trait(TRAIT_TOXINLOVER)) + if(filterToxins && !HAS_TRAIT(owner, TRAIT_TOXINLOVER)) //handle liver toxin filtration for(var/I in C.reagents.reagent_list) var/datum/reagent/pickedreagent = I diff --git a/code/modules/surgery/organs/lungs.dm b/code/modules/surgery/organs/lungs.dm index 88617450d0c..db49a0353bb 100644 --- a/code/modules/surgery/organs/lungs.dm +++ b/code/modules/surgery/organs/lungs.dm @@ -58,7 +58,7 @@ /obj/item/organ/lungs/proc/check_breath(datum/gas_mixture/breath, mob/living/carbon/human/H) if(H.status_flags & GODMODE) return - if(H.has_trait(TRAIT_NOBREATH)) + if(HAS_TRAIT(H, TRAIT_NOBREATH)) return if(!breath || (breath.total_moles() == 0)) @@ -66,7 +66,7 @@ return if(H.health >= H.crit_threshold) H.adjustOxyLoss(HUMAN_MAX_OXYLOSS) - else if(!H.has_trait(TRAIT_NOCRITDAMAGE)) + else if(!HAS_TRAIT(H, TRAIT_NOCRITDAMAGE)) H.adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) H.failed_last_breath = TRUE @@ -354,7 +354,7 @@ /obj/item/organ/lungs/proc/handle_breath_temperature(datum/gas_mixture/breath, mob/living/carbon/human/H) // called by human/life, handles temperatures var/breath_temperature = breath.temperature - if(!H.has_trait(TRAIT_RESISTCOLD)) // COLD DAMAGE + if(!HAS_TRAIT(H, TRAIT_RESISTCOLD)) // COLD DAMAGE var/cold_modifier = H.dna.species.coldmod if(breath_temperature < cold_level_3_threshold) H.apply_damage_type(cold_level_3_damage*cold_modifier, cold_damage_type) @@ -366,7 +366,7 @@ if(prob(20)) to_chat(H, "You feel [cold_message] in your [name]!") - if(!H.has_trait(TRAIT_RESISTHEAT)) // HEAT DAMAGE + if(!HAS_TRAIT(H, TRAIT_RESISTHEAT)) // HEAT DAMAGE var/heat_modifier = H.dna.species.heatmod if(breath_temperature > heat_level_1_threshold && breath_temperature < heat_level_2_threshold) H.apply_damage_type(heat_level_1_damage*heat_modifier, heat_damage_type) diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index cc64809a91e..320a621d019 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -5,6 +5,7 @@ var/status = ORGAN_ORGANIC w_class = WEIGHT_CLASS_SMALL throwforce = 0 + var/broken_cyber_organ = FALSE //if the organ stopped working. var/zone = BODY_ZONE_CHEST var/slot // DO NOT add slots with matching names to different zones - it will break internal_organs_slot list! @@ -35,7 +36,7 @@ A.Grant(M) //Special is for instant replacement like autosurgeons -/obj/item/organ/proc/Remove(mob/living/carbon/M, special = 0) +/obj/item/organ/proc/Remove(mob/living/carbon/M, special = FALSE) owner = null if(M) M.internal_organs -= src @@ -56,7 +57,7 @@ /obj/item/organ/examine(mob/user) ..() - if(status == ORGAN_ROBOTIC && crit_fail) + if(status == ORGAN_ROBOTIC && broken_cyber_organ) to_chat(user, "[src] seems to be broken!") @@ -89,7 +90,7 @@ if(M == user && ishuman(user)) var/mob/living/carbon/human/H = user if(status == ORGAN_ORGANIC) - var/obj/item/reagent_containers/food/snacks/S = prepare_eat() + var/obj/item/reagent_containers/food/snacks/S = prepare_eat(H) if(S) qdel(src) if(H.put_in_active_hand(S)) diff --git a/code/modules/surgery/organs/tongue.dm b/code/modules/surgery/organs/tongue.dm index ede7259f8e7..c32e908c4dc 100644 --- a/code/modules/surgery/organs/tongue.dm +++ b/code/modules/surgery/organs/tongue.dm @@ -99,7 +99,7 @@ /obj/item/organ/tongue/abductor/examine(mob/M) . = ..() - if(M.has_trait(TRAIT_ABDUCTOR_TRAINING) || isobserver(M)) + if(HAS_TRAIT(M, TRAIT_ABDUCTOR_TRAINING) || HAS_TRAIT(M.mind, TRAIT_ABDUCTOR_TRAINING) || isobserver(M)) if(!mothership) to_chat(M, "It is not attuned to a specific mothership.") else @@ -221,3 +221,15 @@ /obj/item/organ/tongue/robot/get_spans() return ..() | SPAN_ROBOT + +/obj/item/organ/tongue/snail + name = "snailtongue" + +/obj/item/organ/tongue/snail/TongueSpeech(message) + var/new_message + for(var/i in 1 to length(message)) + if(findtext("ABCDEFGHIJKLMNOPWRSTUVWXYZabcdefghijklmnopqrstuvwxyz", message[i])) //Im open to suggestions + new_message += message[i] + message[i] + message[i] //aaalllsssooo ooopppeeennn tttooo sssuuuggggggeeessstttiiiooonsss + else + new_message += message[i] + return new_message diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm index 3c4fc47396e..4582a9ac50f 100644 --- a/code/modules/surgery/organs/vocal_cords.dm +++ b/code/modules/surgery/organs/vocal_cords.dm @@ -137,7 +137,7 @@ user.say(message, spans = span_list, sanitize = FALSE) message = lowertext(message) - var/mob/living/list/listeners = list() + var/list/mob/living/listeners = list() for(var/mob/living/L in get_hearers_in_view(8, user)) if(L.can_hear() && !L.anti_magic_check(FALSE, TRUE) && L.stat != DEAD) if(L == user && !include_speaker) diff --git a/code/modules/surgery/plastic_surgery.dm b/code/modules/surgery/plastic_surgery.dm index 3a3dd6a1dda..54482ade73e 100644 --- a/code/modules/surgery/plastic_surgery.dm +++ b/code/modules/surgery/plastic_surgery.dm @@ -13,8 +13,8 @@ user.visible_message("[user] begins to alter [target]'s appearance.", "You begin to alter [target]'s appearance...") /datum/surgery_step/reshape_face/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) - if(target.has_trait(TRAIT_DISFIGURED, TRAIT_GENERIC)) - target.remove_trait(TRAIT_DISFIGURED, TRAIT_GENERIC) + if(HAS_TRAIT_FROM(target, TRAIT_DISFIGURED, TRAIT_GENERIC)) + REMOVE_TRAIT(target, TRAIT_DISFIGURED, TRAIT_GENERIC) user.visible_message("[user] successfully restores [target]'s appearance!", "You successfully restore [target]'s appearance.") else var/list/names = list() diff --git a/code/modules/surgery/surgery.dm b/code/modules/surgery/surgery.dm index 894ebc0d3a2..53afe1e9489 100644 --- a/code/modules/surgery/surgery.dm +++ b/code/modules/surgery/surgery.dm @@ -3,18 +3,18 @@ var/desc = "surgery description" 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/step_in_progress = FALSE //Actively performing a Surgery + var/can_cancel = TRUE //Can cancel this surgery after step 1 with cautery var/list/target_mobtypes = list(/mob/living/carbon/human) //Acceptable Species var/location = BODY_ZONE_CHEST //Surgery location var/requires_bodypart_type = BODYPART_ORGANIC //Prevents you from performing an operation on incorrect limbs. 0 for any limb type var/list/possible_locs = list() //Multiple locations - var/ignore_clothes = 0 //This surgery ignores clothes + var/ignore_clothes = FALSE //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 - var/requires_real_bodypart = 0 //Some surgeries don't work on limbs that don't really exist + var/requires_real_bodypart = FALSE //Some surgeries don't work on limbs that don't really exist var/lying_required = TRUE //Does the vicitm needs to be lying down. var/self_operable = FALSE //Can the surgery be performed on yourself. @@ -39,11 +39,11 @@ /datum/surgery/proc/can_start(mob/user, mob/living/carbon/target) // if 0 surgery wont show up in list // put special restrictions here - return 1 + return TRUE /datum/surgery/proc/next_step(mob/user, intent) if(step_in_progress) - return 1 + return TRUE var/try_to_fail = FALSE if(intent == INTENT_DISARM) @@ -52,8 +52,10 @@ 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, try_to_fail)) - return 1 - return 0 + return TRUE + if(iscyborg(user) && user.a_intent != INTENT_HARM) //to save asimov borgs a LOT of heartache + return TRUE + return FALSE /datum/surgery/proc/get_surgery_step() var/step_type = steps[status] @@ -90,7 +92,7 @@ if(!..()) return FALSE // True surgeons (like abductor scientists) need no instructions - if(user.has_trait(TRAIT_SURGEON)) + if(HAS_TRAIT(user, TRAIT_SURGEON)) return TRUE if(iscyborg(user)) diff --git a/code/modules/surgery/surgery_step.dm b/code/modules/surgery/surgery_step.dm index f670b80167c..8942332c215 100644 --- a/code/modules/surgery/surgery_step.dm +++ b/code/modules/surgery/surgery_step.dm @@ -2,10 +2,10 @@ 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/accept_hand = FALSE //does the surgery step require an open hand? If true, ignores implements. Compatible with accept_any_item. + var/accept_any_item = FALSE //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/repeatable = 0 //can this step be repeated? Make shure it isn't last step, or it used in surgery with `can_cancel = 1`. Or surgion will be stuck in the loop + var/repeatable = FALSE //can this step be repeated? Make shure it isn't last step, or it used in surgery with `can_cancel = 1`. Or surgion will be stuck in the loop var/list/chems_needed = list() //list of chems needed to complete the step. Even on success, the step will have no effect if there aren't the chems required in the mob. var/require_all_chems = TRUE //any on the list or all on the list? @@ -39,41 +39,36 @@ if(success) if(target_zone == surgery.location) if(get_location_accessible(target, target_zone) || surgery.ignore_clothes) - initiate(user, target, target_zone, tool, surgery, try_to_fail) - return 1 + return initiate(user, target, target_zone, tool, surgery, try_to_fail) else to_chat(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. + return TRUE //returns TRUE so we don't stab the guy in the dick or wherever. if(repeatable) var/datum/surgery_step/next_step = surgery.get_surgery_next_step() if(next_step) surgery.status++ if(next_step.try_op(user, target, user.zone_selected, user.get_active_held_item(), surgery)) - return 1 + return TRUE else surgery.status-- - if(iscyborg(user) && user.a_intent != INTENT_HARM) //to save asimov borgs a LOT of heartache - return 1 - - return 0 + return FALSE /datum/surgery_step/proc/initiate(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, try_to_fail = FALSE) - surgery.step_in_progress = 1 - + surgery.step_in_progress = TRUE var/speed_mod = 1 + var/advance = FALSE if(preop(user, target, target_zone, tool, surgery) == -1) - surgery.step_in_progress = 0 - return + surgery.step_in_progress = FALSE + return FALSE if(tool) speed_mod = tool.toolspeed if(do_after(user, time * speed_mod, target = target)) - var/advance = 0 var/prob_chance = 100 if(implement_type) //this means it isn't a require hand or any item step. @@ -82,17 +77,18 @@ if((prob(prob_chance) || iscyborg(user)) && chem_check(target) && !try_to_fail) if(success(user, target, target_zone, tool, surgery)) - advance = 1 + advance = TRUE else if(failure(user, target, target_zone, tool, surgery)) - advance = 1 + advance = TRUE if(advance && !repeatable) surgery.status++ if(surgery.status > surgery.steps.len) surgery.complete() - surgery.step_in_progress = 0 + surgery.step_in_progress = FALSE + return advance /datum/surgery_step/proc/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) @@ -101,14 +97,14 @@ /datum/surgery_step/proc/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) user.visible_message("[user] succeeds!", "You succeed.") - return 1 + return TRUE /datum/surgery_step/proc/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery) user.visible_message("[user] screws up!", "You screw up!") - return 0 + return FALSE /datum/surgery_step/proc/tool_check(mob/user, obj/item/tool) - return 1 + return TRUE /datum/surgery_step/proc/chem_check(mob/living/carbon/target) if(!LAZYLEN(chems_needed)) diff --git a/code/modules/tgs/event_handler.dm b/code/modules/tgs/event_handler.dm deleted file mode 100644 index 3581302671c..00000000000 --- a/code/modules/tgs/event_handler.dm +++ /dev/null @@ -1,4 +0,0 @@ -/datum/tgs_event_handler/tg/HandleEvent(event_code, ...) - switch(event_code) - if(TGS_EVENT_COMPILE_COMPLETE) - GLOB.bypass_tgs_reboot = FALSE diff --git a/code/modules/tgui/external.dm b/code/modules/tgui/external.dm index 37080fdf11f..9bacdd1c036 100644 --- a/code/modules/tgui/external.dm +++ b/code/modules/tgui/external.dm @@ -49,6 +49,20 @@ if(!ui || ui.status != UI_INTERACTIVE) return 1 // If UI is not interactive or usr calling Topic is not the UI user, bail. + /** + * public + * + * Called on an object when a tgui object is being created, allowing you to customise the html + * For example: inserting a custom stylesheet that you need in the head + * + * For this purpose, some tags are available in the html, to be parsed out with replacetext + * (customheadhtml) - Additions to the head tag + * + * required html the html base text + * + **/ +/datum/proc/ui_base_html(html) + return html /** * private diff --git a/code/modules/tgui/tgui.dm b/code/modules/tgui/tgui.dm index c471f872c3d..9b942954149 100644 --- a/code/modules/tgui/tgui.dm +++ b/code/modules/tgui/tgui.dm @@ -198,11 +198,19 @@ **/ /datum/tgui/proc/get_html(var/inline) var/html + html = SStgui.basehtml + + //Allow the src object to override the html if needed + html = src_object.ui_base_html(html) + //Strip out any remaining custom tags that are used in ui_base_html + html = replacetext(html, "", "") + // Poplate HTML with JSON if we're supposed to inline. if(inline) - html = replacetextEx(SStgui.basehtml, "{}", get_json(initial_data)) - else - html = SStgui.basehtml + html = replacetextEx(html, "{}", get_json(initial_data)) + + + //Setup for tgui stuff, including styles html = replacetextEx(html, "\[ref]", "[REF(src)]") html = replacetextEx(html, "\[style]", style) return html diff --git a/code/modules/unit_tests/species_whitelists.dm b/code/modules/unit_tests/species_whitelists.dm index acc5c5c121a..145f3a259fc 100644 --- a/code/modules/unit_tests/species_whitelists.dm +++ b/code/modules/unit_tests/species_whitelists.dm @@ -1,5 +1,5 @@ -/datum/unit_test/species_whitelist_check/Run() - for(var/typepath in subtypesof(/datum/species)) - var/datum/species/S = typepath - if(initial(S.changesource_flags) == NONE) - Fail("A species type was detected with no changesource flags: [S]") +/datum/unit_test/species_whitelist_check/Run() + for(var/typepath in subtypesof(/datum/species)) + var/datum/species/S = typepath + if(initial(S.changesource_flags) == NONE) + Fail("A species type was detected with no changesource flags: [S]") diff --git a/code/modules/uplink/uplink_items.dm b/code/modules/uplink/uplink_items.dm index 357a00e1209..5c20ede1815 100644 --- a/code/modules/uplink/uplink_items.dm +++ b/code/modules/uplink/uplink_items.dm @@ -29,27 +29,50 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) if(I.limited_stock < 0 && !I.cant_discount && I.item && I.cost > 1) sale_items += I if(allow_sales) - for(var/i in 1 to 3) - var/datum/uplink_item/I = pick_n_take(sale_items) - var/datum/uplink_item/A = new I.type - var/discount = A.get_discount() - var/list/disclaimer = list("Void where prohibited.", "Not recommended for children.", "Contains small parts.", "Check local laws for legality in region.", "Do not taunt.", "Not responsible for direct, indirect, incidental or consequential damages resulting from any defect, error or failure to perform.", "Keep away from fire or flames.", "Product is provided \"as is\" without any implied or expressed warranties.", "As seen on TV.", "For recreational use only.", "Use only as directed.", "16% sales tax will be charged for orders originating within Space Nebraska.") - A.limited_stock = 1 - I.refundable = FALSE //THIS MAN USES ONE WEIRD TRICK TO GAIN FREE TC, CODERS HATES HIM! - A.refundable = FALSE - if(A.cost >= 20) //Tough love for nuke ops - discount *= 0.5 - A.cost = max(round(A.cost * discount),1) - A.category = "Discounted Gear" - A.name += " ([round(((initial(A.cost)-A.cost)/initial(A.cost))*100)]% off!)" - A.desc += " Normally costs [initial(A.cost)] TC. All sales final. [pick(disclaimer)]" - A.item = I.item + var/datum/team/nuclear/nuclear_team + if (gamemode == /datum/game_mode/nuclear) // uplink code kind of needs a redesign + nuclear_team = locate() in GLOB.antagonist_teams // the team discounts could be a in a GLOB with this design but it would make sense for them to be team specific... + if (!nuclear_team) + create_uplink_sales(3, "Discounted Gear", 1, sale_items, filtered_uplink_items) + else + if (!nuclear_team.team_discounts) + // create 5 unlimited stock discounts + create_uplink_sales(5, "Discounted Team Gear", -1, sale_items, filtered_uplink_items) + // Create 10 limited stock discounts + create_uplink_sales(10, "Limited Stock Team Gear", 1, sale_items, filtered_uplink_items) + nuclear_team.team_discounts = list("Discounted Team Gear" = filtered_uplink_items["Discounted Team Gear"], "Limited Stock Team Gear" = filtered_uplink_items["Limited Stock Team Gear"]) + else + filtered_uplink_items["Discounted Team Gear"] = nuclear_team.team_discounts["Discounted Team Gear"] + filtered_uplink_items["Limited Stock Team Gear"] = nuclear_team.team_discounts["Limited Stock Team Gear"] + - if(!filtered_uplink_items[A.category]) - filtered_uplink_items[A.category] = list() - filtered_uplink_items[A.category][A.name] = A return filtered_uplink_items +/proc/create_uplink_sales(num, category_name, limited_stock, sale_items, uplink_items) + if (num <= 0) + return + + if(!uplink_items[category_name]) + uplink_items[category_name] = list() + + for (var/i in 1 to num) + var/datum/uplink_item/I = pick_n_take(sale_items) + var/datum/uplink_item/A = new I.type + var/discount = A.get_discount() + var/list/disclaimer = list("Void where prohibited.", "Not recommended for children.", "Contains small parts.", "Check local laws for legality in region.", "Do not taunt.", "Not responsible for direct, indirect, incidental or consequential damages resulting from any defect, error or failure to perform.", "Keep away from fire or flames.", "Product is provided \"as is\" without any implied or expressed warranties.", "As seen on TV.", "For recreational use only.", "Use only as directed.", "16% sales tax will be charged for orders originating within Space Nebraska.") + A.limited_stock = limited_stock + I.refundable = FALSE //THIS MAN USES ONE WEIRD TRICK TO GAIN FREE TC, CODERS HATES HIM! + A.refundable = FALSE + if(A.cost >= 20) //Tough love for nuke ops + discount *= 0.5 + A.category = category_name + A.cost = max(round(A.cost * discount),1) + A.name += " ([round(((initial(A.cost)-A.cost)/initial(A.cost))*100)]% off!)" + A.desc += " Normally costs [initial(A.cost)] TC. All sales final. [pick(disclaimer)]" + A.item = I.item + + uplink_items[category_name][A.name] = A + /** * Uplink Items @@ -128,7 +151,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) /datum/uplink_item/bundles_TC/bulldog name = "Bulldog bundle" desc = "Lean and mean: Optimized for people that want to get up close and personal. Contains the popular \ - Bulldog shotgun, a 12g buckshot drum, a 12g taser slug drum and a pair of Thermal imaging goggles." + Bulldog shotgun, two 12g buckshot drums, and a pair of Thermal imaging goggles." item = /obj/item/storage/backpack/duffelbag/syndie/bulldogbundle cost = 13 // normally 16 include_modes = list(/datum/game_mode/nuclear) @@ -181,7 +204,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) item = /obj/item/storage/box/syndicate/bundle_A cost = 20 exclude_modes = list(/datum/game_mode/nuclear) - + /datum/uplink_item/bundles_TC/bundle_B name = "Syndi-kit Special" desc = "Syndicate Bundles, also known as Syndi-Kits, are specialized groups of items that arrive in a plain box. \ @@ -431,7 +454,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) Using a wrench on the piston valve will allow you to tweak the amount of gas used per punch to \ deal extra damage and hit targets further. Use a screwdriver to take out any attached tanks." item = /obj/item/melee/powerfist - cost = 8 + cost = 6 /datum/uplink_item/dangerous/sniper name = "Sniper Rifle" @@ -486,7 +509,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) 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/gun/ballistic/automatic/toy/pistol/riot - cost = 3 + cost = 2 surplus = 10 // Stealthy Weapons @@ -542,14 +565,14 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) /datum/uplink_item/stealthy_weapons/crossbow name = "Miniature Energy Crossbow" - desc = "A short bow mounted across a tiller in miniature. Small enough to \ - fit into a pocket or slip into a bag unnoticed. It will synthesize \ - and fire bolts tipped with a paralyzing toxin that will briefly stun \ - targets and cause them to slur as if inebriated. It can produce an \ - infinite number of bolts, but takes time to automatically recharge \ - after each shot." + desc = "A short bow mounted across a tiller in miniature. \ + Small enough to fit into a pocket or slip into a bag unnoticed. \ + It will synthesize and fire bolts tipped with a debilitating \ + toxin that will damage and disorient targets, causing them to \ + slur as if inebriated. It can produce an infinite number \ + of bolts, but takes time to automatically recharge after each shot." item = /obj/item/gun/energy/kinetic_accelerator/crossbow - cost = 12 + cost = 10 surplus = 50 exclude_modes = list(/datum/game_mode/nuclear) @@ -668,13 +691,6 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) cost = 3 item = /obj/item/ammo_box/magazine/m12g/slug -/datum/uplink_item/ammo/shotgun/stun - name = "12g Stun Slug Drum" - desc = "An alternative 8-round stun slug magazine for use with the Bulldog shotgun. \ - Saying that they're completely non-lethal would be lying." - item = /obj/item/ammo_box/magazine/m12g/stun - include_modes = list(/datum/game_mode/nuclear) - /datum/uplink_item/ammo/revolver name = ".357 Speed Loader" desc = "A speed loader that contains seven additional .357 Magnum rounds; usable with the Syndicate revolver. \ @@ -772,14 +788,14 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) /datum/uplink_item/ammo/rocket/basic name = "84mm HE Rocket" desc = "A low-yield anti-personnel HE rocket. Gonna take you out in style!" - item = /obj/item/ammo_box/magazine/rocket + item = /obj/item/ammo_casing/caseless/rocket cost = 4 /datum/uplink_item/ammo/rocket/hedp name = "84mm HEDP Rocket" desc = "A high-yield HEDP rocket; extremely effective against armored targets, as well as surrounding personnel. \ Strike fear into the hearts of your enemies." - item = /obj/item/ammo_box/magazine/rocket/hedp + item = /obj/item/ammo_casing/caseless/rocket/hedp cost = 6 /datum/uplink_item/ammo/pistolaps @@ -856,7 +872,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) name = "Bag of C-4 explosives" desc = "Because sometimes quantity is quality. Contains 10 C-4 plastic explosives." item = /obj/item/storage/backpack/duffelbag/syndie/c4 - cost = 9 //10% discount! + cost = 8 //20% discount! cant_discount = TRUE /datum/uplink_item/explosives/x4bag @@ -927,7 +943,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) name = "Slipocalypse Clusterbang" desc = "A traditional clusterbang grenade with a payload consisting entirely of Syndicate soap. Useful in any scenario!" item = /obj/item/grenade/clusterbuster/soap - cost = 6 + cost = 3 /datum/uplink_item/explosives/syndicate_bomb name = "Syndicate Bomb" @@ -1255,7 +1271,6 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) desc = "A robust seven-slot set of webbing that is capable of holding all manner of tactical equipment." item = /obj/item/storage/belt/military cost = 1 - exclude_modes = list(/datum/game_mode/nuclear) /datum/uplink_item/device_tools/emag name = "Cryptographic Sequencer" @@ -1337,7 +1352,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) in containment. Because of its size, it cannot be carried. Ordering this \ sends you a small beacon that will teleport the larger beacon to your location upon activation." item = /obj/item/sbeacondrop - cost = 14 + cost = 10 /datum/uplink_item/device_tools/powersink name = "Power Sink" @@ -1345,7 +1360,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) load on the grid, causing a station-wide blackout. The sink is large and cannot be stored in most \ traditional bags and boxes. Caution: Will explode if the powernet contains sufficient amounts of energy." item = /obj/item/powersink - cost = 6 + cost = 10 /datum/uplink_item/device_tools/rad_laser name = "Radioactive Microlaser" @@ -1404,7 +1419,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) of the originals, these inferior copies are still quite useful, being able to provide \ both weal and woe on the battlefield, even if they do occasionally bite off a finger." item = /obj/item/storage/book/bible/syndicate - cost = 9 + cost = 5 /datum/uplink_item/device_tools/thermal name = "Thermal Imaging Glasses" @@ -1424,6 +1439,16 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops) restricted = TRUE + +/datum/uplink_item/device_tools/suspiciousphone + name = "Protocol CRAB-17 Phone" + desc = "The Protocol CRAB-17 Phone, a phone borrowed from an unknown third party, it can be used to crash the space market, funneling the losses of the crew to your bank account.\ + The crew can move their funds to a new banking site though, unless they HODL, in which case they deserve it." + item = /obj/item/suspiciousphone + restricted = TRUE + cost = 7 + limited_stock = 1 + // Implants /datum/uplink_item/implants category = "Implants" @@ -1554,7 +1579,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) cost = 20 restricted_roles = list("Assistant") surplus = 0 - + /datum/uplink_item/role_restricted/oldtoolboxclean name = "Ancient Toolbox" desc = "An iconic toolbox design notorious with Assistants everywhere, this design was especially made to become more robust the more telecrystals it has inside it! Tools and insulated gloves included." @@ -1768,6 +1793,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) manufactured to pack a little bit more of a punch if your client needs some convincing." item = /obj/item/storage/secure/briefcase/syndie cost = 1 + restricted = TRUE /datum/uplink_item/badass/syndiecards name = "Syndicate Playing Cards" diff --git a/code/modules/vehicles/_vehicle.dm b/code/modules/vehicles/_vehicle.dm index 46bb9c203b8..a1d35e5f1db 100644 --- a/code/modules/vehicles/_vehicle.dm +++ b/code/modules/vehicles/_vehicle.dm @@ -22,6 +22,7 @@ var/list/autogrant_actions_controller //assoc list "[bitflag]" = list(typepaths) var/list/mob/occupant_actions //assoc list mob = list(type = action datum assigned to mob) var/obj/vehicle/trailer + var/are_legs_exposed = FALSE /obj/vehicle/Initialize(mapload) . = ..() @@ -119,6 +120,7 @@ if(!canmove) return vehicle_move(direction) + return TRUE /obj/vehicle/proc/vehicle_move(direction) if(lastmove + movedelay > world.time) diff --git a/code/modules/vehicles/atv.dm b/code/modules/vehicles/atv.dm index 6ba7625a3ed..ded15eb7683 100644 --- a/code/modules/vehicles/atv.dm +++ b/code/modules/vehicles/atv.dm @@ -3,7 +3,10 @@ name = "all-terrain vehicle" desc = "An all-terrain vehicle built for traversing rough terrain with ease. One of the few old-Earth technologies that are still relevant on most planet-bound outposts." icon_state = "atv" + max_integrity = 150 + armor = list("melee" = 50, "bullet" = 25, "laser" = 20, "energy" = 0, "bomb" = 50, "bio" = 0, "rad" = 0, "fire" = 60, "acid" = 60) key_type = /obj/item/key + integrity_failure = 70 var/static/mutable_appearance/atvcover /obj/vehicle/ridden/atv/Initialize() @@ -60,3 +63,42 @@ turret.pixel_x = 12 turret.pixel_y = 4 turret.layer = OBJ_LAYER + +/obj/vehicle/ridden/atv/attackby(obj/item/W as obj, mob/user as mob, params) + if(W.tool_behaviour == TOOL_WELDER && user.a_intent != INTENT_HARM) + if(obj_integrity < max_integrity) + if(W.use_tool(src, user, 0, volume=50, amount=1)) + user.visible_message("[user] repairs some damage to [name].", "You repair some damage to \the [src].") + obj_integrity += min(10, max_integrity-obj_integrity) + if(obj_integrity == max_integrity) + to_chat(user, "It looks to be fully repaired now.") + return TRUE + return ..() + +/obj/vehicle/ridden/secway/obj_break() + START_PROCESSING(SSobj, src) + return ..() + +/obj/vehicle/ridden/atv/process() + if(obj_integrity >= integrity_failure) + return PROCESS_KILL + if(prob(20)) + return + var/datum/effect_system/smoke_spread/smoke = new + smoke.set_up(0, src) + smoke.start() + +/obj/vehicle/ridden/atv/bullet_act(obj/item/projectile/P) + if(prob(50) && buckled_mobs) + for(var/mob/M in buckled_mobs) + M.bullet_act(P) + return TRUE + return ..() + +/obj/vehicle/ridden/atv/obj_destruction() + explosion(src, -1, 0, 2, 4, flame_range = 3) + return ..() + +/obj/vehicle/ridden/atv/Destroy() + STOP_PROCESSING(SSobj,src) + return ..() diff --git a/code/modules/vehicles/bicycle.dm b/code/modules/vehicles/bicycle.dm index 8d78b5e3c0e..f42d18628dd 100644 --- a/code/modules/vehicles/bicycle.dm +++ b/code/modules/vehicles/bicycle.dm @@ -2,7 +2,8 @@ name = "bicycle" desc = "Keep away from electricity." icon_state = "bicycle" - + fall_off_if_missing_arms = TRUE + /obj/vehicle/ridden/bicycle/Initialize() . = ..() var/datum/component/riding/D = LoadComponent(/datum/component/riding) diff --git a/code/modules/vehicles/cars/car.dm b/code/modules/vehicles/cars/car.dm index 8c96febdc31..5485ab08f7b 100644 --- a/code/modules/vehicles/cars/car.dm +++ b/code/modules/vehicles/cars/car.dm @@ -30,6 +30,7 @@ return last_enginesound_time = world.time playsound(src, engine_sound, 100, TRUE) + return TRUE /obj/vehicle/sealed/car/MouseDrop_T(atom/dropping, mob/M) if(M.stat || M.restrained()) @@ -78,11 +79,15 @@ return FALSE if(occupant_amount() >= max_occupants) return FALSE - if(do_mob(forcer, get_enter_delay(M), target = src)) + var/atom/old_loc = loc + if(do_mob(forcer, M, get_enter_delay(M), extra_checks=CALLBACK(src, /obj/vehicle/sealed/car/proc/is_car_stationary, old_loc))) mob_forced_enter(M, silent) return TRUE return FALSE +/obj/vehicle/sealed/car/proc/is_car_stationary(atom/old_loc) + return (old_loc == loc) + /obj/vehicle/sealed/car/proc/mob_forced_enter(mob/M, silent = FALSE) if(!silent) M.visible_message("[M] is forced into \the [src]!") diff --git a/code/modules/vehicles/cars/clowncar.dm b/code/modules/vehicles/cars/clowncar.dm index 638ac854911..911cb697d24 100644 --- a/code/modules/vehicles/cars/clowncar.dm +++ b/code/modules/vehicles/cars/clowncar.dm @@ -42,6 +42,10 @@ var/mob/voreman = i SSmedals.UnlockMedal(MEDAL_CLOWNCARKING,voreman.client) +/obj/vehicle/sealed/car/clowncar/attack_animal(mob/living/simple_animal/M) + if((M.loc != src) || M.environment_smash & (ENVIRONMENT_SMASH_WALLS|ENVIRONMENT_SMASH_RWALLS)) + return ..() + /obj/vehicle/sealed/car/clowncar/mob_exit(mob/M, silent = FALSE, randomstep = FALSE) . = ..() UnregisterSignal(M, COMSIG_MOB_CLICKON) diff --git a/code/modules/vehicles/lavaboat.dm b/code/modules/vehicles/lavaboat.dm index ce33338ddc6..2f199efe942 100644 --- a/code/modules/vehicles/lavaboat.dm +++ b/code/modules/vehicles/lavaboat.dm @@ -8,6 +8,8 @@ icon = 'icons/obj/lavaland/dragonboat.dmi' resistance_flags = LAVA_PROOF | FIRE_PROOF can_buckle = TRUE + legs_required = 0 + arms_required = 0 /obj/vehicle/ridden/lavaboat/Initialize() . = ..() diff --git a/code/modules/vehicles/ridden.dm b/code/modules/vehicles/ridden.dm index 25a337bc226..c25c0627af7 100644 --- a/code/modules/vehicles/ridden.dm +++ b/code/modules/vehicles/ridden.dm @@ -5,7 +5,9 @@ buckle_lying = FALSE default_driver_move = FALSE var/legs_required = 2 - var/arms_requires = 0 //why not? + var/arms_required = 1 //why not? + var/fall_off_if_missing_arms = FALSE //heh... + var/message_cooldown = 0 /obj/vehicle/ridden/Initialize() . = ..() @@ -60,6 +62,29 @@ if(key_type && !is_key(inserted_key)) to_chat(user, "[src] has no key inserted!") return FALSE + if(legs_required) + var/how_many_legs = user.get_num_legs() + if(how_many_legs < legs_required) + if(message_cooldown < world.time) + to_chat(user, "You can't seem to manage that with[how_many_legs ? " your leg[how_many_legs > 1 ? "s" : null]" : "out legs"]...") + message_cooldown = world.time + 5 SECONDS + return FALSE + if(arms_required) + var/how_many_arms = user.get_num_arms() + if(how_many_arms < arms_required) + if(fall_off_if_missing_arms) + unbuckle_mob(user, TRUE) + user.visible_message("[user] falls off of \the [src].",\ + "You fall of \the [src] while trying to operate it without [arms_required ? "both arms":"an arm"]!") + if(isliving(user)) + var/mob/living/L = user + L.Stun(30) + return FALSE + + if(message_cooldown < world.time) + to_chat(user, "You can't seem to manage that with[how_many_arms ? " your arm[how_many_arms > 1 ? "s" : null]" : "out arms"]...") + message_cooldown = world.time + 5 SECONDS + return FALSE var/datum/component/riding/R = GetComponent(/datum/component/riding) R.handle_ride(user, direction) return ..() diff --git a/code/modules/vehicles/scooter.dm b/code/modules/vehicles/scooter.dm index edee85de2dc..e2225b8b5e3 100644 --- a/code/modules/vehicles/scooter.dm +++ b/code/modules/vehicles/scooter.dm @@ -2,6 +2,8 @@ name = "scooter" desc = "A fun way to get around." icon_state = "scooter" + are_legs_exposed = TRUE + fall_off_if_missing_arms = TRUE /obj/vehicle/ridden/scooter/Initialize() . = ..() @@ -31,19 +33,21 @@ else buckled_mob.pixel_y = -4 -/obj/vehicle/ridden/scooter/buckle_mob(mob/living/M, force = 0, check_loc = 1) +/obj/vehicle/ridden/scooter/buckle_mob(mob/living/M, force = FALSE, check_loc = TRUE) if(!istype(M)) - return 0 - if(M.get_num_legs() < 2 && M.get_num_arms() <= 0) - to_chat(M, "Your limbless body can't ride \the [src].") - return 0 - . = ..() + return FALSE + if(M.get_num_legs() < legs_required && M.get_num_arms() < arms_required) + to_chat(M, "You don't think it'd be a good idea trying to ride \the [src]...") + return FALSE + return ..() /obj/vehicle/ridden/scooter/skateboard name = "skateboard" desc = "An unfinished scooter which can only barely be called a skateboard. It's still rideable, but probably unsafe. Looks like you'll need to add a few rods to make handlebars. Alt-click to adjust speed." icon_state = "skateboard" density = FALSE + arms_required = 0 + fall_off_if_missing_arms = FALSE var/adjusted_speed = FALSE /obj/vehicle/ridden/scooter/skateboard/Initialize() diff --git a/code/modules/vehicles/secway.dm b/code/modules/vehicles/secway.dm index e6112f2648e..bfb451f68a7 100644 --- a/code/modules/vehicles/secway.dm +++ b/code/modules/vehicles/secway.dm @@ -3,10 +3,52 @@ name = "secway" desc = "A brave security cyborg gave its life to help you look like a complete tool." icon_state = "secway" + max_integrity = 100 + armor = list("melee" = 20, "bullet" = 15, "laser" = 10, "energy" = 0, "bomb" = 30, "bio" = 0, "rad" = 0, "fire" = 60, "acid" = 60) key_type = /obj/item/key/security + integrity_failure = 50 /obj/vehicle/ridden/secway/Initialize() . = ..() var/datum/component/riding/D = LoadComponent(/datum/component/riding) D.vehicle_move_delay = 1.5 D.set_riding_offsets(RIDING_OFFSET_ALL, list(TEXT_NORTH = list(0, 4), TEXT_SOUTH = list(0, 4), TEXT_EAST = list(0, 4), TEXT_WEST = list( 0, 4))) + +/obj/vehicle/ridden/secway/obj_break() + START_PROCESSING(SSobj, src) + return ..() + +/obj/vehicle/ridden/secway/process() + if(obj_integrity >= integrity_failure) + return PROCESS_KILL + if(prob(20)) + return + var/datum/effect_system/smoke_spread/smoke = new + smoke.set_up(0, src) + smoke.start() + +/obj/vehicle/ridden/secway/attackby(obj/item/W, mob/user, params) + if(W.tool_behaviour == TOOL_WELDER && user.a_intent != INTENT_HARM) + if(obj_integrity < max_integrity) + if(W.use_tool(src, user, 0, volume = 50, amount = 1)) + user.visible_message("[user] repairs some damage to [name].", "You repair some damage to \the [src].") + obj_integrity += min(10, max_integrity-obj_integrity) + if(obj_integrity == max_integrity) + to_chat(user, "It looks to be fully repaired now.") + return TRUE + return ..() + +/obj/vehicle/ridden/secway/obj_destruction() + explosion(src, -1, 0, 2, 4, flame_range = 3) + return ..() + +/obj/vehicle/ridden/secway/Destroy() + STOP_PROCESSING(SSobj,src) + return ..() + +/obj/vehicle/ridden/secway/bullet_act(obj/item/projectile/P) + if(prob(60) && buckled_mobs) + for(var/mob/M in buckled_mobs) + M.bullet_act(P) + return TRUE + return ..() \ No newline at end of file diff --git a/code/modules/vehicles/wheelchair.dm b/code/modules/vehicles/wheelchair.dm index 9a03b19d929..29dee838e64 100644 --- a/code/modules/vehicles/wheelchair.dm +++ b/code/modules/vehicles/wheelchair.dm @@ -35,18 +35,17 @@ return ..() /obj/vehicle/ridden/wheelchair/driver_move(mob/living/user, direction) - var/mob/living/carbon/human/H = user - if(istype(H)) - if(!H.get_num_arms() && canmove) - to_chat(H, "You can't move the wheels without arms!") + if(istype(user)) + if(canmove && (user.get_num_arms() < arms_required)) + to_chat(user, "You don't have enough arms to operate the wheels!") canmove = FALSE - addtimer(VARSET_CALLBACK(src, canmove , TRUE), 20) + addtimer(VARSET_CALLBACK(src, canmove, TRUE), 20) return FALSE var/datum/component/riding/D = GetComponent(/datum/component/riding) //1.5 (movespeed as of this change) multiplied by 6.7 gets ABOUT 10 (rounded), the old constant for the wheelchair that gets divided by how many arms they have //if that made no sense this simply makes the wheelchair speed change along with movement speed delay - D.vehicle_move_delay = round(CONFIG_GET(number/movedelay/run_delay) * 6.7) / min(H.get_num_arms(), 2) - ..() + D.vehicle_move_delay = round(CONFIG_GET(number/movedelay/run_delay) * 6.7) / min(user.get_num_arms(), 2) + return ..() /obj/vehicle/ridden/wheelchair/Moved() . = ..() @@ -104,8 +103,7 @@ return FALSE /obj/vehicle/ridden/wheelchair/the_whip/driver_move(mob/living/user, direction) - var/mob/living/carbon/human/H = user - if(istype(H)) + if(istype(user)) var/datum/component/riding/D = GetComponent(/datum/component/riding) - D.vehicle_move_delay = round(CONFIG_GET(number/movedelay/run_delay) * 6.7) / H.get_num_arms() - ..() + D.vehicle_move_delay = round(CONFIG_GET(number/movedelay/run_delay) * 6.7) / user.get_num_arms() + return ..() diff --git a/code/modules/vending/_vending.dm b/code/modules/vending/_vending.dm index 3c2c6f59d10..397627075ae 100644 --- a/code/modules/vending/_vending.dm +++ b/code/modules/vending/_vending.dm @@ -16,6 +16,8 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY CANISTER CHARGES in vending_items.dm */ +#define MAX_VENDING_INPUT_AMOUNT 30 + /datum/data/vending_product name = "generic" var/product_path = null @@ -41,6 +43,8 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C payment_department = ACCOUNT_SRV var/active = 1 //No sales pitches if off! var/vend_ready = 1 //Are we ready to vend?? Is it time?? + var/purchase_message_cooldown + var/last_shopper // To be filled out at compile time var/list/products = list() //For each, use the following pattern: @@ -72,8 +76,10 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C var/default_price = 25 var/extra_price = 50 var/onstation = TRUE //if it doesn't originate from off-station during mapload, everything is free + var/list/canload_access_list - var/dish_quants = list() //used by the snack machine's custom compartment to count dishes. + var/list/vending_machine_input = list() + var/input_display_header = "Custom Compartment" var/obj/item/vending_refill/refill_canister = null //The type of refill canisters used by this machine. @@ -165,14 +171,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C if (dump_amount >= 16) return -/obj/machinery/vending/proc/GetIconForProduct(datum/data/vending_product/P) - if(GLOB.vending_cache[P.product_path]) - return GLOB.vending_cache[P.product_path] - - var/product = new P.product_path() - GLOB.vending_cache[P.product_path] = icon2base64(getFlatIcon(product, no_anim = TRUE)) - qdel(product) - return GLOB.vending_cache[P.product_path] +GLOBAL_LIST_EMPTY(vending_products) /obj/machinery/vending/proc/build_inventory(list/productlist, list/recordlist, start_empty = FALSE) for(var/typepath in productlist) @@ -182,6 +181,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C var/atom/temp = typepath var/datum/data/vending_product/R = new /datum/data/vending_product() + GLOB.vending_products[typepath] = 1 R.name = initial(temp.name) R.product_path = typepath if(!start_empty) @@ -278,8 +278,42 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C else to_chat(user, "There's nothing to restock!") return + if(compartmentLoadAccessCheck(user)) + if(canLoadItem(I)) + loadingAttempt(I,user) + updateUsrDialog() //can't put this on the proc above because we spam it below + + if(istype(I, /obj/item/storage/bag)) //trays USUALLY + var/obj/item/storage/T = I + var/loaded = 0 + var/denied_items = 0 + for(var/obj/item/the_item in T.contents) + if(contents.len >= MAX_VENDING_INPUT_AMOUNT) // no more than 30 item can fit inside, legacy from snack vending although not sure why it exists + to_chat(user, "[src]'s chef compartment is full.") + break + if(loadingAttempt(the_item,user)) + SEND_SIGNAL(T, COMSIG_TRY_STORAGE_TAKE, the_item, src, TRUE) + loaded++ + else + denied_items++ + if(denied_items) + to_chat(user, "[src] refuses some items.") + if(loaded) + to_chat(user, "You insert [loaded] dishes into [src]'s chef compartment.") + updateUsrDialog() else - return ..() + ..() + +/obj/machinery/vending/proc/loadingAttempt(obj/item/I,mob/user) + . = TRUE + if(!user.transferItemToLoc(I, src)) + return FALSE + if(vending_machine_input[I.name]) + vending_machine_input[I.name]++ + else + vending_machine_input[I.name] = 1 + to_chat(user, "You insert [I] into [src]'s input compartment.") + /obj/machinery/vending/exchange_parts(mob/user, obj/item/storage/part_replacer/W) if(!istype(W)) @@ -320,7 +354,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C return ..() /obj/machinery/vending/ui_interact(mob/user) - var/dat = "" + var/list/dat = list() var/datum/bank_account/account var/mob/living/carbon/human/H var/obj/item/card/id/C @@ -334,8 +368,8 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C dat += "

No account on registered ID card!

" if(onstation && C && C.registered_account) account = C.registered_account - dat += "

Select an item

" - dat += "
" + dat += {"

Select an item

+
"} if(!product_records.len) dat += "No product loaded!" else @@ -354,8 +388,8 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C price_listed = "FREE" if(coin_records.Find(R) || is_hidden) price_listed = "$[R.custom_premium_price ? R.custom_premium_price : extra_price]" - dat += "" - dat += "[sanitize(R.name)] ([price_listed])" + dat += {" + [sanitize(R.name)] ([price_listed])"} if(R.amount > 0 && ((C && C.registered_account && onstation) || (!onstation && isliving(user)))) dat += "[R.amount] Vend" else @@ -365,18 +399,19 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C dat += "
" if(onstation && C && C.registered_account) dat += "Balance: $[account.account_balance]" - if(istype(src, /obj/machinery/vending/snack)) - dat += "

Chef's Food Selection

" + if(vending_machine_input.len) + dat += "

[input_display_header]

" dat += "
" - for (var/O in dish_quants) - if(dish_quants[O] > 0) - var/N = dish_quants[O] + for (var/O in vending_machine_input) + if(vending_machine_input[O] > 0) + var/N = vending_machine_input[O] dat += "Dispense " dat += "[capitalize(O)] ($[default_price]): [N]
" dat += "
" var/datum/browser/popup = new(user, "vending", (name)) - popup.set_content(dat) + popup.add_stylesheet(get_asset_datum(/datum/asset/spritesheet/vending)) + popup.set_content(dat.Join("")) popup.set_title_image(user.browse_rsc_icon(icon, icon_state)) popup.open() @@ -388,7 +423,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C if((href_list["dispense"]) && (vend_ready)) var/N = href_list["dispense"] - if(dish_quants[N] <= 0) // Sanity check, there are probably ways to press the button when it shouldn't be possible. + if(vending_machine_input[N] <= 0) // Sanity check, there are probably ways to press the button when it shouldn't be possible. return vend_ready = 0 if(ishuman(usr) && onstation) @@ -413,7 +448,7 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C D.adjust_money(chef_price) use_power(5) - dish_quants[N] = max(dish_quants[N] - 1, 0) + vending_machine_input[N] = max(vending_machine_input[N] - 1, 0) for(var/obj/O in contents) if(O.name == N) say("Thank you for supporting your local kitchen and purchasing [O]!") @@ -481,7 +516,10 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C var/datum/bank_account/D = SSeconomy.get_dep_account(payment_department) if(D) D.adjust_money(price_to_use) - say("Thank you for shopping with [src]!") + if(last_shopper != usr || purchase_message_cooldown < world.time) + say("Thank you for shopping with [src]!") + purchase_message_cooldown = world.time + 5 SECONDS + last_shopper = usr use_power(5) if(icon_vend) //Show the vending animation if needed flick(icon_vend,src) @@ -575,5 +613,28 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C else return FALSE +/obj/machinery/vending/proc/canLoadItem(obj/item/I,mob/user) + return FALSE + +/obj/machinery/vending/proc/compartmentLoadAccessCheck(mob/user) + if(!canload_access_list) + return TRUE + else + var/do_you_have_access = FALSE + var/req_access_txt_holder = req_access_txt + for(var/i in canload_access_list) + req_access_txt = i + if(!allowed(user) && !(obj_flags & EMAGGED) && scan_id) + continue + else + do_you_have_access = TRUE + break //you passed don't bother looping anymore + req_access_txt = req_access_txt_holder // revert to normal (before the proc ran) + if(do_you_have_access) + return TRUE + else + to_chat(user, "[src]'s input compartment blinks red: Access denied.") + return FALSE + /obj/machinery/vending/onTransitZ() return diff --git a/code/modules/vending/assist.dm b/code/modules/vending/assist.dm index 6e2819d539e..d9818ea0d40 100644 --- a/code/modules/vending/assist.dm +++ b/code/modules/vending/assist.dm @@ -1,15 +1,18 @@ /obj/machinery/vending/assist products = list(/obj/item/assembly/prox_sensor = 5, - /obj/item/assembly/igniter = 3, - /obj/item/assembly/signaler = 4, - /obj/item/wirecutters = 1, - /obj/item/cartridge/signal = 4) + /obj/item/assembly/igniter = 3, + /obj/item/assembly/signaler = 4, + /obj/item/wirecutters = 1, + /obj/item/cartridge/signal = 4) contraband = list(/obj/item/assembly/timer = 2, - /obj/item/assembly/voice = 2, - /obj/item/assembly/health = 2) + /obj/item/assembly/voice = 2, + /obj/item/assembly/health = 2) + refill_canister = /obj/item/vending_refill/assist product_ads = "Only the finest!;Have some tools.;The most robust equipment.;The finest gear in space!" - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF default_price = 10 extra_price = 50 - payment_department = NO_FREEBIES \ No newline at end of file + payment_department = NO_FREEBIES + +/obj/item/vending_refill/assist + machine_name = "Vendomat" + icon_state = "refill_engi" \ No newline at end of file diff --git a/code/modules/vending/autodrobe.dm b/code/modules/vending/autodrobe.dm index e6b1103ac22..bd88395279b 100644 --- a/code/modules/vending/autodrobe.dm +++ b/code/modules/vending/autodrobe.dm @@ -31,6 +31,8 @@ /obj/item/clothing/head/that = 1, /obj/item/clothing/under/kilt = 1, /obj/item/clothing/head/beret = 1, + /obj/item/clothing/head/beret/vintage = 1, + /obj/item/clothing/head/beret/archaic = 1, /obj/item/clothing/accessory/waistcoat = 1, /obj/item/clothing/glasses/monocle =1, /obj/item/clothing/head/bowler = 1, @@ -59,7 +61,8 @@ /obj/item/clothing/head/ushanka = 1, /obj/item/clothing/suit/imperium_monk = 1, /obj/item/clothing/mask/gas/cyborg = 1, - /obj/item/clothing/suit/holidaypriest = 1, + /obj/item/clothing/suit/chaplainsuit/holidaypriest = 1, + /obj/item/clothing/suit/chaplainsuit/whiterobe = 1, /obj/item/clothing/head/wizard/marisa/fake = 1, /obj/item/clothing/suit/wizrobe/marisa/fake = 1, /obj/item/clothing/under/sundress = 1, @@ -125,8 +128,13 @@ /obj/item/clothing/under/roman = 1, /obj/item/clothing/shoes/roman = 1, /obj/item/shield/riot/roman/fake = 1, + /obj/item/clothing/suit/chaplainsuit/clownpriest = 1, + /obj/item/clothing/head/clownmitre = 1, /obj/item/skub = 1,) +/obj/machinery/vending/autodrobe/canLoadItem(obj/item/I,mob/user) + return (I.type in products) + refill_canister = /obj/item/vending_refill/autodrobe default_price = 50 extra_price = 75 diff --git a/code/modules/vending/boozeomat.dm b/code/modules/vending/boozeomat.dm index 359d46320fc..bf607b99f87 100644 --- a/code/modules/vending/boozeomat.dm +++ b/code/modules/vending/boozeomat.dm @@ -30,10 +30,13 @@ /obj/item/reagent_containers/food/drinks/bottle/hcider = 5, /obj/item/reagent_containers/food/drinks/bottle/absinthe = 5, /obj/item/reagent_containers/food/drinks/bottle/grappa = 5, - /obj/item/reagent_containers/food/drinks/bottle/sake = 5) + /obj/item/reagent_containers/food/drinks/bottle/sake = 5, + /obj/item/reagent_containers/food/drinks/bottle/applejack = 5) contraband = list(/obj/item/reagent_containers/food/drinks/mug/tea = 12, - /obj/item/reagent_containers/food/drinks/bottle/fernet = 5) - premium = list(/obj/item/reagent_containers/glass/bottle/ethanol = 4) + /obj/item/reagent_containers/food/drinks/bottle/fernet = 5) + premium = list(/obj/item/reagent_containers/glass/bottle/ethanol = 4, + /obj/item/reagent_containers/food/drinks/bottle/champagne = 5, + /obj/item/reagent_containers/food/drinks/bottle/trappist = 5) product_slogans = "I hope nobody asks me for a bloody cup o' tea...;Alcohol is humanity's friend. Would you abandon a friend?;Quite delighted to serve you!;Is nobody thirsty on this station?" product_ads = "Drink up!;Booze is good for you!;Alcohol is humanity's best friend.;Quite delighted to serve you!;Care for a nice, cold beer?;Nothing cures you like booze!;Have a sip!;Have a drink!;Have a beer!;Beer is good for you!;Only the finest alcohol!;Best quality booze since 2053!;Award-winning wine!;Maximum alcohol!;Man loves beer.;A toast for progress!" diff --git a/code/modules/vending/cartridge.dm b/code/modules/vending/cartridge.dm index e62a7ac165b..ec447026085 100644 --- a/code/modules/vending/cartridge.dm +++ b/code/modules/vending/cartridge.dm @@ -6,15 +6,19 @@ icon_state = "cart" icon_deny = "cart-deny" products = list(/obj/item/cartridge/medical = 10, - /obj/item/cartridge/engineering = 10, - /obj/item/cartridge/security = 10, + /obj/item/cartridge/engineering = 10, + /obj/item/cartridge/security = 10, /obj/item/cartridge/janitor = 10, /obj/item/cartridge/signal/toxins = 10, /obj/item/pda/heads = 10, /obj/item/cartridge/captain = 3, /obj/item/cartridge/quartermaster = 10) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/cart default_price = 50 extra_price = 100 payment_department = ACCOUNT_SRV + +/obj/item/vending_refill/cart + machine_name = "PTech" + icon_state = "refill_smoke" + diff --git a/code/modules/vending/clothesmate.dm b/code/modules/vending/clothesmate.dm index dbd5dfb72d0..d73e61c28a0 100644 --- a/code/modules/vending/clothesmate.dm +++ b/code/modules/vending/clothesmate.dm @@ -20,6 +20,9 @@ /obj/item/clothing/head/beanie/stripedred = 3, /obj/item/clothing/head/beanie/stripedblue = 3, /obj/item/clothing/head/beanie/stripedgreen = 3, + /obj/item/clothing/head/beanie/rasta = 3, + /obj/item/clothing/head/kippah = 3, + /obj/item/clothing/head/taqiyahred = 3, /obj/item/clothing/gloves/fingerless = 2, /obj/item/clothing/neck/scarf/pink = 3, /obj/item/clothing/neck/scarf/red = 3, @@ -56,6 +59,7 @@ /obj/item/clothing/under/pants/tan = 2, /obj/item/clothing/under/pants/track = 2, /obj/item/clothing/shoes/sneakers/black = 4, + /obj/item/clothing/head/wig/natural = 4, /obj/item/clothing/under/plaid_skirt = 2, /obj/item/clothing/under/plaid_skirt/blue = 2, /obj/item/clothing/under/plaid_skirt/purple = 2, @@ -118,6 +122,10 @@ default_price = 50 extra_price = 75 payment_department = NO_FREEBIES + +/obj/machinery/vending/clothing/canLoadItem(obj/item/I,mob/user) + return (I.type in products) + /obj/item/vending_refill/clothing machine_name = "ClothesMate" icon_state = "refill_clothes" diff --git a/code/modules/vending/drinnerware.dm b/code/modules/vending/drinnerware.dm index 6f7f33a0294..08bf75b33cc 100644 --- a/code/modules/vending/drinnerware.dm +++ b/code/modules/vending/drinnerware.dm @@ -4,20 +4,24 @@ product_ads = "Mm, food stuffs!;Food and food accessories.;Get your plates!;You like forks?;I like forks.;Woo, utensils.;You don't really need these..." icon_state = "dinnerware" products = list(/obj/item/storage/bag/tray = 8, - /obj/item/reagent_containers/glass/bowl = 20, - /obj/item/kitchen/fork = 6, - /obj/item/reagent_containers/food/drinks/drinkingglass = 8, - /obj/item/reagent_containers/food/condiment/pack/ketchup = 5, - /obj/item/reagent_containers/food/condiment/pack/hotsauce = 5, - /obj/item/reagent_containers/food/condiment/saltshaker = 5, - /obj/item/reagent_containers/food/condiment/peppermill = 5, - /obj/item/clothing/suit/apron/chef = 2, - /obj/item/kitchen/rollingpin = 2, - /obj/item/kitchen/knife = 2) + /obj/item/reagent_containers/glass/bowl = 20, + /obj/item/kitchen/fork = 6, + /obj/item/reagent_containers/food/drinks/drinkingglass = 8, + /obj/item/reagent_containers/food/condiment/pack/ketchup = 5, + /obj/item/reagent_containers/food/condiment/pack/hotsauce = 5, + /obj/item/reagent_containers/food/condiment/pack/astrotame = 5, + /obj/item/reagent_containers/food/condiment/saltshaker = 5, + /obj/item/reagent_containers/food/condiment/peppermill = 5, + /obj/item/clothing/suit/apron/chef = 2, + /obj/item/kitchen/rollingpin = 2, + /obj/item/kitchen/knife = 2) contraband = list(/obj/item/kitchen/rollingpin = 2, - /obj/item/kitchen/knife/butcher = 2) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + /obj/item/kitchen/knife/butcher = 2) + refill_canister = /obj/item/vending_refill/dinnerware default_price = 5 extra_price = 50 payment_department = ACCOUNT_SRV + +/obj/item/vending_refill/dinnerware + machine_name = "Plasteel Chef's Dinnerware Vendor" + icon_state = "refill_smoke" diff --git a/code/modules/vending/engineering.dm b/code/modules/vending/engineering.dm index cdc04d77daf..0dbc4254676 100644 --- a/code/modules/vending/engineering.dm +++ b/code/modules/vending/engineering.dm @@ -27,8 +27,11 @@ /obj/item/stock_parts/micro_laser = 5, /obj/item/stock_parts/matter_bin = 5, /obj/item/stock_parts/manipulator = 5) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/engineering default_price = 50 extra_price = 60 - payment_department = ACCOUNT_ENG \ No newline at end of file + payment_department = ACCOUNT_ENG + +/obj/item/vending_refill/engineering + machine_name = "Robco Tool Maker" + icon_state = "refill_engi" \ No newline at end of file diff --git a/code/modules/vending/engivend.dm b/code/modules/vending/engivend.dm index a898fb3cf12..e070608127a 100644 --- a/code/modules/vending/engivend.dm +++ b/code/modules/vending/engivend.dm @@ -11,17 +11,19 @@ /obj/item/grenade/chem_grenade/smart_metal_foam = 10, /obj/item/geiger_counter = 5, /obj/item/stock_parts/cell/high = 10, - /obj/item/electronics/airlock = 10, + /obj/item/electronics/airlock = 10, /obj/item/electronics/apc = 10, /obj/item/electronics/airalarm = 10, /obj/item/electronics/firealarm = 10, - /obj/item/electronics/firelock = 10 - ) + /obj/item/electronics/firelock = 10) contraband = list(/obj/item/stock_parts/cell/potato = 3) premium = list(/obj/item/storage/belt/utility = 3, - /obj/item/storage/box/smart_metal_foam = 1) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + /obj/item/storage/box/smart_metal_foam = 1) + refill_canister = /obj/item/vending_refill/engivend default_price = 20 extra_price = 50 - payment_department = ACCOUNT_ENG \ No newline at end of file + payment_department = ACCOUNT_ENG + +/obj/item/vending_refill/engivend + machine_name = "Engi-Vend" + icon_state = "refill_engi" \ No newline at end of file diff --git a/code/modules/vending/games.dm b/code/modules/vending/games.dm index b965cc3f2e7..f4f1b419f91 100644 --- a/code/modules/vending/games.dm +++ b/code/modules/vending/games.dm @@ -9,9 +9,10 @@ /obj/item/toy/cards/deck/cas/black = 3) contraband = list(/obj/item/dice/fudge = 9) refill_canister = /obj/item/vending_refill/games - default_price = 25 - extra_price = 50 + default_price = 10 + extra_price = 25 payment_department = ACCOUNT_SRV + /obj/item/vending_refill/games machine_name = "\improper Good Clean Fun" icon_state = "refill_games" diff --git a/code/modules/vending/medical.dm b/code/modules/vending/medical.dm index f4a06874372..ad7341cc29e 100644 --- a/code/modules/vending/medical.dm +++ b/code/modules/vending/medical.dm @@ -14,9 +14,10 @@ /obj/item/reagent_containers/pill/salbutamol = 2, /obj/item/reagent_containers/pill/insulin = 5, /obj/item/reagent_containers/glass/bottle/charcoal = 4, - /obj/item/reagent_containers/glass/bottle/epinephrine = 4, - /obj/item/reagent_containers/glass/bottle/salglu_solution = 3, + /obj/item/reagent_containers/glass/bottle/epinephrine = 3, /obj/item/reagent_containers/glass/bottle/morphine = 4, + /obj/item/reagent_containers/glass/bottle/potass_iodide = 1, + /obj/item/reagent_containers/glass/bottle/salglu_solution = 3, /obj/item/reagent_containers/glass/bottle/toxin = 3, /obj/item/reagent_containers/syringe/antiviral = 6, /obj/item/reagent_containers/medspray/styptic = 2, @@ -40,6 +41,7 @@ default_price = 25 extra_price = 100 payment_department = ACCOUNT_MED + /obj/item/vending_refill/medical machine_name = "NanoMed Plus" icon_state = "refill_medical" diff --git a/code/modules/vending/megaseed.dm b/code/modules/vending/megaseed.dm index 294b12a92eb..6e615375876 100644 --- a/code/modules/vending/megaseed.dm +++ b/code/modules/vending/megaseed.dm @@ -5,10 +5,10 @@ product_ads = "We like plants!;Grow some crops!;Grow, baby, growww!;Aw h'yeah son!" icon_state = "seeds" products = list(/obj/item/seeds/ambrosia = 3, - /obj/item/seeds/apple = 3, - /obj/item/seeds/cotton = 3, - /obj/item/seeds/banana = 3, - /obj/item/seeds/berry = 3, + /obj/item/seeds/apple = 3, + /obj/item/seeds/cotton = 3, + /obj/item/seeds/banana = 3, + /obj/item/seeds/berry = 3, /obj/item/seeds/cabbage = 3, /obj/item/seeds/carrot = 3, /obj/item/seeds/cherry = 3, @@ -18,6 +18,7 @@ /obj/item/seeds/coffee = 3, /obj/item/seeds/corn = 3, /obj/item/seeds/eggplant = 3, + /obj/item/seeds/garlic = 3, /obj/item/seeds/grape = 3, /obj/item/seeds/grass = 3, /obj/item/seeds/lemon = 3, @@ -40,17 +41,20 @@ /obj/item/seeds/wheat = 3, /obj/item/seeds/whitebeet = 3) contraband = list(/obj/item/seeds/amanita = 2, - /obj/item/seeds/glowshroom = 2, - /obj/item/seeds/liberty = 2, - /obj/item/seeds/nettle = 2, + /obj/item/seeds/glowshroom = 2, + /obj/item/seeds/liberty = 2, + /obj/item/seeds/nettle = 2, /obj/item/seeds/plump = 2, /obj/item/seeds/reishi = 2, /obj/item/seeds/cannabis = 3, /obj/item/seeds/starthistle = 2, /obj/item/seeds/random = 2) premium = list(/obj/item/reagent_containers/spray/waterflower = 1) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/hydroseeds default_price = 10 extra_price = 50 payment_department = ACCOUNT_SRV + +/obj/item/vending_refill/hydroseeds + machine_name = "MegaSeed Servitor" + icon_state = "refill_plant" \ No newline at end of file diff --git a/code/modules/vending/modularpc.dm b/code/modules/vending/modularpc.dm new file mode 100644 index 00000000000..f055d659dc7 --- /dev/null +++ b/code/modules/vending/modularpc.dm @@ -0,0 +1,30 @@ +/obj/machinery/vending/modularpc + name = "\improper Deluxe Silicate Selections" + desc = "All the parts you need to build your own custom pc." + icon_state = "modularpc" + icon_deny = "modularpc-deny" + product_ads = "Get your gamer gear!;The best GPUs for all of your space-crypto needs!;The most robust cooling!;The finest RGB in space!" + vend_reply = "Game on!" + products = list(/obj/item/modular_computer/laptop = 4, + /obj/item/modular_computer/tablet = 4, + /obj/item/computer_hardware/hard_drive = 4, + /obj/item/computer_hardware/hard_drive/small = 4, + /obj/item/computer_hardware/network_card = 8, + /obj/item/computer_hardware/hard_drive/portable = 8, + /obj/item/computer_hardware/battery = 8, + /obj/item/stock_parts/cell/computer = 8, + /obj/item/computer_hardware/processor_unit = 4, + /obj/item/computer_hardware/processor_unit/small = 4) + premium = list(/obj/item/computer_hardware/card_slot = 2, + /obj/item/computer_hardware/ai_slot = 2, + /obj/item/computer_hardware/printer/mini = 2, + /obj/item/computer_hardware/recharger/APC = 2, + /obj/item/paicard = 2) + refill_canister = /obj/item/vending_refill/modularpc + default_price = 30 + extra_price = 250 + payment_department = ACCOUNT_SCI + +/obj/item/vending_refill/modularpc + machine_name = "Deluxe Silicate Selections" + icon_state = "refill_engi" diff --git a/code/modules/vending/nutrimax.dm b/code/modules/vending/nutrimax.dm index 85802da5e94..d3741f7f852 100644 --- a/code/modules/vending/nutrimax.dm +++ b/code/modules/vending/nutrimax.dm @@ -6,18 +6,21 @@ icon_state = "nutri" icon_deny = "nutri-deny" products = list(/obj/item/reagent_containers/glass/bottle/nutrient/ez = 30, - /obj/item/reagent_containers/glass/bottle/nutrient/l4z = 20, - /obj/item/reagent_containers/glass/bottle/nutrient/rh = 10, - /obj/item/reagent_containers/spray/pestspray = 20, + /obj/item/reagent_containers/glass/bottle/nutrient/l4z = 20, + /obj/item/reagent_containers/glass/bottle/nutrient/rh = 10, + /obj/item/reagent_containers/spray/pestspray = 20, /obj/item/reagent_containers/syringe = 5, /obj/item/storage/bag/plants = 5, /obj/item/cultivator = 3, /obj/item/shovel/spade = 3, /obj/item/plant_analyzer = 4) contraband = list(/obj/item/reagent_containers/glass/bottle/ammonia = 10, - /obj/item/reagent_containers/glass/bottle/diethylamine = 5) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + /obj/item/reagent_containers/glass/bottle/diethylamine = 5) + refill_canister = /obj/item/vending_refill/hydronutrients default_price = 10 extra_price = 50 - payment_department = ACCOUNT_SRV \ No newline at end of file + payment_department = ACCOUNT_SRV + +/obj/item/vending_refill/hydronutrients + machine_name = "NutriMax" + icon_state = "refill_plant" \ No newline at end of file diff --git a/code/modules/vending/robotics.dm b/code/modules/vending/robotics.dm index 26d03a9ad02..05615e5f5d6 100644 --- a/code/modules/vending/robotics.dm +++ b/code/modules/vending/robotics.dm @@ -6,9 +6,9 @@ icon_deny = "robotics-deny" req_access = list(ACCESS_ROBOTICS) products = list(/obj/item/clothing/suit/toggle/labcoat = 4, - /obj/item/clothing/under/rank/roboticist = 4, - /obj/item/stack/cable_coil = 4, - /obj/item/assembly/flash/handheld = 4, + /obj/item/clothing/under/rank/roboticist = 4, + /obj/item/stack/cable_coil = 4, + /obj/item/assembly/flash/handheld = 4, /obj/item/stock_parts/cell/high = 12, /obj/item/assembly/prox_sensor = 3, /obj/item/assembly/signaler = 3, @@ -19,8 +19,11 @@ /obj/item/clothing/mask/breath/medical = 5, /obj/item/screwdriver = 5, /obj/item/crowbar = 5) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/robotics default_price = 50 extra_price = 75 payment_department = ACCOUNT_SCI + +/obj/item/vending_refill/robotics + machine_name = "Robotech Deluxe" + icon_state = "refill_engi" \ No newline at end of file diff --git a/code/modules/vending/security.dm b/code/modules/vending/security.dm index 523b7b78814..3e07ebc4906 100644 --- a/code/modules/vending/security.dm +++ b/code/modules/vending/security.dm @@ -6,21 +6,20 @@ icon_deny = "sec-deny" req_access = list(ACCESS_SECURITY) products = list(/obj/item/restraints/handcuffs = 8, - /obj/item/restraints/handcuffs/cable/zipties = 10, - /obj/item/grenade/flashbang = 4, - /obj/item/assembly/flash/handheld = 5, + /obj/item/restraints/handcuffs/cable/zipties = 10, + /obj/item/grenade/flashbang = 4, + /obj/item/assembly/flash/handheld = 5, /obj/item/reagent_containers/food/snacks/donut = 12, /obj/item/storage/box/evidence = 6, - /obj/item/flashlight/seclite = 4, - /obj/item/restraints/legcuffs/bola/energy = 7) + /obj/item/flashlight/seclite = 4, + /obj/item/restraints/legcuffs/bola/energy = 7) contraband = list(/obj/item/clothing/glasses/sunglasses = 2, - /obj/item/storage/fancy/donut_box = 2) + /obj/item/storage/fancy/donut_box = 2) premium = list(/obj/item/storage/belt/security/webbing = 5, - /obj/item/coin/antagtoken = 1, - /obj/item/clothing/head/helmet/blueshirt = 1, - /obj/item/clothing/suit/armor/vest/blueshirt = 1) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + /obj/item/coin/antagtoken = 1, + /obj/item/clothing/head/helmet/blueshirt = 1, + /obj/item/clothing/suit/armor/vest/blueshirt = 1) + refill_canister = /obj/item/vending_refill/security default_price = 100 extra_price = 150 payment_department = ACCOUNT_SEC @@ -33,3 +32,6 @@ var/obj/item/flashlight/F = I F.on = TRUE F.update_brightness() + +/obj/item/vending_refill/security + icon_state = "refill_sec" diff --git a/code/modules/vending/snack.dm b/code/modules/vending/snack.dm index 00f7897a298..c80b2457656 100644 --- a/code/modules/vending/snack.dm +++ b/code/modules/vending/snack.dm @@ -14,79 +14,34 @@ /obj/item/reagent_containers/food/snacks/energybar = 6) contraband = list(/obj/item/reagent_containers/food/snacks/syndicake = 6) refill_canister = /obj/item/vending_refill/snack - var/chef_compartment_access = "28" //ACCESS_KITCHEN + canload_access_list = list(ACCESS_KITCHEN) default_price = 20 extra_price = 30 payment_department = ACCOUNT_SRV + input_display_header = "Chef's Food Selection" /obj/item/vending_refill/snack machine_name = "Getmore Chocolate Corp" -/obj/machinery/vending/snack/attackby(obj/item/W, mob/user, params) - if(istype(W, /obj/item/reagent_containers/food/snacks)) - if(!compartment_access_check(user)) - return - var/obj/item/reagent_containers/food/snacks/S = W - if(!S.junkiness) - if(!iscompartmentfull(user)) - if(!user.transferItemToLoc(W, src)) - return - food_load(W) - to_chat(user, "You insert [W] into [src]'s chef compartment.") - else - to_chat(user, "[src]'s chef compartment does not accept junk food.") - - else if(istype(W, /obj/item/storage/bag/tray)) - if(!compartment_access_check(user)) - return - var/obj/item/storage/T = W - var/loaded = 0 - var/denied_items = 0 - for(var/obj/item/reagent_containers/food/snacks/S in T.contents) - if(iscompartmentfull(user)) - break - if(!S.junkiness) - SEND_SIGNAL(T, COMSIG_TRY_STORAGE_TAKE, S, src, TRUE) - food_load(S) - loaded++ - else - denied_items++ - if(denied_items) - to_chat(user, "[src] refuses some items.") - if(loaded) - to_chat(user, "You insert [loaded] dishes into [src]'s chef compartment.") - updateUsrDialog() - return - - else - return ..() +/obj/machinery/vending/snack/canLoadItem(obj/item/I,mob/user) + . = FALSE + if(istype(I,/obj/item/reagent_containers/food/snacks)) + var/obj/item/reagent_containers/food/snacks/snacki = I + if(snacki.junkiness) + return FALSE + return TRUE /obj/machinery/vending/snack/Destroy() for(var/obj/item/reagent_containers/food/snacks/S in contents) S.forceMove(get_turf(src)) return ..() -/obj/machinery/vending/snack/proc/compartment_access_check(user) - req_access_txt = chef_compartment_access - if(!allowed(user) && !(obj_flags & EMAGGED) && scan_id) - to_chat(user, "[src]'s chef compartment blinks red: Access denied.") - req_access_txt = "0" - return 0 - req_access_txt = "0" - return 1 - -/obj/machinery/vending/snack/proc/iscompartmentfull(mob/user) - if(contents.len >= 30) // no more than 30 dishes can fit inside - to_chat(user, "[src]'s chef compartment is full.") - return 1 - return 0 - /obj/machinery/vending/snack/proc/food_load(obj/item/reagent_containers/food/snacks/S) - if(dish_quants[S.name]) - dish_quants[S.name]++ + if(vending_machine_input[S.name]) + vending_machine_input[S.name]++ else - dish_quants[S.name] = 1 - sortList(dish_quants) + vending_machine_input[S.name] = 1 + sortList(vending_machine_input) /obj/machinery/vending/snack/random name = "\improper Random Snackies" diff --git a/code/modules/vending/sovietsoda.dm b/code/modules/vending/sovietsoda.dm index ee4cc74a496..56850946126 100644 --- a/code/modules/vending/sovietsoda.dm +++ b/code/modules/vending/sovietsoda.dm @@ -5,8 +5,11 @@ product_ads = "For Tsar and Country.;Have you fulfilled your nutrition quota today?;Very nice!;We are simple people, for this is all we eat.;If there is a person, there is a problem. If there is no person, then there is no problem." products = list(/obj/item/reagent_containers/food/drinks/drinkingglass/filled/soda = 30) contraband = list(/obj/item/reagent_containers/food/drinks/drinkingglass/filled/cola = 20) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) resistance_flags = FIRE_PROOF default_price = 1 extra_price = 1 - payment_department = NO_FREEBIES \ No newline at end of file + payment_department = NO_FREEBIES + +/obj/item/vending_refill/sovietsoda + machine_name = "BODA" + icon_state = "refill_cola" \ No newline at end of file diff --git a/code/modules/vending/sustenance.dm b/code/modules/vending/sustenance.dm index c703142c6d6..266a58e10ab 100644 --- a/code/modules/vending/sustenance.dm +++ b/code/modules/vending/sustenance.dm @@ -11,8 +11,11 @@ /obj/item/reagent_containers/food/drinks/coffee = 12, /obj/item/tank/internals/emergency_oxygen = 6, /obj/item/clothing/mask/breath = 6) - armor = list("melee" = 100, "bullet" = 100, "laser" = 100, "energy" = 100, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 50) - resistance_flags = FIRE_PROOF + refill_canister = /obj/item/vending_refill/sustenance default_price = 0 extra_price = 0 payment_department = NO_FREEBIES + +/obj/item/vending_refill/sustenance + machine_name = "Sustenance Vendor" + icon_state = "refill_snack" diff --git a/code/modules/vending/wardrobes.dm b/code/modules/vending/wardrobes.dm index 847f9a1d8cd..45b380fbf6c 100644 --- a/code/modules/vending/wardrobes.dm +++ b/code/modules/vending/wardrobes.dm @@ -5,6 +5,10 @@ default_price = 50 extra_price = 75 payment_department = NO_FREEBIES + input_display_header = "Returned Clothing" + +/obj/machinery/vending/wardrobe/canLoadItem(obj/item/I,mob/user) + return (I.type in products) /obj/machinery/vending/wardrobe/sec_wardrobe name = "\improper SecDrobe" @@ -262,7 +266,7 @@ /obj/item/melee/flyswatter = 1, /obj/item/flashlight = 1, /obj/item/caution = 6, - /obj/item/holosign_creator = 1, + /obj/item/holosign_creator/janibarrier = 1, /obj/item/lightreplacer = 1, /obj/item/soap/nanotrasen = 1, /obj/item/storage/bag/trash = 1, @@ -307,12 +311,22 @@ /obj/item/clothing/accessory/pocketprotector/cosmetology = 1, /obj/item/clothing/under/rank/chaplain = 1, /obj/item/clothing/shoes/sneakers/black = 1, - /obj/item/clothing/suit/nun = 1, + /obj/item/clothing/suit/chaplainsuit/nun = 1, /obj/item/clothing/head/nun_hood = 1, - /obj/item/clothing/suit/holidaypriest = 1, - /obj/item/storage/fancy/candle_box = 2) + /obj/item/clothing/suit/chaplainsuit/holidaypriest = 1, + /obj/item/storage/fancy/candle_box = 2, + /obj/item/clothing/head/kippah = 3, + /obj/item/clothing/suit/chaplainsuit/whiterobe = 1, + /obj/item/clothing/head/taqiyahwhite = 1, + /obj/item/clothing/head/taqiyahred = 3, + /obj/item/clothing/head/beanie/rasta = 1) contraband = list(/obj/item/toy/plush/plushvar = 1, - /obj/item/toy/plush/narplush = 1) + /obj/item/toy/plush/narplush = 1, + /obj/item/clothing/head/medievaljewhat = 3, + /obj/item/clothing/suit/chaplainsuit/clownpriest = 1, + /obj/item/clothing/head/clownmitre = 1) + premium = list(/obj/item/clothing/suit/chaplainsuit/bishoprobe = 1, + /obj/item/clothing/head/bishopmitre = 1) refill_canister = /obj/item/vending_refill/wardrobe/chap_wardrobe payment_department = ACCOUNT_CIV /obj/item/vending_refill/wardrobe/chap_wardrobe diff --git a/code/modules/zombie/items.dm b/code/modules/zombie/items.dm index 35daa55c104..abe9f984f3b 100644 --- a/code/modules/zombie/items.dm +++ b/code/modules/zombie/items.dm @@ -16,7 +16,7 @@ /obj/item/zombie_hand/Initialize() . = ..() - add_trait(TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) + ADD_TRAIT(src, TRAIT_NODROP, HAND_REPLACEMENT_TRAIT) /obj/item/zombie_hand/equipped(mob/user, slot) . = ..() diff --git a/code/world.dm b/code/world.dm index 344ca9be79e..65d1e87680e 100644 --- a/code/world.dm +++ b/code/world.dm @@ -7,6 +7,7 @@ area = /area/space view = "15x15" hub = "Exadv1.spacestation13" + hub_password = "kMZy3U5jJHSiBQjr" name = "/tg/ Station 13" fps = 20 #ifdef FIND_REF_NO_CHECK_TICK diff --git a/config/awaymissionconfig.txt b/config/awaymissionconfig.txt index 51197eae7a7..f7d77b7b776 100644 --- a/config/awaymissionconfig.txt +++ b/config/awaymissionconfig.txt @@ -21,7 +21,4 @@ #_maps/RandomZLevels/research.dmm #_maps/RandomZLevels/Cabin.dmm #_maps/RandomZLevels/beach2.dmm -_maps/RandomZLevels/VR/mining_VR.dmm -_maps/RandomZLevels/VR/murderdome.dmm -_maps/RandomZLevels/VR/snowdin_VR.dmm -_maps/RandomZLevels/VR/syndicate_trainer.dmm \ No newline at end of file +_maps/RandomZLevels/VR/snowdin_VR.dmm \ No newline at end of file diff --git a/config/config.txt b/config/config.txt index 044784f44dd..96e89532c4f 100644 --- a/config/config.txt +++ b/config/config.txt @@ -134,6 +134,12 @@ LOG_MANIFEST ## log mecha actions # LOG_MECHA +## log virus and actions +LOG_VIRUS + +## log cloning actions +LOG_CLONING + ##Log camera pictures - Must have picture logging enabled PICTURE_LOGGING_CAMERA @@ -319,6 +325,9 @@ HARD_POPCAP_MESSAGE The server is currently serving a high number of users, You ## Message for extreme cap EXTREME_POPCAP_MESSAGE The server is currently serving a high number of users, find alternative servers. +## Uncomment to allow BYOND subscribers to bypassing server connection population cap. (Living player population cap still applies.) +BYOND_MEMBER_BYPASS_POPCAP + ## Notify admins when a new player connects for the first x days a player's been around. (0 for first connection only, -1 for never) ## Requres database NOTIFY_NEW_PLAYER_AGE 0 @@ -335,6 +344,9 @@ NOTIFY_NEW_PLAYER_ACCOUNT_AGE 1 ## Requires database #PANIC_BUNKER +## The message the Panic Bunker gives when someone is rejected by it +#PANIC_BUNKER_MESSAGE Sorry, but the server is currently not accepting connections from never before seen players. + ## If panic bunker is on and a player is rejected (see above), attempt to send them to this connected server (see below) instead. ## You probably want this to be the same as CROSS_SERVER_ADDRESS #PANIC_SERVER_ADDRESS byond://address:port @@ -376,6 +388,19 @@ AUTOADMIN_RANK Game Master ## Uncomment to automatically give that admin rank to all players #AUTOADMIN + +## Uncomment to automatically deadmin players when the game starts. +#AUTO_DEADMIN_PLAYERS + +## Uncomment to automatically deadmin antagonists when they gain the role. +#AUTO_DEADMIN_ANTAGONISTS + +## Uncomment to automatically deadmin specific role sets when a player joins the game. +#AUTO_DEADMIN_HEADS +#AUTO_DEADMIN_SECURITY +#AUTO_DEADMIN_SILICONS + + ## CLIENT VERSION CONTROL ## This allows you to configure the minimum required client version, as well as a warning version, and message for both. ## These trigger for any version below (non-inclusive) the given version, so 510 triggers on 509 or lower. diff --git a/config/game_options.txt b/config/game_options.txt index 9490062216b..0465e3ef209 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -286,6 +286,9 @@ ALLOW_AI_MULTICAM ## AWAY MISSIONS ### +## Uncomment to load the virtual reality hub map +#VIRTUAL_REALITY + ## Uncomment to load one of the missions from awaymissionconfig.txt at roundstart. #ROUNDSTART_AWAY diff --git a/config/jukebox_music/README.txt b/config/jukebox_music/README.txt index ea0e5443d06..c985746edd5 100644 --- a/config/jukebox_music/README.txt +++ b/config/jukebox_music/README.txt @@ -1,8 +1,8 @@ -The enclosed sounds folder holds the sound files used as player selectable songs for an ingame jukebox. OGG and WAV are supported. +The enclosed /sounds folder holds the sound files used for player selectable songs for an ingame jukebox. OGG and WAV are supported. Using unnecessarily huge sounds can cause client side lag and should be avoided. -You my add as many sounds as you would like. +You may add as many sounds as you would like. --- diff --git a/config/jukebox_music/sounds/exclude b/config/jukebox_music/sounds/exclude new file mode 100644 index 00000000000..e69de29bb2d diff --git a/config/title_music/README.txt b/config/title_music/README.txt index 6734508a68f..42e97970020 100644 --- a/config/title_music/README.txt +++ b/config/title_music/README.txt @@ -1,4 +1,4 @@ -The enclosed sounds folder holds the sound files used as the title music for the game. OGG and WAV are supported. +The enclosed /sounds folder holds the sound files used as the title music for the game. OGG and WAV are supported. Using unnecessarily huge sounds can cause client side lag and should be avoided. diff --git a/config/title_music/sounds/exclude b/config/title_music/sounds/exclude new file mode 100644 index 00000000000..e69de29bb2d diff --git a/config/title_screens/README.txt b/config/title_screens/README.txt index 6e7bf166f8f..9a739b125ed 100644 --- a/config/title_screens/README.txt +++ b/config/title_screens/README.txt @@ -1,50 +1,47 @@ -The enclosed images folder holds the image files used as the title screen for the game. All common formats such as PNG, JPG, and GIF are supported. -Byond's DMI format is also supported, but if you use a DMI only include one image per file and do not give it an icon_state (the text label below the image). - -Keep in mind that the area a title screen fills is a 480px square so you should scale/crop source images to these dimensions first. -The game won't scale these images for you, so smaller images will not fill the screen and larger ones will be cut off. - -Using unnecessarily huge images can cause client side lag and should be avoided. Extremely large GIFs should preferentially be converted to DMIs. -Placing non-image files in the images folder can cause errors. - -You may add as many title screens as you like, if there is more than one a random screen is chosen (see name conventions for specifics). - ---- - -Naming Conventions: - -Every title screen you add must have a unique name. It is allowed to name two things the same if they have different file types, but this should be discouraged. -Avoid using the plus sign "+" and the period "." in names, as these are used internally to classify images. - - -Common Titles: - -Common titles are in the rotation to be displayed all the time. Any name that does not include the character "+" is considered a common title. - -An example of a common title name is "clown". - -The common title screen named "default" is special. It is only used if no other titles are available. You can overwrite "default" safely, but you -should have a title named "default" somewhere in your DMI file if you don't have any other common titles. Because default only runs in the -absence of other titles, if you want it to also appear in the general rotation you must rename it. - -The common title screen named "blank.png" is also special. It is only used to fill space while the real title screen loads. You should leave this file alone. - - -Map Titles: - -Map titles are tied to a specific in game map. To make a map title you format the name like this "(name of a map)+(name of your title)" - -The spelling of the map name is important. It must match exactly the define MAP_NAME found in the relevant .DM file in the /_maps folder in -the root directory. It can also be seen in game in the status menu. Note that there are no spaces between the two names. - -It is absolutely fine to have more than one title tied to the same map. - -An example of a map title name is "Omegastation+splash". - - -Rare Titles: - -Rare titles are a just for fun feature where they will only have a 1% chance of appear in in the title screen pool of a given round. -Add the phrase "rare+" to the beginning of the name. Again note there are no spaces. A title cannot be rare title and a map title at the same time. - +The enclosed /images folder holds the image files used as the title screen for the game. All common formats such as PNG, JPG, and GIF are supported. +Byond's DMI format is also supported, but if you use a DMI only include one image per file and do not give it an icon_state (the text label below the image). + +Keep in mind that the area a title screen fills is a 480px square so you should scale/crop source images to these dimensions first. +The game won't scale these images for you, so smaller images will not fill the screen and larger ones will be cut off. + +Using unnecessarily huge images can cause client side lag and should be avoided. Extremely large GIFs should preferentially be converted to DMIs. +Placing non-image files in the images folder can cause errors. + +You may add as many title screens as you like, if there is more than one a random screen is chosen (see name conventions for specifics). + +--- + +Naming Conventions: + +Every title screen you add must have a unique name. It is allowed to name two things the same if they have different file types, but this should be discouraged. +Avoid using the plus sign "+" and the period "." in names, as these are used internally to classify images. + + +Common Titles: + +Common titles are in the rotation to be displayed all the time. Any name that does not include the character "+" is considered a common title. + +An example of a common title name is "clown". + +The common title screen named "default" is special. It is only used if no other titles are available. Because default only runs in the +absence of other titles, if you want it to also appear in the general rotation you must name it something else. + + +Map Titles: + +Map titles are tied to a specific in game map. To make a map title you format the name like this "(name of a map)+(name of your title)" + +The spelling of the map name is important. It must match exactly the define MAP_NAME found in the relevant .DM file in the /_maps folder in +the root directory. It can also be seen in game in the status menu. Note that there are no spaces between the two names. + +It is absolutely fine to have more than one title tied to the same map. + +An example of a map title name is "Omegastation+splash". + + +Rare Titles: + +Rare titles are a just for fun feature where they will only have a 1% chance of appear in in the title screen pool of a given round. +Add the phrase "rare+" to the beginning of the name. Again note there are no spaces. A title cannot be rare title and a map title at the same time. + An example of a rare title name is "rare+explosion" \ No newline at end of file diff --git a/config/title_screens/images/exclude b/config/title_screens/images/exclude new file mode 100644 index 00000000000..e69de29bb2d diff --git a/html/changelog.html b/html/changelog.html index d691bf408a9..37c5aaaf480 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -55,1222 +55,987 @@ -->
-

10 February 2019

-

Ghommie updated:

-
    -
  • Fixes ISINRANGE_EX using the wrong relational operator.
  • -
-

Nero1024 updated:

-
    -
  • lying or otherwise incapacitated mobs shouldn't play footstep sounds anymore while moving or being moved
  • -
  • instead they'll play a crawling/dragging sound
  • -
-

PKPenguin321 updated:

-
    -
  • New system in genetics: Conflicting mutations. Some mutations will not allow others to activate. Example - If you have mutation A, and it conflicts with B, then B will never activate until you get rid of mutation A (and visa versa). The only mutations to currently use this are Dwarfism and Gigantism. Speaking of which...
  • -
  • New minor negative mutation: Gigantism. Opposite of dwarfism, makes you larger.
  • -
  • New disability: Spastic. You will randomly take a step in a random direction, will randomly change intent, and will randomly try to click on somebody near you (which can hug them, punch them, use whatever is in your hand on them, etc).
  • -
  • New disability: Acid flesh. Pockets of acid bubble beneath your skin. They will occasionally pop, coating you with acid. This will melt clothes and deal damage to you.
  • -
  • New disability: Spatial Instability. You will randomly teleport, similar to a wizard's blink teleport. This is a very nauseating process, and will inevitably make you very sick if you don't rid yourself of it.
  • -
  • New disability: Two Left Feet. Your right foot becomes a second left foot. You take longer to get up from stuns.
  • -
-

ShizCalev updated:

-
    -
  • Fixed a bug that allowed you to teleport an ID in your possession to a PDA anywhere ingame.
  • -
  • Fixed an exploit allowing you to steal ID's/pens from PDA's not in your possession.
  • -
  • Fixed an exploit allowing you unlimited control of a PDA's interface even if it wasn't near you/in your possession.
  • -
  • Honk Blaster 5000 will no longer knock you down in space if you aren't adjacent to it.
  • -
  • Fixed a runtime which caused microwaves/showers/ect to not play sounds.
  • -
  • Internal beakers for medbots now work.
  • -
-

TerraGS updated:

-
    -
  • Adds toggleable light and blinking charge indicator to kinetic crusher
  • -
-

Vile Beggar updated:

-
    -
  • The drill hat is less annoying now. You can change the loudness setting of it by using a screwdriver on it. Use wirecutters on it for a surprise.
  • -
  • Lights now spark less.
  • -
-

YoYoBatty updated:

-
    -
  • Fixed an undeleted sql query.
  • -
-

actioninja updated:

-
    -
  • fixed a bunch of missing sprites for various guns including the RPG, grenade launcher, and toy weapons
  • -
  • fixed sprite issues with no mag spawn weapons such as the 1911.
  • -
  • fixed ammo counts on weapons such as the double barrel shotgun being incorrect
  • -
  • fixed issue with double barrel and revolver "tac loading" that prevented them from firing until it was properly reloaded
  • -
  • more gun fixes
  • -
-

gy1ta23 updated:

-
    -
  • updates clothesmate line
  • -
-

the big gay updated:

-
    -
  • The old stamina damage dealing .45 ammo has been removed. This only affects the 1911 handgun.
  • -
-

tralezab updated:

-
    -
  • sleeping carp now deflects projectiles
  • -
- -

07 February 2019

-

AndrewMontague, FlattestGuitar, nichlas0010, TheMythicGhost updated:

-
    -
  • Changes vending machine selections to now display their contents icon instead of just their name and a random color.
  • -
-

Vile Beggar updated:

-
    -
  • Central Command now has access to a janitorial ERT. Be wary of the heavy-duty ones!
  • -
- -

06 February 2019

+

27 May 2019

4dplanner updated:

    -
  • fireproofing works properly
  • +
  • The deja vu effect (previously only used by rewind camera) now resets all your limbs and damage to the point it was added after 10 seconds (as well as the original position reset)
  • +
  • The deja vu effect cannot resurrect the dead, but will heal their corpse
  • +
  • New limbs fall off, old ones re-attach
  • +
  • Regenerative sepia cores add a deja vu effect before healing instead of a timestop
  • +
  • The rewind camera rewinds 2 times to distinguish it from the regenerative core
  • +
  • colossus and drake can no longer attack from the afterlife
  • +
  • timestop is properly defeated by antimagic.
  • +
  • timestop only checks antimagic once
-

Floyd / Qustinnus updated:

+

Akrilla updated:

    -
  • you can no longer spam bone rattling
  • +
  • Traitors now recognize codewords automatically in spoken conversation. Phrases in blue, responses in red.
  • +
  • Changed traitor greet text slightly.
-

Joe Berry updated:

+

ExcessiveUseOfVending updated:

    -
  • Fixes various mobs death sounds and messages not functioning
  • -
  • Fixes hierophants death animation not working properly
  • +
  • Wardrobe Vendors will now accept clothing types they sell. Now you can clean up after getting that cool alternate uniform!
  • +
  • see PR #43964 on how to easily setup a vending machine to accept items!
-

Kierany9 updated:

+

Farquaar updated:

    -
  • Fixed some bad math in the chance to get a brain trauma, traumas should now be a little less common.
  • +
  • The monk's frock has been sanctified and will no longer reveal your naked body when the hood is pulled up.
-

MMMiracles updated:

+

Fire Chance updated:

    -
  • Several small tweaks have been done on Donutstation based on feedback.
  • +
  • Fixed the drink sprites overlapping when you are mixing beer with other drinks.
-

ShizCalev updated:

+

Garen7 updated:

    -
  • PDA messages through the messaging server monitor will now correctly log the sender.
  • +
  • Lesser form lings can now toggle augmented vision
  • +
  • You can no longer turn back into human form as a lesser form ling while ventcrawling
  • +
  • Stuns and Reagents are now passed when transforming into a monkey or human
  • +
+

Irafas updated:

+
    +
  • Connected the incinerator/janitor's/botany backroom/service rooms to the scrubber network
  • +
+

JJRcop updated:

+
    +
  • You can now build a new PDA messaging server if you lose it.
  • +
  • Requests console messages no longer work if the messaging server is offline. Emergency alerts will still function in that case as long as the rest of telecomms is online.
  • +
+

Naksu updated:

+
    +
  • pipeline gas reconciliation is now faster
  • +
+

OnlineGirlfriend updated:

+
    +
  • Lemonade
  • +
  • Arnold Palmer recipe
  • +
  • lemonade sprite
  • +
+

Putnam3145 updated:

+
    +
  • All departments can now print basic power cells from their respective techfab.
  • +
+

RaveRadbury updated:

+
    +
  • Quirks have flavor text in medical records
  • +
  • All quirks have medical record entries
  • +
  • All quirk medical records refer to "Patient", removing a few instances of "Subject"

Tlaltecuhtli updated:

    -
  • some syndicate operatives simple mobs no longer have an invisible shield
  • -
-

granpawalton updated:

-
    -
  • Screwing a disk compartmentalizer no longer makes it look like a smartfridge
  • -
-

oranges updated:

-
    -
  • Mecha capacitor stock part now only does half as much damage resist for emps
  • -
- -

04 February 2019

-

4dplanner updated:

-
    -
  • perfluorodecalin's side effects have been significantly reduced to 0.3 toxloss per tick
  • -
  • perfluorodecalin no longer heals brute/burn damage
  • -
  • the pirate shuttle APC cannot be remotely controlled
  • -
-

81Denton updated:

-
    -
  • Added a bigger selection of sounds to the H.O.N.K. mech's "Sounds of HONK" panel.
  • -
-

Anonmare updated:

-
    -
  • Updates the malf fire alarm hack to be more up to date
  • -
-

As334 and Unit2E updated:

-
    -
  • Miasma and BZ no longer affect the energy level of the BZ generation reaction.
  • -
  • Tweaked how BZ generation's research points work to reward higher efficiency setups.
  • -
-

Basilman updated:

-
    -
  • refactored how sounds are stored and played
  • -
  • Added sound rings and supporting text
  • -
-

BuffEngineering updated:

-
    -
  • Addicts can now feel like they're getting their fix or kicking it
  • -
-

Floyd / Qustinnus updated:

-
    -
  • Bonechill now actually chills you
  • -
  • Bonechill lasts 2 seconds longer
  • -
  • RESIST_COLD is checked before bonechill is applied
  • -
  • Changes makeshift vests' name to durathread vest
  • -
  • Cardboard golem can now reproduce himself.
  • -
  • The durathread golem now needs cloth instead of strands
  • -
-

Hathkar updated:

-
    -
  • Red slime speed potions applied to vehicles will now make the vehicle as fast as a normal running person.
  • -
-

Menshin updated:

-
    -
  • syringes launched from the mecha syringe gun will now properly transfer reagents
  • -
  • Plastic flaps won't become invisible on unscrew anymore
  • -
-

Michael-Ashfield updated:

-
    -
  • Beekeepers can finally store their flyswatters in their suit storage
  • -
-

ShizCalev updated:

-
    -
  • Fixed turrets targeting pAI devices.
  • -
  • Fixed fire alarms not updating icons properly after being emagged and hacked by Malf AI's.
  • -
  • Fixed an exploit which allowed you to stack petting related mood buffs.
  • -
  • Fixed petting moodlets showing an animal's pronouns as simply "it", instead of their actual pronoun.
  • -
-

SuicidalPickles updated:

-
    -
  • Flagellant Robes have had their speed reduced from -1 to -0.6, in return for tuning the extra received damage down by 5.
  • -
-

TheMythicGhost updated:

-
    -
  • Adds an in-hand sprite for package wrapped parcels.
  • -
-

Tlaltecuhtli updated:

-
    -
  • Ripley, Firefighter, Odysseus and H.O.N.K. mechs now also use scanning modules and capacitors on construction. This means that they also gain reduced power consumption and EMP protection from higher-tier stock parts.
  • -
  • neurotoxin doesnt insta stun but gives you limb paralysis overtime and heart attacks if it stays in for too long and it is also alcholic
  • -
-

actioninja updated:

-
    -
  • Bone Hurting Juice now metabolizes at a standard rate for toxins.
  • -
-

actioninja\memager updated:

-
    -
  • Ballistic guns have been almost entirely reworked from a backend side. This primarily focused on moving as much as possible into the base ballistic gun and turning as many other guns into essentially varedits as possible.
  • -
  • Guns can now be racked. This is the default action unless the magazine is empty.
  • -
  • Guns now can have the magazine removed by clicking on them with an open hand while they are in hand.
  • -
  • Suppressors are now removed by alt clicking instead of clicking with an open hand
  • -
  • Guns now have various bolt types that all function a bit differently. Open bolts cannot have a bullet chambered with no mag, locking bolts lock back after running out of ammo, etc.
  • -
  • All ballistic gun sounds are controlled by variables instead of hardcoded usages.
  • -
  • The l6 LMG has a reworked control scheme. alt + click to open and close the cover, open hand to remove mag, place mag in by slapping them together, default action is rack.
  • -
  • Functionality that used to be snowflake code such as tactical reloads has been moved to the base gun, and can be toggled by variables.
  • -
  • All shotguns are now properly subpaths of the shotgun type. They still work the same.
  • -
  • Gun sprites have been almost entirely overhauled to use overlays instead of states. This collapsed the L6 sprite from 20 sprites to 9 sprites to give an example.
  • -
  • Remixed versions of the shotgun and base gun firesound
  • -
  • New rifle firesound for l6 and moist nugget, new SMG fire sound, new sniper fire sound.
  • -
  • Lots of new weapon operation sounds such as racking and bolts and the like.
  • -
  • New sprites for the Riot Shotgun, Combat Shotgun, c20r, Deagle, m90, double barrel shotgun and 1911 by Memager.
  • -
  • All gun sprites that were pointing to the left have been flipped to point to the right.
  • -
  • Shotguns now can be pumped faster.
  • -
  • Bulldog can now be tac reloaded
  • -
  • Sawn off shotguns now have an accuracy penalty and recoil
  • -
-

coiax updated:

-
    -
  • Job code has been moved into separate files. There should be no change in behavior.
  • -
-

fizzle7 updated:

-
    -
  • Tourettes bug fix. You can now swear and get stunned yet again.
  • -
-

loserXD updated:

-
    -
  • fixes typo in DNA defines
  • -
-

oranges updated:

-
    -
  • soviet and capitalistic golems no longer available from pride mirror
  • -
  • changed how species manage their source behaviours
  • -
-

the epic purple skeleton in the sky updated:

-
    -
  • Plasmamen now take 1.5x brute damage.
  • -
- -

31 January 2019

-

4dplanner updated:

-
    -
  • antimagic works again
  • -
  • fixes cloning
  • -
-

BuffEngineering updated:

-
    -
  • Pneumatic cannons will now have a tank visible all of the time
  • -
-

BuffEngineering/MrDoomBringer updated:

-
    -
  • Engineers may now weld with engineering pride using the new welding hardhats!
  • -
-

Gousaid67 updated:

-
    -
  • Alt-Clicking open the Escape Pods safes will no longer ignore the alert level.
  • -
-

Hathkar updated:

-
    -
  • Nicotine gives a small bonus to stun resistance instead of being equal to adrenals or ephedrine.
  • -
-

Nervere & kevinz000 updated:

-
    -
  • You can now hold hands with another player by targeting their left or right arm and pulling them.
  • -
-

Nichlas0010 updated:

-
    -
  • the Middle Mouse Button aimbot exploit should no longer be usable
  • -
-

Pubby updated:

-
    -
  • Drop "universal" from suppressors name
  • -
-

ShizCalev updated:

-
    -
  • Fixed suit storage units not correctly clearing out the radiation of built-in hardsuit helmets and jetpacks.
  • -
-

coiax updated:

-
    -
  • When a person is cloned, any mental traumas are cloned as well.
  • -
  • Adds the Paraplegic quirk for -3 points. You start with unhealable leg paralysis (persists through cloning), and have a wheelchair to move around the station.
  • -
-

py01 updated:

-
    -
  • Twisted Construction no longer damages the caster if canceled or failed to cast
  • -
  • Twisted Construction's tool-tip now correctly specifies the amount of metal needed for a construct shell
  • -
  • Blood rite and Twisted Construction code now uses defines instead of magic numbers
  • -
- -

30 January 2019

-

4dplanner updated:

-
    -
  • adamantine armour no longer screws up clothing protection
  • -
-

Kierany9 updated:

-
    -
  • The Psychic Link pinpointer now works. Oops!
  • -
-

ShizCalev updated:

-
    -
  • Cleanbots now clean up spilled table-salt and plant smudges.
  • -
-

Time-Green updated:

-
    -
  • geladkinesis snow tiles no longer freeze the station
  • -
-

Zxaber updated:

-
    -
  • Mechas now ignore strafe mode and turn if the user is holding Alt.
  • -
-

actioninja updated:

-
    -
  • Added Smoker and Junkie quirks.
  • -
- -

28 January 2019

-

Gousaid67 updated:

-
    -
  • Spraycans are now able to spray walls again!
  • -
- -

26 January 2019

-

4dplanner updated:

-
    -
  • Megafauna cannot teleport
  • -
  • perfluorodecalin no longer mutes
  • -
  • it also heals brute and burn 3x faster (a new rate of 0.25 of each a second)
  • -
  • it also causes toxin buildup over time
  • -
-

Razharas updated:

-
    -
  • Animation to cryo and sleepers opening/closing
  • -
  • Changed a bit of internal handling of visuals of cryo, no more updating icon each time anything is clicked in the ui
  • -
  • Sprite for the cryo and sleeper animations
  • -
-

YoYoBatty updated:

-
    -
  • Body part damage is now run through armor check in certain situations.
  • -
-

as334 updated:

-
    -
  • Tritium now needs to be an environment with a sizable thermal mass for full efficiency combustion.
  • -
  • Advanced Gas reactions now produce research points.
  • -
  • A gas canister with Pluoxium, Noblium, Stimulum, Miasma or BZ inside now produces points when sold via cargo.
  • -
- -

24 January 2019

-

4dplanner updated:

-
    -
  • legion cores no longer adminheal
  • -
  • legion cores now heal 25 brute, 25 burn
  • -
  • legion cores remove CC like stuns and body temperature changes on application
  • -
  • legion cores make you immune to damage slowdown for one minute
  • -
  • implanted legion cores are unaffected.
  • -
-

Dax Dupont updated:

-
    -
  • Vent clog events are more likely to happen.
  • -
-

Denton updated:

-
    -
  • The Syndicate Bundle uplink item is now purchasable again.
  • -
-

Gousaid67 updated:

-
    -
  • The genetic sequence analyzer now will no longer be able to scan husked corpses or species with TRAIT_RADIMMUNE, similar to its bigger brother the DNA scanner.
  • -
  • Cloning will no longer apply mutations to species with TRAIT_RADIMMUNE like golems and plasmamens, positive or negative.
  • -
-

GranpaWalton updated:

-
    -
  • Oxyloss icon no-longer shows up when someone has the self respiration symptom
  • -
  • The self respiration now makes you not contract diseases through the air and not breathe in smoke
  • -
-

Jujumatic, port by Denton updated:

-
    -
  • Ported wheelchairs from Hippiestation. They're craftable with 4 sheets of metal and 6 rods. The less arms you have, the slower you move!
  • -
-

Kierany9 updated:

-
    -
  • Assimilation has received an update!
  • -
  • Mindshield Implants and other hivemind host identifying methods no longer reveal their name.
  • -
  • Now, both parties will be able to sense the other's location for a short period of time, similar to a pinpointer.
  • -
  • In the case of Network Invasion, the probing host still only gets information on the vessel they just lost and not the opposing host.
  • -
  • As a hivemind host becomes stronger and starts going on the offensive, they become easier to sense, and their own sensing ability is diminished.
  • -
  • In addition, using Mind Control renders you unable to sense others at all.
  • -
-

Menshin updated:

-
    -
  • Xeno queens now transfer overlays on size change (meaning it will now display on fire, etc)
  • -
  • restored a missing Xeno queen icon
  • -
-

Nervere updated:

-
    -
  • Added the scrungulartiy brain damage line.
  • -
-

PKPenguin321 updated:

-
    -
  • New genetics power: Insulated - You become shock immune, basically having innate insulated gloves.
  • -
  • New genetics power: Shock Touch - Electric punch! You get a wizard-like touch spell that does burn damage, confuses, disarms, and jitters. Has a 10 second cooldown and can only be created by combining Insulated with Radioactive.
  • -
  • Lings should be able to see some of their victim's last words when they absorb them.
  • -
  • Hunt down your enemies by scent with a new power that has been added to genetics: Transcendent Olfaction.
  • -
  • Lings will copy the notes of people they absorb (including PDA codes, antag objectives, and objective conspirators) properly.
  • -
-

SpaceManiac updated:

-
    -
  • Mousetrap boxes now have their illustration again.
  • -
  • It is no longer possible for folding paper into an airplane to appear to duplicate it.
  • -
-

Time-Green updated:

-
    -
  • Adds glorious soviet Russia golem
  • -
  • Adds the cryokinesis and geladikinesis mutations
  • -
  • Snow walls no longer runtime everything
  • -
  • Nanotrassen has removed the reagent filter from gibbers due to budget cuts. Make sure you are serving healthy human flesh
  • -
-

Tlaltecuhtli updated:

-
    -
  • rcd disk that gives rcd computer frame and machine frame designs
  • -
-

Trilbyspaceclone updated:

-
    -
  • Fixed power tool drill fitting in boots and wallets
  • -
-

Vile Beggar updated:

-
    -
  • Plasmamen have no need for regular showering anymore.
  • -
-

anconfuzedrock updated:

-
    -
  • compressed matter cartridges are now tiny.
  • -
  • Aurora Caelus is 4x rarer
  • -
-

mrhugo13 updated:

-
    -
  • Skeleton golems now rattles and speaks in the same way that normal skeletons do.
  • -
  • Adds a new bounty that has to do with trash.
  • -
-

no updated:

-
    -
  • Chilling Sepia extracts cannot be used infinitely and will be consumed upon use.
  • -
- -

18 January 2019

-

4dplanner updated:

-
    -
  • hierophant gives its medal before exploding
  • -
  • removed the separated chemicals trait
  • -
-

Denton updated:

-
    -
  • Thrown supermatter tongs now properly show a message.
  • -
  • Improved various messages related to supermatter dusting.
  • -
-

coiax updated:

-
    -
  • Observers are able to see family heirloom messages when examining objects.
  • -
  • Objects and items can now be inserted into closets, like before.
  • -
  • Fixes a bug which prevented carbons from throwing items.
  • -
-

floyd / qustinnus updated:

-
    -
  • fixes some hygiene runtimes
  • -
  • hygiene sprite is a bit more transparent
  • -
- -

17 January 2019

-

BebeYoshi & Hexmaniacosanna updated:

-
    -
  • A new drink called Blank Paper was added to the bar menu, it was made by a mime and it represents a new start.
  • -
-

Dax Dupont updated:

-
    -
  • The supermatter scalpel now isn't infinite usage.
  • -
  • Chaplains can now purify other bibles and turn them to their religion. There's no place for other people's religion on this station.
  • -
-

Denton updated:

-
    -
  • Rearranged Uplink items: Bundles, random item and TC have been moved into a new category called "Bundles and Telecrystals". Gloves of the North Star and Box of Throwing Weapons have been moved to Conspicuous and Dangerous Weapons. Combat Gloves Plus have been moved to Stealthy and Inconspicuous Weapons. Moved all implants into the Implants category.
  • -
  • Scanner gates can now check for hygiene levels (dirty or clean) and nutrition levels (starving or obese).
  • -
  • Pubbystation: Fixed various minor map bugs (two unconnected Medbay disposals bins, engineering cameras without EMP protection, unpowered air injector outside the tcommsat, unconnected AI sat vent).
  • -
  • The cameras right outside of Donutstation's singularity containment have been EMP-proofed and will no longer alert silicons 24/7.
  • -
-

Floyd / Qustinnus updated:

-
    -
  • Bronze Golem echos his enemies away.
  • -
  • Bone golem has a bone to pick
  • -
  • Cardboard golem storms into the fray
  • -
  • Leather Golem gets a grip
  • -
  • Durathread golem weaves his magic
  • -
  • buffs calcium healing for bone creatures a bit
  • -
  • Removes dupe component
  • -
-

GranpaWalton updated:

-
    -
  • CO2 fusion power has been lowered from 3 to 1.25
  • -
  • nitryl fusion power has been raised from 15 to 16
  • -
  • department belts can now hold their department holosigns, utility and jani belts no longer hold every holosign
  • -
-

Menshin updated:

-
    -
  • tgui'ed P.A.C.M.A.N generators interface
  • -
  • fixed some bugs related to these generators
  • -
-

Mickyan updated:

-
    -
  • Most objects can now be colored using a spray can
  • -
  • Added visible message to spraying objects and windows
  • -
-

PKPenguin321 updated:

-
    -
  • Made some grammar better with genetics consoles when they import and export disks.
  • -
-

Tortellini Tony updated:

-
    -
  • Cigarettes and lighters can now be extinguished.
  • -
  • E-cigs will continue to display their setting after being emagged.
  • -
-

Vile Beggar updated:

-
    -
  • You can now create circuit floor tiles with the autolathe.
  • -
-

Zxaber updated:

-
    -
  • Malfunctioning AIs can no longer abuse the confirmation popup to create extra (unstoppable) doomsdays.
  • -
  • Fixed vent placement in Delta's Robo
  • -
  • Added a second welding helmet in Robo of Meta and the Mech Bay of Delta, to match the two that Robotics gets on Box, Pubby, and Donut.
  • -
-

bandit updated:

-
    -
  • Clicking the health doll lets you examine yourself for injuries.
  • -
-

bgobandit updated:

-
    -
  • Resisting out of bucklecuffs takes more/less time depending on the handcuffs you used, i.e., fake handcuffs will not bucklecuff someone for ages.
  • -
  • Some holidays have received new drone hats and station name prefixes.
  • -
-

carshalash updated:

-
    -
  • Reduced booze power of Mead, Red Mead, and Irish Cream.
  • -
  • Increased booze power of Grappa.
  • -
-

coiax updated:

-
    -
  • Anti-drop implants can no longer be used to drop objects that they were not responsible for sticking to a person's hand.
  • -
  • Backfiring with a Barnyard spellbook will now play a spooky horse sound.
  • -
  • Refactors the way that "NODROP" items work to a new system, there should be no change in functionality.
  • -
  • Applying an item fortification scroll to a non-enchanted item no longer has a chance of immediately deleting that item.
  • -
  • Also, item fortification scrolls have more colourful messages.
  • -
  • Contraband pills have been given a unified pill icon as well as new names and descriptions. An admin spawn only bottle of floorpills has been added.
  • -
  • Smuggler's satchels can now be found with t-ray scanners, as intended.
  • -
  • Smuggler's satchels now cost 1 TC, down from 2 TC.
  • -
  • Admins have a button to remove the runed metal and cult dagger from cultists.
  • -
-

coiax, loser updated:

-
    -
  • Taking mutadone while having the communication disorder brain trauma will no longer spam your chat with messages.
  • -
- -

13 January 2019

-

SuicidalPickles updated:

-
    -
  • A few vehicles; secway, scooters/skateboards, and ATVs have been changed to the new movement delay speed.
  • -
-

Time-Green updated:

-
    -
  • lizards will no longer always have firebreath
  • -
-

coiax updated:

-
    -
  • Randomly coloured gloves and randomly coloured glowsticks now have slightly different typepaths, but otherwise function the same.
  • -
  • Bartenders now gain their ability to "booze slide" from their beer googles, rather than from a granter book in their backpacks.
  • -
  • Players with the Spiritual quirk now spawn with a pack of candles and a box of matches, for better communion with their chosen power, and get a mood boost while near a holy person (generally the chaplain).
  • -
-

floyd / qustinnus updated:

-
    -
  • Hygiene now lowers slower when you are clean, and dirtiness rates for some clothing items have been nerfed.
  • -
  • some more clothes are okay to shower with now.
  • -
  • only 20% as much miasma is produced by low hygiene
  • -
-

nicbn updated:

-
    -
  • Vacant comissary disposals in BoxStation are no longer directly linked to the recycler room outlet.
  • -
- -

11 January 2019

-

Denton updated:

-
    -
  • Restricted the throw range of magspears to 0 tiles.
  • -
-

Floyd / Qustinnus updated:

-
    -
  • involuntary screaming for when you get hurt.
  • -
  • reworks emote sound handling to not use fucking s u b t y p i n g
  • -
-

GranpaWalton updated:

-
    -
  • The cargo techfab has been moved to the cargo office on box station so miners can access it
  • -
-

Joe Berry updated:

-
    -
  • Mass fire attack, sends fire out from the ash drake in all directions
  • -
  • Adds an enraged attack for ash drake, heals him as well as making him glow and go faster, spawning massive amounts of fire in all directions
  • -
  • Removes the old triple swoop with lava pools attack
  • -
  • Lava pools can now spawn with the normal fire breath attack sometimes
  • -
  • Lava pools now have changed delays for lesser amounts so they don't all just place around one area
  • -
  • Increases default swoop delay for #41178
  • -
  • Teleporting out of the lava arena now has some actual consequences by enraging the ash drake
  • -
  • Makes lava arena a bit less laggy by not recalculating range_turfs every time
  • -
  • Fixes #41887 though this will not change the turfs to basalt temporarily to prevent moving through indestructible walls
  • -
  • Fire lines would not spawn if their range would place their final turf location outside of the map
  • -
  • The arena attack will no longer destroy indestructible open turfs
  • -
-

Kierany9 updated:

-
    -
  • Added a new sprite for Telekinetic Field
  • -
-

MMMiracles updated:

-
    -
  • Donutstation's dorm showers has received an upgrade to be more in line with updated hygiene standards.
  • -
  • The experimentor room has been slightly compressed to deal with this upgrade.
  • -
-

MrDoomBringer updated:

-
    -
  • People in supplypods in closets/mechs/etc will no longer get yeeted into nullspace
  • -
-

WJohnston updated:

-
    -
  • Fixes warning line corners being all wonky when shuttles rotate.
  • -
-

coiax updated:

-
    -
  • Wearing a jumpsuit that's been washed in a washing machine will give you a positive moodlet.
  • -
  • Robust Gold cigarettes now taste faintly of expensive metal.
  • -
  • Uplift Smooth's menthol effect now actually prevents you from coughing. Uplift Smooth now taste of "smoke and mint", rather than "mint and a hint of smoke".
  • -
  • Fixed slaughter demons not getting a speed boost when exiting a pool of blood. Fixed slaughter demon giblets not being visible.
  • -
  • Dead bodies do not slowly have their hygiene decrease, as dead bodies just smell generally because of the decomposition.
  • -
  • Ghosts and camera mobs no longer feel if the shower is cold or too hot.
  • -
  • The creep trauma/antagonist is no longer gained via brain damage.
  • -
- -

09 January 2019

-

Arachnidnexus/actioninja updated:

-
    -
  • New shoe object sprites
  • -
-

Denton updated:

-
    -
  • Donutstation: Fixed emergency maintenance access not applying to some airlocks. Fixed broken access requirements in the outer medical/science maintenance airlock.
  • -
  • Donutstation: The kitchen coldroom is now actually cold. Or a big walk-in oven, if you mess with the freezer settings.
  • -
  • Donutstation: Added more department and escape pod signs.
  • -
  • Donutstation: Added a departmental exofab to Atmospherics.
  • -
  • Deltastation: Engineers can now open and close the supermatter engine radiation shutters.
  • -
-

Frosty Fridge updated:

-
    -
  • Augmented employees are now licensed to perform advanced maintenance on their own augmented body parts.
  • -
  • Added a flag to Surgery subclasses to allow or disallow self surgery
  • -
  • Made the lying_required var of surgeries apply to all surgery steps, not just initiation
  • -
-

Ghom updated:

-
    -
  • minor clean up on hydroponics reagent containers.
  • -
-

Recurracy updated:

-
    -
  • Hypodermic prickles is triggered when someone slips over a plant with the Slippery Skin trait
  • -
  • Liquid contents is triggered when someone slips over a plant with the Slippery Skin trait
  • -
-

coiax updated:

-
    -
  • Podpeople have the species trait of always being clean, so do not need to worry about regular showering. Because they're plants.
  • -
-

hazamaitsuru updated:

-
    -
  • Light fixture power cells can now be removed instead of swapped
  • -
- -

07 January 2019

-

4dplanner updated:

-
    -
  • experimental cloner is compatible with ordinary cloning computer, but deletes records after cloning.
  • -
-

Basilman updated:

-
    -
  • corrected Hippocrates bust description
  • -
-

Cyberboss updated:

-
    -
  • Added a new sound for curse of madness
  • -
-

Denton updated:

-
    -
  • Wearing a carp costume or hardsuit with its hood equipped now prevents users from being attacked by wild space carp.
  • -
  • Reworked the kinetic speargun: Its projectiles now embed and cause more damage.
  • -
  • Added a Syndicate bundle that contains a speargun, a quiver with magspears, a carp hardsuit as well as other carp accessories.
  • -
  • Increased air alarm miasma thresholds to prevent warning spam.
  • -
  • Air scrubbers do not filter miasma by default anymore ("Filtering" and "Refill" modes).
  • -
  • The Hyperfractal Gigashuttle's reflectors can no longer be deconstructed or adjusted.
  • -
-

GranpaWalton updated:

-
    -
  • Xenos now have a liver that processes toxins really well but will reject a human host when it takes too much damage
  • -
  • Xenos will now process regents because of their new liver, they will still not take toxin damage, stamina damage, or have liver failure
  • -
-

Tlaltecuhtli updated:

-
    -
  • alt click to eject beakers from chem masters + chem dispensers + grinders + chem heaters
  • -
  • hit chem master + chem dispenser + chem heaters with a beaker and if its loaded with another it swaps em
  • -
-

YoYoBatty updated:

-
    -
  • Added a ghost verb that lets you t-ray view underfloor objects
  • -
  • Checking plumbing verb checks every atmospheric component instead of just pipes
  • -
  • Check plumbing verb is less snowflakey
  • -
-

coiax updated:

-
    -
  • Monkey cubes now expand in a running shower!
  • -
  • Slimes now die in running showers.
  • -
  • Rolling a 6 with a die of fate now reduces your speed as intended.
  • -
  • Rolling an 8 with a die of fate will cause the explosion to be around the roller, not the die.
  • -
  • Die of fate effects now make loud visible messages so it's obvious what has happened.
  • -
  • Dice can now be "totally rigged" with admin edits to unconditionally always roll a certain value, rather than just some of the time. A new "cursed die of fate" has been added to demonstrate this effect.
  • -
  • Added the "stealth" die of fate, both one use and unlimited. You know, for badminry.
  • -
  • Curse of Madness can now be triggered by a wizard's Summon Events, at the same chance as Summon Guns or Summon Magic.
  • -
  • When an admin triggers Curse of Madness manually, they can specify their own dark truth to horrify the station with.
  • -
  • Smuggler's satchels have been re-added to the game. They no longer keep their contents and transport it into future rounds, but instead contain some random contraband when purchased. Observers will be able to see where smuggler's satchels have been hidden. A handful of satchels will spawn on the station (under the floor, of course) in random locations each round.
  • -
  • Science areas now have small patches of glowing green goo occasionally, as intended.
  • -
  • Glowing goo now glows a lot more noticeably in the dark, will always contain either radium or uranium.
  • -
  • Improved the code for ensuring that security members enjoy donuts and security-themed alcoholic drinks.
  • -
  • Metastation Robotics now has a cautery.
  • -
-

kevinz000 updated:

-
    -
  • A new SDQL2 panel has been added to admin tabs, for tracking, VVing, and halting SDQL2 queries.
  • -
  • SDQL2 documentation is now available in SDQL_2.dm
  • -
  • SDQL2 now has MAP added. MAP will cause the query to execute on whatever is specified in MAP, whether it's a variable or a procedure call (which will grab the return results), etc etc.
  • -
  • SDQL2 now has a superuser mode, for uses outside of admin button pressing. This causes it to operate without admin protection wrapping.
  • -
  • SDQL2 now supports options, including ignoring nulls in select or forcing it to operate in high priority mode, which lets it use 95% of the tick instead of obeying the Master Controller's tick limit. USE WITH CAUTION. Also includes a mode for blocking proccalls
  • -
  • SDQL2 now supports TRUE/FALSE.
  • -
  • To use options, append OPTIONS to the query. Available are "PRIORITY" = HIGH/NORMAL, "SELECT" = FORCE_NULLS/DISABLE or 0/FALSE, "PROCCALL" = ASYNC/BLOCKING.
  • -
-

mrhugo13 updated:

-
    -
  • The Syndicate has decided to equip their Syndicate leaders operative (Aswell as their clown counterparts) with the new Combat Glove Plus! The new Combat Glove Plus does everything the old boring Combat Gloves does but with the added extra of learning Krav Maga upon wearing them, any other Syndicate operative who wants to get in on the action will have to pay 5tc.
  • -
-

subject217 updated:

-
    -
  • Plastitanium walls are no longer evil.
  • -
  • Plasmamen now run at the same speed as normal humans.
  • -
-

tralezab updated:

-
    -
  • Added a new antagonist, the Creep!
  • -
  • Chosen from a random event, the Creep will become obsessed with one person, feeling amazing around them and terrible when they aren't. They will have objectives to steal heirlooms, take pictures, hug, and kill coworkers. They also have to kill the obsession but some objectives can only be completed while the obsession is alive, requiring you to protect the obsession!
  • -
- -

06 January 2019

-

4dplanner updated:

-
    -
  • Mixers now work on 0% and 100% settings as pumps
  • -
  • Mixers display rounded percentages, not floored. As such numbers should always add up to 100%
  • -
-

Denton updated:

-
    -
  • Reduced the volume for some ghost notification sounds.
  • -
-

Noch updated:

-
    -
  • the 2 hygiene quirks are now designated as mood_quirks, since they center around mood
  • -
-

SpaceManiac updated:

-
    -
  • Entertainment telescreens in the bar indicate when they will show something interesting.
  • -
  • Entertainment telescreens can be viewed from a distance.
  • -
-

WJohnston updated:

-
    -
  • The Raven Cruiser escape shuttle has been completely redesigned. It now comes with shields, turrets that shoot nuke ops instead of your dog, and a very secure cockpit for important personnel. Its price has increased to 30,000, though!
  • -
-

coiax updated:

-
    -
  • The Squeak subsystem has been renamed to Minor Mapping.
  • -
- -

04 January 2019

-

0d0be32, PKPenguin321, Armhulen, epochayur updated:

-
    -
  • Changeling powers are now action buttons rather than verbs.
  • -
  • Thanks to epochayur for creating and compiling sprites for every single changeling action button!
  • -
  • Thanks to Armhulen for the changeling button background sprite!
  • -
-

4dplanner updated:

-
    -
  • Some items cover equipment while still letting you see it
  • -
  • in particular, this stops clothes burning off underneath drake armor
  • -
-

Dax Dupont updated:

-
    -
  • Silicons and drones can use vending machines once again, but only if they are not on station.
  • -
-

Denton updated:

-
    -
  • The rift in reality area and Hilbert's hotel no longer throw "HEY LISTEN!" AT warnings on server start.
  • -
-

SpaceManiac updated:

-
    -
  • Corpses in space no longer add miasma to the gas readout of space.
  • -
-

asdfsdagasdghbdsagsdffgd updated:

-
    -
  • chance to get either the soulless black and red space suit or the soul red spacesuit
  • -
-

coiax updated:

-
    -
  • New 'Podspawn' verb, which functions like 'Spawn', except any atoms movable spawned will be dropped in via a no-damage, no-explosion Centcom supply pod.
  • -
  • All the butcher cleavers that spawn during a blood contract will only last two minutes, and then vanish.
  • -
  • The level of mental trauma that a new clone goes through directly depends on how much brain damage they have when they leave the cloning pod. An earlier ejection will result in more trauma, a perfectly upgraded cloner with no brain damage will still cause no trauma.
  • -
  • Humans with the Void mutation will no longer be able to enter the void while inside something else (eg. cloning pod, cryotube) willingly or unwillingly.
  • -
  • The Spontaneous Brain Trauma event now has a range of possible severities, and no longer runtimes.
  • -
-

duckay updated:

-
    -
  • Added better names and descriptions for blueshirt
  • -
  • Added Blueshirt helmet and armor to the sectech for $600 each
  • -
-

hazamaitsuru updated:

-
    -
  • Various computers on BoxStation and Lavaland now face more logical directions.
  • -
  • BoxStation's gravity generator SMES had its terminal moved out of the wall.
  • -
-

nicbn updated:

-
    -
  • Microwave UI uses a radial menu now. You can see the contents by examining.
  • -
-

subject217 updated:

-
    -
  • Smuggler's satchels have been removed from the game.
  • -
  • The Miracle ruin has also been removed from the game, because it was disabled and it used Smuggler's satchels.
  • -
- -

02 January 2019

-

4dplanner updated:

-
    -
  • separated chemicals now works
  • -
-

Denton updated:

-
    -
  • Updated Runtimestation to make chemistry and revival testing quicker.
  • -
-

FloranOtten updated:

-
    -
  • added broken prototype canister icon
  • -
-

Floyd / Qustinnus updated:

-
    -
  • You now have to be naked to get the nice shower moodlet, if you shower with clothes you get a bad moodie
  • -
  • Hygiene, you slowly become dirty over time, the more covered in blood you are the faster you will lose hygiene. When you are too dirty you will have a stink overlay. (Hygiene doesn't affect mood currently) It also spawns miasma slowly if you smell like shit.
  • -
  • adds NEET and neat traits. NEET's get 20 bucks social welfare extra and like being unhygienic, while neat people dislike being unhygienic and like being hygienic
  • -
-

Floyd / Qustinnus for code, MrDoomBringer for Sprites updated:

-
    -
  • Durathread jumpsuit, beret, beanie and bandana
  • -
  • new sprites for all durathread objects
  • -
  • it now takes 4 strands to make one piece of durathread cloth
  • -
-

Robustin, Subject217 updated:

-
    -
  • The NukeOp Shuttle hull has been dramatically hardened. The walls are now "R-Walls" with far greater explosion resistance.
  • -
  • The NukeOp Shuttle guns have been significantly buffed. They now rapidly fire a new type of penetrator round, at a greater range, and have far greater explosion resistance.
  • -
  • The nuclear device on the NukeOp Shuttle is now in an anchored state by default, the Nuke can only be unanchored by inserting the disk and entering the proper code.
  • -
  • Non-Syndicate cyborgs are now unable to access the NukeOp Shuttle Console.
  • -
  • You can now unanchor Nukes even when the floor under them has been destroyed
  • -
-

Steelpoint updated:

-
    -
  • The Nanotrasen Corps of Engineers has begun a series of alterations to NTSS Boxstation, the first stage of changes were aimed at altering the Brig design, with minor improvements and alterations.
  • -
-

coiax updated:

-
    -
  • Uplink pens now require two seperate rotations to unlock. This also applies to failsafe codes.
  • -
  • Heroine bugs no longer make people appear partially bald when wearing them.
  • -
  • Ghosts can now see where an abductor camera console is looking.
  • -
  • Admins are only notified about the Lone Operative event weight every five increments or decrements to the weight.
  • -
  • After a Curse of Madness has ravaged the mind of the station, the lingering magics also affect anyone arriving to the station late.
  • -
- -

01 January 2019

-

4dplanner updated:

-
    -
  • squashed plants react on the turf they are squashed
  • -
-

coiax updated:

-
    -
  • Removes bomb notification sound for observers.
  • -
- -

30 December 2018

-

MadmanMartian updated:

-
    -
  • Adds helpers for finding if a user has a martial art type
  • -
-

coiax updated:

-
    -
  • The Shuffle Race wizard event no longer changes people's names.
  • -
  • When laying the drapes for surgery, only the surgeon will know which proceedure has been initiated.
  • -
- -

29 December 2018

-

4dplanner updated:

-
    -
  • blobs now receive a 50% cost refund on attacks that don't spread
  • -
  • blobs receive a free chemical re-roll every 4 minutes
  • -
  • reflector blobs are considerably tougher
  • -
  • attempting to turn a damaged strong blob into a reflector blob now refunds points
  • -
  • fixed an intregrity
  • -
- -

28 December 2018

-

Carbonhell updated:

-
    -
  • Added a new config setting to allow for species that aren't roundstart races anymore to still be used by players with a character set to that species prior to its removal.
  • -
-

Denton updated:

-
    -
  • Ghosts now get notified whenever a bomb or C4/X4 get activated.
  • -
  • Strange Reagent now takes ten seconds to revive people and also notifies ghosts that their body is being revived.
  • -
  • Improved Strange Reagent's description and added a separate "does not react" message for when players try to revive hellbound or suicided corpses.
  • -
-

Floyd / Qustinnus, sprites by MrDoomBringer updated:

-
    -
  • Adds a questionable new item for the bartender to start parties with
  • -
-

Frosty Fridge updated:

-
    -
  • Swarmers can no longer unleash Lord Singuloth.
  • -
-

Kierany9 updated:

-
    -
  • Assimilation now looks and sounds prettier!
  • -
  • Ghosts are now notified when hivemind hosts do something interesting.
  • -
  • Minor sprite changes.
  • -
  • Hive Sight no longer has a cooldown.
  • -
  • Fixed a couple of potential runtimes.
  • -
  • Fixed a recent bug where hivemind hosts kept their powers after losing antag status.
  • -
  • Added extra sanity checks to assimilate vessel.
  • -
  • Removed the buggy and useless progress bar on Mind Control.
  • -
  • Network Invasion can no longer be cheesed by mind controlling the interrogated vessel.
  • -
  • Assimilation now has its own greeting sound.
  • -
  • Added vignettes when using Mind Control and Hive Sight.
  • -
-

coiax updated:

-
    -
  • Normal shuttles that are not emagged will no longer throw things around. People will still be knocked down.
  • -
  • Emagged shuttles and poorly designed shuttles will also throw things around on tables, as well as closets.
  • -
  • Abductors created by abductor mutation toxin will be able to talk to themselves and to other abductors.
  • -
  • Abductor tongues now have distinct "channels". A person with an abductor tongue will be able to attune another tongue to the same channel as their own.
  • -
  • Speaking on the abductor channel will always use your mob's "real name".
  • -
  • Abductor teams can now purchase additional superlingual matricies from their abductor console.
  • -
- -

24 December 2018

-

4dplanner updated:

-
    -
  • fires will no longer burn quite so hot
  • -
  • the first spark of a hotspot is no longer always the same temperature
  • -
-

Carbonhell updated:

-
    -
  • A nuclear bomb in a rift in spacetime will now count as a syndie major victory, and spawn a singulo back at the station rift origin turf.
  • -
-

Dax Dupont updated:

-
    -
  • Borgs no longer turn into nanites by unexpanding.
  • -
-

Denton updated:

-
    -
  • The fridge in Pubbystation's public monastery kitchen is no longer locked by default.
  • -
  • Removed the Gondola round end sound.
  • -
-

Joe Berry updated:

-
    -
  • Reverts back to the bubblegum before [#38306](https://github.com/tgstation/tgstation/pull/38306), was an unfinished pr and generally this bubblegum has more stuff to work with.
  • -
  • Enrage mode, while in this mode bubblegum is colored a deep red, moves faster, doesn't retreat, and is immune to projectiles. All while throwing out ground slam attacks around him that throw people around.
  • -
  • Clones, basically fake bubblegums that do one attack and disappear afterwards.
  • -
  • Ground slam attack, only happens when bubblegum is enraged, throws enemies around. Beware being thrown into a wall or you might be stunned because this is how throws work in this game.
  • -
  • Bubblegum can now continue to charge through enemies without stopping.
  • -
  • Bubblegum's anger modifier no longer determines his movement speed, instead having a constant speed and changing on enragement.
  • -
  • Blood spray is now a directional move and can move diagonally towards its target
  • -
  • Bubblegums charge no longer uses throws to calculate being hit.
  • -
  • Bubblegum now retreats in his standard phase while not using moves, generally he was hard to get hit by in this phase anyways so this is a much smarter play on his part.
  • -
  • Blood spray can now move through walls and goes further, this was pretty easily cheesed because it couldn't move through walls with just hugging the edges of walls and just made him too hard to balance.
  • -
  • Bubblegum now procs melee checks much more often, though he has the same cooldown for his melee attacks. This means you're much less likely to stand next to him and not get hit.
  • -
  • Bubblegum now charges 2 tiles past you, makes it slightly more difficult to predict where he's going to go and makes it so he can catch up to you easier.
  • -
  • Bubblegum now moves faster during his charge.
  • -
  • Bubblegum now only takes 50 damage from explosions, taking many bombs to kill him instead of just 10.
  • -
-

Jordie0608 updated:

-
    -
  • Admin ranks now support punctuation.
  • -
-

Mickyan updated:

-
    -
  • Added a setting to cleanbots for cleaning graffiti
  • -
-

MrDoomBringer updated:

-
    -
  • Reverse-Supplypods (the admin-launched ones) no longer stay behind after rising up, and also auto-delete from centcom.
  • -
-

Skoglol updated:

-
    -
  • Satchels (chem bag, bio bag etc) now stack by name in addition to type.
  • -
  • Fixed Bubblegum plushie attack verb, Ratvar and Bubblegum plushie capitalization.
  • -
-

SpaceManiac updated:

-
    -
  • Orbit links on deadchat event announcements now actually work.
  • -
-

coiax updated:

-
    -
  • atom/var/container_type has been moved into datum/reagents/var/flags. There should be no visible changes to effects.
  • -
  • Choice beacons (such as the one the curator, chaplain and people with the Musican trait have access to) will no longer have pods that have minor explosive effects.
  • -
  • Stalking Phantom brain traumas will no longer stalk or attack people who are not conscious.
  • -
  • The use of the Give brain trauma and Cure all traumas options on View Variables is now logged, and messages admins.
  • -
  • A player who bag of holding bombs now correctly has their ckey entered in the admin log, and admin messages.
  • -
  • Admins now have access to a "wand of safety", a supercharged teleportation wand that moves people to a safe turf, like a swarmer teleport without the cuffing.
  • -
  • When the nuclear authentication disk remains stationary for too long, the chances of a Lone Operative increase. Admins are now notified when the chances go up or down.
  • -
- -

22 December 2018

-

4dplanner updated:

-
    -
  • heat sources with large heating volume will boost temperature properly
  • -
  • deleting a record without access resets the menu, instead of locking the machine
  • -
-

Denton updated:

-
    -
  • Boxstation disposal pipes no longer empty themselves in the Vacant Commissary.
  • -
-

Garen updated:

-
    -
  • Beepsky, ED-209s, and Honkbots will once again will defend themselves when attacked.
  • -
  • You need the item you're using on an unbuilt cyborg to actually be a multitool to modify it once again.
  • -
-

anconfuzedrock updated:

-
    -
  • "remove embedded object" surgery is now only two steps, instead of four.
  • -
-

coiax updated:

-
    -
  • The cyborg reset module wire has a star symbol marking, allowing a trained Roboticist to easily provide resets without altering any other cyborg settings.
  • -
  • Old rotting gibs no longer have the name "rotting old rotting gibs".
  • -
-

monster860 updated:

-
    -
  • celebrates the october revolution.
  • -
  • Fixes pumps and valves appearing super broken on maps that make heavy use of pipe layers.
  • -
-

nicbn updated:

-
    -
  • You can click on things that are under flaps or holo barriers.
  • -
- -

18 December 2018

-

4dplanner updated:

-
    -
  • Re-added autoprocessing function on the cloner
  • -
  • records now have an associated last death time, which must sync with the mind to clone. This means you need a new record every time someone dies.
  • -
  • diskette records can be partially applied to records in the cloner, for instance to overwrite a name.
  • -
  • you can still scan living people to obtain their records for disk use, but these records can't be cloned from.
  • -
  • cloning records are no longer based upon ckey
  • -
  • ghosts are no longer required for scanning
  • -
  • genetics access is required to alter and delete records
  • -
  • do not resuscitate verb added for ghosts (can be toggled on and off)
  • -
  • ghosts can no longer regain their ability to re-enter their bodies through the DNR verb unless the reason they cannot re-enter was due to use of the verb in the first place
  • -
-

Floyd / Qustinnus updated:

-
    -
  • fixes ethereal runtime
  • -
-

Kierany9 updated:

-
    -
  • Several minor updates to Assimilation.
  • -
  • Hosts no longer lose abilities if they fall below the required hive size.
  • -
  • Mind Control victims can no longer see nor hear for the duration of the control.
  • -
  • Distortion Field now affects the victim and those surrounding them over time instead of instantly.
  • -
  • Abilities that inflict stamina damage now affect the head instead of spreading damage over the entire body.
  • -
  • Mind Control now informs you of how long you have control for upon activation.
  • -
  • Changed various do_mob for do_after. All hivemind abilities except for Mass Assimilation should now work in certain situations where they didn't before.
  • -
  • Abusing the sleep verb while mind controlling is no longer a viable tactic.
  • -
  • Assimilating/removing people into/from the hive now has screen-wide range, with time taken to assimilate increasing exponentially with distance. The time to assimilate from 4 tiles away is approximately the same. Assimilation's cooldown has also been increased by five seconds to compensate.
  • -
-

Mickyan updated:

-
    -
  • Added the Hypersensitive and Light Drinker quirks
  • -
-

Powercreep Balance Committee updated:

-
    -
  • Public autolathes have been removed. Please ask (or break into) cargo if you need something.
  • +
  • fixes message spam from riding a vehicle without enough legs/arms

XDTM updated:

    -
  • Holymelons can now block a limited amount of spells: one spell per 20 points of potency. They will not consume charges when blocking passive or continuous magical effects.
  • -
  • Anti-magic items no longer work when put inside backpacks.
  • -
  • Gem-encrusted hardsuits no longer block spellcasting.
  • -
  • DNA-damaging methods (changeling draining, mainly) no longer prevent alternative revival methods, but can no longer be circumvented by upgrading DNA scanners.
  • -
  • Any source of husking now prevents cloning on unupgraded cloning scanners, instead of only husking caused by changelings.
  • -
  • Husking now fully prevents revival from several non-cloning methods, including defibrillation, surgery, and strange reagent.
  • +
  • Added a new device, the nanite communication remote, which can be used to send custom messages to message-based nanite programs.
  • +
  • Comm remotes use separate Comm Codes: for a message to be received, the signal's comm code must be the same as the program's.
-

coiax updated:

+

actioninja updated:

    -
  • Printed oxygen or plasma tanks at the protolathe are now empty.
  • -
  • Fixes bug where sufferers of monophobia would enter negative stress levels when around people.
  • +
  • Shuttle sounds should no longer ass blast your ears as they no longer play PER DOOR and instead from the nearest engine, or door if none are available.
  • +
  • Distant shuttle sounds.
- -

16 December 2018

-

Floyd/Qustinnus, paid for by Kryson updated:

+

bgobandit updated:

    -
  • You can now select what your pills will look like when making pills from the Chem Master
  • +
  • TP now shows the names of blood brothers' brothers.
-

Garen updated:

+

hey there uwu updated:

    -
  • Fixes runtime spam in pipe manifolds on nonstation z-levels
  • +
  • You can no longer choose the zombie race from the magic mirror, as intended.
-

MMMiracles updated:

+

nemvar updated:

    -
  • A new(old?) map, Donutstation, is now in rotation.
  • -
  • You can no longer crash the market with coins.
  • -
-

Mickyan updated:

-
    -
  • brave clowns can now manually disable the patented Waddle Dampeners(tm) built into their shoes by using ctrl-click.
  • -
-

Nicjh updated:

-
    -
  • Abductor console's select disguise option now uses a radial
  • -
-

Skoglol updated:

-
    -
  • Smuggler satchels now properly deletes if it's the last one in the list.
  • -
  • Id-locked chemistry and kitchen closets now checks for access.
  • -
  • Chem dispenser macros now function properly with higher tier manipulator.
  • -
  • Metastation: Adds missing access requirement to xenobiology airlock buttons.
  • -
-

Time-Green updated:

-
    -
  • fixes monkey and species mutations not working
  • -
  • fixes not getting gibbed
  • -
-

Toolby updated:

-
    -
  • Power tools now perform construction slower than the toolarm implant (but still incredibly faster than normal tools)
  • -
  • This is to promote trusting a player rather than safely printing off an item via techfab.
  • -
-

Tortellini Tony updated:

-
    -
  • Glitter can be clicked through.
  • -
-

YoYoBatty updated:

-
    -
  • Blurry eyes now actually blur instead of an overlay.
  • -
-

anconfuzedrock updated:

-
    -
  • slapping now doesn't require a specific intent or limb to be targetted.
  • -
-

coiax updated:

-
    -
  • Robotics can print cybernetic hearts, lungs and livers at their exofabricators (along with their upgraded versions).
  • -
  • Added upgraded cybernetic heart, just like the regular cybernetic heart, that doses you with epinephrine when unconscious. But the upgraded version generates a new dose after five minutes.
  • -
  • Admins now have logging when people open presents.
  • -
  • Santa can now examine presents to see what's inside.
  • -
  • Santa no longer has a mass summon presents spell, because of his new regenerating bag!
  • -
  • Santa's bag regenerates presents as long as Santa is holding it.
  • -
  • You can only find one gift under a christmas tree per round, no matter how many trees you search.
  • -
  • Santa's teleport does not announce where he's going.
  • -
  • Fixed Santa not having a full head and beard of white hair.
  • -
  • Fixed Santa not being genetically white-haired.
  • -
  • Fixed Concentrated Barber's Aid not growing extreme amounts of hair.
  • -
  • Bartenders can now rename the generic area "Bar" to the bar name of their choice with the use of their bar sign. This will rename air alarms, doors and APCs, so everyone knows what you're calling your bar this shift. (The bar sign chosen is also now a statistic that's tracked!)
  • -
  • Microwaves have a single wire accessible when open, the activation wire. When cut, the microwave will no longer function, when pulsed, the microwave will turn on.
  • -
  • Stabilized dark purple extracts now cook items in your hands, rather than dropping the cooked item on the floor.
  • -
  • Dead monkeys now produce miasma.
  • -
  • Pubby now has a Christmas tree in the library during the festive season.
  • -
  • Fixes an exploit where you could get admin-only infinite power cells from the EXPERIMENTOR.
  • -
  • Added the infinite closet, a closet that replicates the first thing that's put into it.
  • -
  • The Admin->Investigate verb will indicate investigate topics that have had no messages logged this round. The view notes option is always visible.
  • -
-

kriskog updated:

-
    -
  • Goliaths, legions and pAI will no longer block clicks on the entire turf.
  • -
- -

12 December 2018

-

Anonmare updated:

-
    -
  • Fixes cameras being attacked with multitools when used to mess up their focus.
  • -
-

Kyep updated:

-
    -
  • Fix an AI-related href exploit.
  • -
-

Tlaltecuhtli updated:

-
    -
  • advanced surgery tools, they work like ce tools
  • -
-

coiax updated:

-
    -
  • Abductor scientists, or people who have had training similar to an abductor's scientist will be able to examine alien glands to determine their scientific purpose.
  • -
  • Abductor glands now have their appearances randomized.
  • -
  • Admin and event only pair pinpointers! They come in a box of two, and each pinpointer will always point at its corresponding pair. Aww.
  • -
- -

11 December 2018

-

Denton updated:

-
    -
  • The MultiZ test map is no longer the default map.
  • -
-

monster860 updated:

-
    -
  • Fixes teleport runes not working, at all.
  • +
  • Colored lights now shine in different colours.
  • +
  • Mops can now be printed at the autolathe and protolathe.

tralezab updated:

    -
  • Wizard has a new spell: Soul tap!
  • -
  • lichdom requires a soul now, and it takes your soul.
  • +
  • Gravitokinetic stands are now available!
  • +
+ +

23 May 2019

+

4dplanner updated:

+
    +
  • between the sheets heals carbons
  • +
  • colossus chest is intangible to colossus bolts
  • +
+

Naksu updated:

+
    +
  • removed some unnecessary wrappers in Life() code.
  • +
  • get_area() is now a define rather than a proc.
  • +
+

TheSilverNuke updated:

+
    +
  • edaggers have a special suicide!
  • +
+

nemvar updated:

+
    +
  • You can now reuse chemical grenade casings if they fail to react.
  • +
+

ninjanomnom updated:

+
    +
  • Some rpg affixes now have special effects
  • +
+

weeweesoda updated:

+
    +
  • The CRAB protocol traitor item now has a maximum stock of 1 each round
  • +
+ +

22 May 2019

+

Incoming5643 updated:

+
    +
  • After a very long period of being broken, the training bomb in security finally works properly again.
  • +
  • Syndicate bomb cores have become a little more robust in their operation. Defused but still cored bombs are no longer inert and can be set again. Would be heroes are advised to cut out and dispose of bomb cores, and dismantle unneeded bomb shells to be absolutely sure.
  • +
+

MrFluffster updated:

+
    +
  • CLOTH foodtype
  • +
+

Naksu updated:

+
    +
  • Added a new blob strain that grows inside the station and eats garbage
  • +
  • Several fixes for stuff harddeling
  • +
  • Cryotubes no longer display a double of a person that was once in but teleported out by having ingested bluespace or other such nonsense
  • +
  • pda.detonatable and uplink component checks removed in favor of a signal in detomatix cart handling
  • +
  • nukeop uplinks now have 5 unlimited discounts and 10 limited discounts shared between the team, rather than 3 individual discounts like traitor uplinks
  • +
  • corpses no longer feel, light-headed or otherwise
  • +
  • removed /datum/mutation/human/proc/on_move in favor of having the chameleon mutation register for a signal
  • +
+

RaveRadbury updated:

+
    +
  • "Religiously Comforted" from Spiritual Quirk occurs on examine and lasts for 5 minutes
  • +
+

kriskog updated:

+
    +
  • Added a bunch of previously missing adjacency checks to ui window actions and alt clicks.
  • +
+

loserXD updated:

+
    +
  • Hangar Bay Shutters need only general CentCom access to open now
  • +
+

nemvar updated:

+
    +
  • Podcloning now lets you keep your quirks.
  • +
+

vuonojenmustaturska updated:

+
    +
  • Removed the ability of fat people to vore monkeys, and the ability of aliens to vore humans.
  • +
  • Removed stubbed out would-be functionality related to stomach contents
  • +
  • Nuclear Operative reinforcements now get uplinks with 0 TC and a real name.
  • +
+ +

19 May 2019

+

CrazyClown12 updated:

+
    +
  • The chloral hydrate inside of the sleepy pen is no longer slower acting than chloral hydrate made in chemistry.
  • +
  • The chloral hydrate inside of cookies synthesised by emagged borgs is no longer slower acting than chloral hydrate made in chemistry.
  • +
  • Delayed chloral hydrate
  • +
+

Erwgd updated:

+
    +
  • Swapped out an epinephrine bottle for potassium iodide in NanoMed Plus vending machines.
  • +
+

Naksu updated:

+
    +
  • Items using atom colors for coloring now show up properly colored in vending machines, rather than snow-white
  • +
+

Partheo updated:

+
    +
  • Scrubbers have updated design and animation
  • +
+

Rave Radbury, Art by Navi.OS updated:

+
    +
  • pAI's have a bunch of HUD stuff now
  • +
  • pAI's now have an AI style PDA
  • +
  • pAI cameras can now download a zoom feature! Bigger and smaller pictures!
  • +
  • Split the pAI medhud module into seperate medhud and health analyzer modules
  • +
  • Journalism modules now have RAM costs
  • +
  • RAM prices have changed on a number of modules
  • +
  • added more pAI HUD icons
  • +
+

Zxaber updated:

+
    +
  • AI power backup is now separate from the health, and is tied to their core. Carding an AI on battery backup will leave the core at partial charge. AIs no longer slowly lose integrity while on backups (but will instantly die as before once the backup runs out). As such, whacking an AI with a wrench will no longer magically lower their backup battery capacity.
  • +
  • AIs on backup battery can now unbolt at the cost of a quarter of their battery's max charge. This cannot be done while at under 25% power.
  • +
+

imsxz updated:

+
    +
  • cakehat has been nerfed
  • +
  • cakehat sounds cooler
  • +
+ +

17 May 2019

+

4dplanner updated:

+
    +
  • health hud will no longer show full health at 0 hp
  • +
  • glass golems properly redirect projectiles
  • +
  • glass golem reflected projectiles can damage the original firer
  • +
+

ExcessiveUseOfCobblestone updated:

+
    +
  • borgs can now unbuckle people from stasis beds
  • +
+

Garen7 updated:

+
    +
  • fixes lings being able to infinitely use their strained muscles
  • +
+

Naksu updated:

+
    +
  • The crabphone will no longer deafen everyone who didn't have the foreknowledge that it was coming.
  • +
  • The crabphone has 80% less HP, as befits something that costs 7 TC and is not two bubblegums stacked on top of eachother.
  • +
  • Nuclear operative TC now comes pre-distributed, the telecrystal assignment stations have been removed.
  • +
  • mindshield nanites no longer give mindshields to revheads and one mind awoken hiveminds.
  • +
  • Fixed several issues with venus human traps and their vines going through walls
  • +
  • Made atmos update_visuals() proc a bit faster
  • +
+

jegub updated:

+
    +
  • Lets the grass grow under your feet.
  • +
+

nemvar updated:

+
    +
  • Explosive holoparasite bombs now explode if you bump into them, instead of the other way around.
  • +
+

pireamaineach updated:

+
    +
  • Added a 3rd atmos tech locker and rad locker to the incinerators on Meta and Box, and an atmos tech locker to the incinerator on Pubby since it already had a rad-suit.
  • +
  • Reverts https://github.com/tgstation/tgstation/pull/43557
  • +
  • Makes the doors to the incinerator on meta require atmos access.
  • +
  • Axes some hairstyles that didn't make the final cut but never got fully removed, removes an unused sprite.
  • +
  • Also fixes the cornrows because they were bRoek
  • +
+

zeroisthebiggay updated:

+
    +
  • Gives Sentient Diseases a medical hud to observe their victims further with.
  • +
+ +

14 May 2019

+

Flatgub updated:

+
    +
  • Added RCL wiring menu
  • +
  • RCL change cable colour button now applies changes immediately
  • +
+

Krysonism updated:

+
    +
  • 8 new alcoholic drinks.
  • +
  • 2 new nonalcoholic drinks.
  • +
  • Packs of a novel artificial sweetener have been added to the kitchen vendor.
  • +
  • Bottles of trappist beer are now available at a premium price in the booze-o-mat.
  • +
  • Juicing parsnips now yields parsnip juice. add; Maintenance peaches.
  • +
  • Removed champagne from the booze dispenser.
  • +
  • Now everyone has to pay 200 credits if they want champagne from the booze-o-mat.
  • +
  • Grape soda now cools you down like other sodas.
  • +
  • Added new drink, bottle, vomit and peach can sprites.
  • +
+

MrFluffster updated:

+
    +
  • An extra tile to the Box chapel's width
  • +
  • One barely noticeable tile of width from escape(one escape brig chair dead [*] )
  • +
+

RaveRadbury updated:

+
    +
  • mood_event timeouts are now in MINUTES and SECONDS
  • +
+

Skoglol updated:

+
    +
  • You no longer get shocked by shock touching someone you are pulling.
  • +
+

WJohnston updated:

+
    +
  • New boxstation mining shuttle! It paves the way for little pod-like shuttles needing to return home where they can charge, though this needs to be expanded to other shuttles as well.
  • +
+

anconfuzedrock updated:

+
    +
  • Cargo can now order a ridiculously large canister containing only saline to give medbay a more than plentiful supply of the stuff.
  • +
+ +

13 May 2019

+

Farquaar updated:

+
    +
  • Caught the wizard who was turning the rastacap shipments invisible.
  • +
+

Lett1 updated:

+
    +
  • Adds a new mutation to the orange
  • +
+

Mickyan updated:

+
    +
  • Mood quirks are now only processed by the quirk holders
  • +
  • Disk toasters no longer turn invisible after inserting a disk
  • +
+

Naksu updated:

+
    +
  • Removed VR
  • +
  • Refactored blob code
  • +
  • vending machines now use spritesheets
  • +
+

Skoglol updated:

+
    +
  • Borgs using the wrong tools during a repeatable surgery step will no longer have to restart surgery.
  • +
  • Starting and stopping the closing step during repeatable surgery will no longer advance you to the closing step.
  • +
+

Ty-the-Smonk updated:

+
    +
  • You can now interact with self sustaining crossbreeds
  • +
+ +

12 May 2019

+

4dplanner updated:

+
    +
  • spiritual moodlet description has a newline
  • +
+

Kierany9 updated:

+
    +
  • Medullary Failure now has a maximum range
  • +
+

Naksu updated:

+
    +
  • LateInitialize no longer waits for sleepers, moved some book/bookcase initialization sql over there.
  • +
+

RaveRadbury updated:

+
    +
  • Follower hoodies are in the crafting menu!
  • +
+

Tetr4 updated:

+
    +
  • Remote signallers now use input boxes instead of inc/dec buttons.
  • +
  • Remote signaller freq range no longer clamps to the wrong range.
  • +
+

Tlaltecuhtli updated:

+
    +
  • hitting a bottle or a soda can with a bullet will make them break
  • +
+

actioninja updated:

+
    +
  • PDA beep, grenade arm, and flesh impact sounds have been fixed
  • +
  • When you get a quick rundown, your ears bleed less.
  • +
+ +

11 May 2019

+

Farquaar updated:

+
    +
  • Added a number of Nanotrasen-approved religious clothing items to the chaplain vendor, autodrobe and clothesmate.
  • +
  • sprites and icons for several new clothing items, including some in-hand sprites.
  • +
+

Garen7 updated:

+
    +
  • You can only cook donk pockets once now
  • +
+

JStheguy updated:

+
    +
  • Humans have more natural-looking skin coloration.
  • +
+

RaveRadbury updated:

+
    +
  • Chem has viro access during skeleton shifts
  • +
  • Doctor, Chemist and Viro lost mutual expanded access.
  • +
+

YoYoBatty updated:

+
    +
  • Tachyon-doppler arrays now have explosion logging.
  • +
+

actioninja updated:

+
    +
  • Goofbegone was applied to roundstart messages to reduce spam a little.
  • +
+ +

10 May 2019

+

JoeyJo0 updated:

+
    +
  • N2O Decomposition reaction
  • +
  • N2O is no longer the perfect "safety gas". N2O Decomposes starting from 1400K, feeding more oxygen into the engine.
  • +
+

Mickyan updated:

+
    +
  • the contents on the smartfridge icon now change depending on how many items it contains
  • +
  • opening the maintenance panel of smartfridges now correctly updates the icon
  • +
+

Naksu updated:

+
    +
  • fixed a mutation runtime
  • +
  • Abductors can use their own console again.
  • +
+

Okand37 updated:

+
    +
  • Nanotrasen Shipyards have released a set of Kilo-pattern shuttles including a new Kilo Emergency Shuttle, purchasable for 5000 credits!
  • +
  • Syndicate Skunkworks have ushered in a new model of the infiltrator-pattern shuttle designed for operative insertion and extraction. Rumours report the new shuttle to be an up-armoured version of the original design that Nanotrasen Intelligence workers have taken to calling the "tortoise."
  • +
  • New shuttles are accessible from the shuttle loader!
  • +
+

YoYoBatty updated:

+
    +
  • Fixed hostile mob's not properly breaking directional windows and doors.
  • +
+

nemvar updated:

+
    +
  • Only the first generation of spiders can change directives for their offsprings.
  • +
  • Spider directives are now logged.
  • +
+

py01 updated:

+
    +
  • CQC and Sleeping Carp are properly logged. Change: CQC can passively grab targets when not on grab intent. Passive grabs do not count towards combos for CQC or Sleeping carp.
  • +
+ +

09 May 2019

+

4dplanner updated:

+
    +
  • Blood drunk eye gives damage slowdown immunity rather than vulnerability.
  • +
+

Skoglol updated:

+
    +
  • Secondary shocks should no longer some times ignore insulated gloves.
  • +
+

nemvar updated:

+
    +
  • Activating a grenade no longer puts you in throwmode.
  • +
  • You always throw active grenades now.
  • +
+

zeroisthebiggay updated:

+
    +
  • Lets nukeops buy chest rigs.
  • +
+ +

08 May 2019

+

4dplanner updated:

+
    +
  • transform spell transfers damage correctly instead of healing most of the time
  • +
  • 0% simplemob health maps to 0 carbon health, 100% simplemob to 100% carbon
  • +
  • transforming to a form with brute resistance no longer heals you
  • +
  • transforming back to a species with brute resistance no longer heals you
  • +
+

JJRcop and Kmc2000 (sprites) updated:

+
    +
  • Replaced Sleepers with Lifeform Stasis Units. These place patients in stasis, a new status effect that halts biological functions indefinitely. It also prevents corpse decay.
  • +
+

RaveRadbury updated:

+
    +
  • all medbay jobs have access to viro during skeleton shifts
  • +
  • chemist, doctor, and virologist share increased mutual access
  • +
  • The Tenets of Servicia are properly available through "servicianism" and "partying" religions
  • +
+

ShizCalev updated:

+
    +
  • switching to the SS13 camera network will no longer send you to the VR area.
  • +
+ +

07 May 2019

+

4dplanner updated:

+
    +
  • summon item cannot mark station loving items
  • +
+

Floyd / Qustinnus, Sprites by MrDoomBringer updated:

+
    +
  • New traitor item: The suspicious phone. This device lets you launch a device that drains the funds of all crewmembers to your bank account, the only way for them to stop this is by rushing to the conventionaly launched spacecoin market where the crew can sell their Spacecoin.
  • +
+

JoeyJo0 updated:

+
    +
  • Radsuit lockers in atmos
  • +
  • Pipe dispensers are now moved to maintenance locations
  • +
+

Naksu updated:

+
    +
  • Transferring quirks now properly removes the roundstart trait from the person losing the quirk.
  • +
  • Roundstart traits no longer block the removal of other sources of that trait
  • +
  • Trait accessors are now defines rather than functions
  • +
+

RaveRadbury updated:

+
    +
  • pAI mouse hotkeys are restored
  • +
  • Removed hull integrity system from economy.dm Should reduce periodic lag.
  • +
+

Skoglol updated:

+
    +
  • Shocks now propagate to people you are pulling or pulled by.
  • +
  • Grounded nerves now uses the shock immune trait.
  • +
+

YPOQ updated:

+
    +
  • Fixed sand, glass, and bronze golems being unaffected by projectiles they should have been affected by.
  • +
+

blessedmulligan updated:

+
    +
  • Garlic! Heals chefs and makes everyone else stinky. Keeps vampires away.
  • +
  • Garlic Bread. Made with a bread slice, butter, and garlic.
  • +
  • Khinkalis now require garlic to make, and are slightly more filling.
  • +
+

pigeonsk updated:

+
    +
  • Air contents inside a tank react additionally once instead of thrice when exploding
  • +
+

zxaber updated:

+
    +
  • A couple of dead bodies are now in the morgue. The souls are long gone, so no one will care if you "borrowed" a part or two.
  • +
+ +

06 May 2019

+

Fikou updated:

+
    +
  • Diagnostic HUD eyes, now printable at your local Medical Lathe/Exosuit Fabricator!
  • +
+

PKPenguin321 updated:

+
    +
  • Mindswapping with a stand instead mindswaps you with that stand's owner, giving you ownership of their stand.
  • +
+

Zxaber updated:

+
    +
  • Cargo manifests no longer list the purchaser as "/datum/bank_account" under certain circumstances
  • +
+ +

04 May 2019

+

81Denton updated:

+
    +
  • Donutstation: The Atmospherics incinerator airlocks now cycle properly.
  • +
  • Admins who want to cancel round end delay now have to confirm a popup first.
  • +
+

Coconutwarrior97 updated:

+
    +
  • Removed grandpa from the first name list.
  • +
+

Lett1 updated:

+
    +
  • New trauma: Expressive Aphasia only. Restricts your speech to the 1000 most common english words.
  • +
+

MMMiracles updated:

+
    +
  • Various minor tweaks to Donutstation.
  • +
+

Skoglol updated:

+
    +
  • Credits can now only be withdrawn in integer amounts.
  • +
  • Mining bags will no longer drop ore into backpack.
  • +
  • Mining bags in backpack no longer interferes with other mining bags.
  • +
  • .357 casings now always drops on floor when speedloaded.
  • +
  • Fixes some storage size circumventions.
  • +
+

Tlaltecuhtli updated:

+
    +
  • ghetto grinder made out of wood and plasteel
  • +
+

Wilchenx updated:

+
    +
  • Deluxe Silicate Selections vendor now has circuitboards
  • +
  • fixes a typo
  • +
  • Added pAI cards to the vendor
  • +
+

YPOQ updated:

+
    +
  • Borgs in wheelchairs can no longer go super fast
  • +
+

Zxaber updated:

+
    +
  • Failing the "which clothes are shower-safe" guessing minigame no longer punishes with a mood debuff (though you still won't get clean until you get it right).
  • +
+

as334 updated:

+
    +
  • New Gas Reaction, Stimulum Energy Balls. Combine 100 degree Pluoxium, Stimulum and small amounts of Plasma and Nitryl to shoot off a deadly radioactive energy ball.
  • +
  • The reaction will consume the plasma, pluoxium and stimulum and release small amounts of heat. The presence of water vapor will change the direction in which it shoots. See if you can figure out how to aim it.
  • +
  • Nitryl now forms at 22,000 degrees, a significantly lower temperature.
  • +
  • Removed some old left-behind fusion test canisters.
  • +
+

nemvar updated:

+
    +
  • A missing liver will now hurt you again.
  • +
+

zeroisthebiggay updated:

+
    +
  • Gives Janiborgs the long lost bucket for their mop.
  • +
  • Gives Janiborgs a paint remover.
  • +
  • Gives Janiborgs a flyswatter to destroy angry bees and moths with.
  • +
+ +

30 April 2019

+

81Denton updated:

+
    +
  • Dead AIs no longer get stuck in place and become movable again.
  • +
+

Carshalash updated:

+
    +
  • Replaces Pressurized Slime to spray lube instead of water
  • +
+

PKPenguin321 updated:

+
    +
  • Humans now have a punch damage range of 1-10, up from 0-9
  • +
  • The chance to miss a punch now increases the more stamina and brute damage you have
  • +
  • The stun duration for a critical punch now scales with how much stamina/brute damage the victim has
  • +
  • Punches now deal full stamina damage + half damage in brute (effectively 1.5x damage on all punches, not accounting for stamina regeneration)
  • +
  • Kicking (punching a prone person) does full brute damage, never misses, and does 1.5x damage
  • +
  • Grabs are now harder to break out of the more stamina/brute damage you have
  • +
  • Failing to resist out of a grab will deal a bit of stamina damage to you
  • +
  • In all instances above where both stamina and brute damage are considered, brute is weighed 1/2 as heavily as stamina (meaning stamina has more of an effect than brute when it comes to punch-stun duration, miss chance, etc)
  • +
+

Skoglol updated:

+
    +
  • Offstation AI can no longer interact with other z-levels. Again.
  • +
  • Robotics control console can now only blow/lockdown borgs and drones on current z-level.
  • +
  • Falsewalls now properly hide pipes and wires.
  • +
  • Ninja dash now works in dark areas if you can see in the dark.
  • +
  • Blob factories can no longer create more than one blobbernaut at a time.
  • +
+

SpaceManiac updated:

+
    +
  • Removed a workaround for a compiler bug that has since been fixed.
  • +
  • The "draggable" cursor is now shown when folding a closed bodybag.
  • +
  • Failing to fold a bodybag because it is open or full now tells you why.
  • +
+

nemvar updated:

+
    +
  • Fixes bathsalts and beepsky smash transfering their respective brain traumas after cloning.
  • +
+ +

27 April 2019

+

81Denton updated:

+
    +
  • Pubbystation: Fixed the incinerator's waste to space injector starting powered off.
  • +
  • Metastation: You can now pass parts of the AI sat transit tube again.
  • +
+

DaxDupont updated:

+
    +
  • Clowns now spawn with the proper health
  • +
+

Mideanon updated:

+
    +
  • Adminordrazine now gives blood back
  • +
+

MrFluffster updated:

+
    +
  • tweaked the pubby incinerator
  • +
+

RaveRadbury updated:

+
    +
  • The radio configuration menu for masters of pAI will now toggle properly.
  • +
  • pAI HUD appears as it should.
  • +
+

RaveRadbury, Art by Navi.OS updated:

+
    +
  • pAI Newscaster
  • +
  • pAI Camera
  • +
  • New pAI HUD
  • +
  • unique pAI HUD theme
  • +
+

TheDreamweaver updated:

+
    +
  • Hilbert's Hotel can no longer be brought inside of itself.
  • +
+

Zxaber updated:

+
    +
  • Certain small items purchased through cargo now get grouped into a single box.
  • +
  • Added single-order options for several existing products in the Cargo Catalog.
  • +
  • Added ALPU MK-I Ripley kit to the cargo catalog, under Engineering.
  • +
  • Cargo Ripley bounty now requires a MK-II. remove: Removed the Ripley and Odysseus listings in the cargo catalog that were only the control boards and nothing more.
  • +
  • Ammo and Medkit listings are now single-pack items, and considered small items that get grouped into single boxes. Price per unit for ammo is unchanged, and for medkits is as close to unchanged as is reasonable.
  • +
+

actioninja updated:

+
    +
  • Changed the description on ling augmented eyes to be more accurate to their actual functionality
  • +
+

nemvar updated:

+
    +
  • Heavily nerfs russian surplus gear.
  • +
+

tralezab updated:

+
    +
  • zombies can eat brains now
  • +
+ +

25 April 2019

+

RaveRadbury updated:

+
    +
  • pAI's now have the same headset tech as AI. Add and remove keys just like you would with headsets.
  • +
  • Service Halls now allow all Service dept. jobs.
  • +
+ +

24 April 2019

+

Kierany9 updated:

+
    +
  • The hivemind radar's no longer has a minimum range, but has an increased ping time.
  • +
  • How power use affects the hivemind radar has been tweaked as to ensure that going loud early is punished more.
  • +
+

Mickyan updated:

+
    +
  • New quirk: Empath. Gain a better insight on the state of people around you by examining them.
  • +
  • New quirk: Friendly. Your hugs are just the best. Keep yourself in a good mood to give the bestest hugs!
  • +
+

MrDroppodBringer and Time-Green updated:

+
    +
  • Adds the lipid extractor to the service protolathe arsenal
  • +
+

TetraK1 updated:

+
    +
  • AI integrity restorer no longer drops a free AI core on deconstruction/destruction.
  • +
+

Tlaltecuhtli updated:

+
    +
  • rubbershot does 66 stamina + 18 damage instead of 150 stamina + 18 damage
  • +
  • beanbang does 55 stamina + 5 damge instead of 80 + 5 damage
  • +
+

Wilchenx updated:

+
    +
  • The modular pc vendor
  • +
  • minor entities on meta/pubby/box/delta to make room for said vendor
  • +
+

actioninja updated:

+
    +
  • Fixed an exploit where incompatible magazine could be tactical reloaded into guns, and then still fire.
  • +
+

bgobandit updated:

+
    +
  • Examining intercoms/radios shows the frequency they're set to, if you're in range.
  • +
+ +

06 April 2019

+

FloranOtten updated:

+
    +
  • Changes the wooden doors on the Meta Maint Bar with wooden airlocks. Sounds are the same.
  • +
+

RaveRadbury updated:

+
    +
  • Bike horns and baguettes can now be equipped to belt and back slots!
  • +
+

ShizCalev updated:

+
    +
  • Enabled tactical reloads for most ballistic weapons.
  • +
+

bobbahbrown updated:

+
    +
  • Monkeys now apply knockdown when tackling instead of stunning, and can stun you by tackling you whilst you are knocked down.
  • +
+ +

04 April 2019

+

actioninja updated:

+
    +
  • Disarm has been reworked, instead of an rng based system instead it pushes people away from you. If their movement is blocked it knocks them over. Shoving someone twice quickly will knock ranged weapons out of their hands.
  • +
  • Moving into humans while in a hostile intent no longer pushes them.
  • +
  • Passive grabs need to be resisted out of while on the ground, and can't be directly crawled out of
  • +
+ +

03 April 2019

+

Basilman updated:

+
    +
  • Added a cooldown for datum outputs
  • +
+

Kierany9 updated:

+
    +
  • Fixed the assimilation radar bug for real this time.
  • +
  • Possibly fixed mindshield implants sometimes not working against vessels.
  • +
+

MrDoomBringer updated:

+
    +
  • Supplypod Beacons from the Express Supply Console now cost 500 credits, down from 5000.
  • +
+

Nervere updated:

+
    +
  • Default color for when custom asay colors is not enabled is now orange, not red.
  • +
  • Asay is now properly bolded in lightmode.
  • +
  • Asay is now properly bolded in darkmode.
  • +
  • Default color for when custom asay colors is enabled is now orange, not black.
  • +
  • removed a duplicate/broken secrets panel button
  • +
  • you can now click the text that says "Antagonist" on an antagonist's entry in the global player panel to check all antags, as intended
  • +
+

ShizCalev updated:

+
    +
  • Paraplegics can now climb into mechs.
  • +
  • Locker bolts will no longer move mobs that aren't valid for lockering.
  • +
  • Paraplegics/mobs missing legs can no longer operate vehicles which require legs to operate (ie bicycles, skateboards, ATVs, ect) if they lost the limbs while still buckled in.
  • +
  • Mobs with no arms will now fall off bikes & scooters when trying to move.
  • +
  • Badmins can now edit limb requirements of vehicles.
  • +
+

Tlaltecuhtli updated:

+
    +
  • large ebows do 20 damage instead of 40
  • +
  • russian surplus crate, sec ammo crate, meat/veggie/fruit crate, rped crate, bomb suit crate, bio suit crate, parrot crate, chem crate
  • +
  • lowered price of some crates which are overpriced for no reason aka the ipod crate and the mech circuits crate, track implant crate has also track .38 ammo
  • +
  • sectech vendor has the refill pack
  • +
+

Zxaber updated:

+
    +
  • Deflecting shots while inside a MK-I Ripley (or inside anything else, for that matter) will cause the shots to deflect back into the container.
  • +
  • Firing at a MK-I Ripley while aiming for the head or chest will still hit the pilot, but aiming for the arms or legs will now intentionally hit the mech.
  • +
  • Being incapacitated in an open-canopy mech will now lead to you falling out.
  • +
+

actioninja updated:

+
    +
  • EZ-CLEAN grenades now deal 1.5x the damage.
  • +
  • Replaced Title2.ogg with a much higher quality version.
  • +
+

bobbahbrown updated:

+
    +
  • Wands, staves, and other magic guns no longer allow bypassing den and anti-magic checks when being fired offhand.
  • +
  • Removed unlawful reference to Disney's Star Wars franchise in map logging.
  • +
+ +

02 April 2019

+

Barhandar updated:

+
    +
  • Plasteel golems have been buffed and will now stay on the ground instead of floating without gravity (like magboots). They're also cannot be swapped positions with even on help intent.
  • +
+

SpaceManiac updated:

+
    +
  • Fixed the latest set of roundstart active turfs.
  • +
+

WJohnston updated:

+
    +
  • New .357 revolver sprites.
  • +
+

bobbahbrown updated:

+
    +
  • Return of the photocopied ass
  • +
  • Photocopiers now properly have a delay before photocopying an ass.
  • +
  • Corrected an error that stopped photos of crew members being printed at the security records consoles.
  • +
+

pireamaineach updated:

+
    +
  • Makes the .45 magazine actually update per round rather than just showing full or empty.
  • +
+ +

01 April 2019

+

AutomaticFrenzy updated:

+
    +
  • soap now displays the correct message when examined
  • +
+

ShizCalev updated:

+
    +
  • Revamped Donutstation's engineering and supermatter rooms to fix a number of issues that prevented proper functionality, and resolved numerous aesthetic complaints.
  • +
  • Fixed Jones actions on a couple away mission fridges.
  • +
  • Mass drivers will no longer launch ghosts & camera mobs (AI cameras, xenobio cameras, ect)
  • +
+

SpaceManiac updated:

+
    +
  • Blood brothers succeeding at some objective no longer bolds the entire rest of the round-end report.
  • +
+

Tlaltecuhtli updated:

+
    +
  • fixes spelling error in void magent
  • +
  • cryo cell starts with auto eject true
  • +
+

Vile Beggar updated:

+
    +
  • Toxins launch site telescreens now work properly again.
  • +
  • Polymorphed drones no longer have normal drone flavortext.
  • +
+

Zxaber updated:

+
    +
  • Firefighter construction text is no longer off by a step.
  • +
+ +

30 March 2019

+

FloranOtten updated:

+
    +
  • Added the Pod Shuttle
  • +
+

ShizCalev updated:

+
    +
  • Moved mapping related errors to their own log file.
  • +
+

Vile Beggar updated:

+
    +
  • You no longer have to take off your clown/mime mask to shower properly.
  • +
+ +

29 March 2019

+

81Denton updated:

+
    +
  • Fixed a bug that prevented strange reagent from reacting with hydroponics trays. Use with care!
  • +
+

SpaceManiac updated:

+
    +
  • If an admin sends a ghost back to the lobby, they can now choose a different set of quirks.
  • +
  • The code to handle buckling latejoin players to chairs has been made more flexible.
  • +
+

Spyro Zeppeli updated:

+
    +
  • Changes ethereal low charge damage from brute to toxin
  • +
+

Tlaltecuhtli updated:

+
    +
  • fixes exploit with holopets
  • +
+

Zxaber updated:

+
    +
  • AIs can now use CTRL and a number key (1 - 9) to assign a location to the number key, and then press the key later to jump their camera to that location. The numpad keys will work as aliases for their respective numbers.
  • +
  • The Tilde key, or zero (or numpad zero), will return you to the last point you jumped from.
  • +
+ +

28 March 2019

+

AnturK updated:

+
    +
  • Spraypainting blast doors no longer makes them see-through.
  • +
  • Paint remover now works on blast doors and the like.
  • +
+

Fox McCloud updated:

+
    +
  • Fixes a very longstanding LINDA bug where turfs adjacent to a hotspot would be less prone to igniting
  • +
+

PKPenguin321 updated:

+
    +
  • Keep your eye out for a rare new arcade game!
  • +
  • X-Ray vision can no longer be obtained via a random gene sequence at roundstart.
  • +
  • X-Ray now has 35 instability, up from 25.
  • +
  • A new gene, thermal vision, has been added to genetics.
  • +
  • You can create X-Ray vision by mixing Thermal Vision and Radioactive together.
  • +
+

ShizCalev updated:

+
    +
  • Corrected cloning logs not showing the clone's key if they ghosted during processing.
  • +
+

SpaceManiac updated:

+
    +
  • The death icon for the "banned" AI core choice will now show properly.
  • +
+

SuicidalPickles updated:

+
    +
  • Medical Winter Coats can now equip Handheld Crew Monitors in their suit storage slot.
  • +
+

Vile Beggar updated:

+
    +
  • Wearing the CE jumpsuit along with the advanced hardsuit will now fully protect you from radiation, as intended.
  • +
+

zeroisthebiggay updated:

+
    +
  • Gave the Service Cyborg a Synthesizer! Try not to destroy the Human populace's weak organic eardrums with it.
  • +
  • Service Cyborgs have lost their Violin to compensate for this. Your bashing in of heads with the Guitar will remain unimpeded however.
  • +
+ +

27 March 2019

+

4dplanner updated:

+
    +
  • Humans can no longer use UIs while incapacitated
  • +
  • stabilised sepia slime randomly changes your speed as intended
  • +
+

81Denton updated:

+
    +
  • Rolling a 17 on the d20 of fate no longer gives you an empty box.
  • +
+

Basilman updated:

+
    +
  • fixed runtime from selectin missing bodypart due to ran_zone
  • +
  • changed how ran_zone selects a zone from a switch to pickweight
  • +
+

Kierany9 updated:

+
    +
  • Added a 15 second grace period after death to prevent people from avoiding a hivemind host's Reclaim by succumbing.
  • +
+

Lett1 updated:

+
    +
  • Added a new holodeck program: Photobooth
  • +
  • Comes with three cameras and black and white floors, a dresser and a mirror.
  • +
+

Menshin updated:

+
    +
  • Janitor ERT leader now spawns properly equipped
  • +
+

ShizCalev updated:

+
    +
  • Fixed a runtime that resulted in the character preview messing up if you were set to a non-human species while having a command level position set to high when enforce human authority is enabled.
  • +
  • Examining a recharger will now tell you the amount of charge the inserted device has.
  • +
  • Pulling someone while they're buckled to a chair will no longer offset them and make them face you.
  • +
  • Buckling someone in while they're being pulled will now properly reset their offsets.
  • +
  • Pulling offsets will now update properly while dragging someone who's laying down.
  • +
+

Tlaltecuhtli updated:

+
    +
  • beepsky smash now summons imaginary beepskys that deal stamina damage instead of outright stunning
  • +
+

py01 updated:

+
    +
  • -Mechs no longer explode on death -Mechs and syndicate combat mechs sleep the pilot for 2s when destroyed, other combat mechs for 4s. -Mechs now have exit times. 1s for basic ripley, 2s for other mechs, 4s for all combat mechs. You cannot punch or use equipment when exiting, and moving cancels.
diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index 1a5a25fe6ff..21578f6d1a1 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -22928,3 +22928,1443 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. the 1911 handgun. tralezab: - tweak: sleeping carp now deflects projectiles +2019-02-13: + Caiggas: + - rscadd: Wooden pews may be constructed from 3 wood for all your religious needs! + GranpaWalton: + - tweak: The tissue hydration water absorption bonus now applies at the correct + threshold + - tweak: The interaction between tissue hydration and holy water has been added + to its description + - tweak: A lavaland syndicate base portable scrubber was replaced with a portable + pump + - bugfix: layer 3 injectors now properly initialize on layer 3 instead of 2 + IndieanaJones: + - rscadd: Space Dragon Mob + - rscadd: Space Dragon Antagonist Event + Joe Berry: + - rscadd: VR Megafauna Arena Map, train against respawning megafauna without the + fear of permanent death, comes randomly chosen in a selection of other vr maps + in the normal vr sleeper + - rscadd: Permanent portals, indestructible portals that are paired up and linked + forever + - rscadd: One way portals, portals that don't have a portal that leads back (mapping + tool) + - rscadd: Recall portals, one way portals with a twist, you can use a spell given + to you to go back to the old portal at any time + - rscadd: Megafauna arena portals, permanent portals that megafauna cannot travel + through + - rscadd: Virtual Megafauna Spawners, spawn holographic megafauna on their person + infinitely + - rscadd: Virtual versions of the megafauna, don't drop loot and are linked to their + spawner + - rscadd: Infinite miner item chests, delete items on them when closed and respawn + the same initial items when opened, used for vr mining equipment restocking + - rscadd: Boss rush mode for virtual megafauna arena, fight your way through all + the megafauna one at a time + - tweak: Makes it easier for new bubblegum types to be created + - bugfix: Ash Drake Corpses no longer have an internal gps signal + - imageadd: Added icons for the megafauna spawners + - code_imp: Removes worthless and copy pasted code from the colossus file, like + having a dead icon state of the ash drake and butcher results + - refactor: Makes it easier for new bubblegum types to be created without having + to edit the initialization each time + - config: Adds VR Megafauna Arena Map to the away missions + Kierany9: + - rscadd: 'Assmilation has received a major update! remove: Kill, Maroon and Protect + objectives have been removed from the mode.' + - tweak: Powers have been reorganized and are now unlocked in batches every five + vessels. This gives hosts more power from the get-go and gives them distinct + phases due to each batch affecting a specific area of the host's ability. + - tweak: The psychic link pinpointer now starts off with very little time for hosts + and must be strengthened by using Network Invasion. Each time a host is detected + via NI, they can be tracked for an extra 30 seconds, and every successful use + of NI increases the duration of all tracking by 10 seconds. A successful use + of a new power, Reclaim, also increases the duration of all tracking by 30 seconds. + - tweak: This means that without generous use of Network Invasion and Reclaim, hivemind + hosts will lose their radar before Security does. + - rscadd: Four new powers have been added! + - rscadd: Reclaim is an early-game ability that instantly kills critically injured + hosts that are adjacent, and reduces all power requirements by five vessels + for each host reclaimed, instantly unlocking your next set of powers. + - rscadd: Psychoreception is an early-game ability that gives you the approximate + distance of anybody currently tracking you and any hosts you've previously detected + via Network Invasion. + - rscadd: Chaos Induction is a mid-game power with a single use that turns four + random vessels into antagonists with a single, customizable objective. + - rscadd: 'Circadian Shift is a late-game power that sends everybody in sight to + sleep for up to almost a minute. The more people affected, the less time it + lasts, the minimum being eight seconds. remove: Mass Assimilation has been removed + as Reclaim now fills its role.' + - tweak: Assimilate Vessel and Release Vessel's cooldown have been reduced to 5 + seconds to reduce waiting time between assimilation attempts. + - tweak: Bruteforce is no longer temporary, but immobilizes the user for five seconds + after assimilation. + - tweak: Hive Sight also lets you hear what the vessel does. + - tweak: The antag limit has been upped from 6 to 9 + - code_imp: A lot of internal changes to how Assimilation works. In summary, Assimilation + now affects the mind instead of the mob, meaning that players will stay assimilated + in a few more scenarios, most notably after death. + - balance: Induce Panic and Distortion Field have been buffed to be more reliable, + especially at lower hive sizes. + - balance: 'Induce Panic and Circadian Shift can affect silicons but no longer affect + hivemind hosts. experimental: A new endgame has been added. The One Mind that + survives this ordeal will show the world the true terror of the word Hivemind.' + PKPenguin321: + - rscadd: Added the Antenna power to genetics. It gives you a built-in radio. + - rscadd: Added the Mind Reader power to genetics. You can read the minds of people + on your screen. This will reveal semi-random bit of their past conversations, + their intent, and their true name. You also get the antenna sprite. Can only + be unlocked by combining Paranoia and Antenna. + - rscadd: Added the Paranoia disability to genetics. You scream randomly, and have + a small chance to suffer from hallucinations now and then. + ShizCalev: + - bugfix: The Random Human-level Intelligence event will no longer create sentient + animal holograms that disappear when they leave the holodeck. + - bugfix: The syndicate cyborg L6 LMG now has a sprite again. + Time-Green: + - rscadd: Adds chromosomes to mutations. You can now alter your mutations in unexpected + ways + Tlaltecuhtli: + - tweak: light replacer is now WEIGHT_CLASS_SMALL, can be fit in a toolbelt and + printed from engilathe + Zxaber: + - tweak: There is now a max character config option for AI Freeform, Core Freeform, + and Asimov upload boards. + imsxz: + - tweak: antags with the pacifist trait no longer lose pacifism. + subject217: + - rscdel: Headslugs have been removed from the gold extract spawn pool. +2019-02-14: + Lett1: + - code_imp: spawn_and_random_walk not returns a list of objects created + MrDoomBringer: + - admin: Added a Drop Pod bay conveniently close to the CentCom ferry, useful for + ERTs or Deathsquads who want to arrive in style! + - admin: The CentCom-Supplypod-Launcher now has an option to clear a bay of any + mobs and objects. + Nervere: + - bugfix: Fixed only mimes being able to scream. Now everyone can express their + existential dread... except for mimes. + ShizCalev: + - bugfix: Fixed incorrect default ethereal color causing a runtime when opening + player preferences. + Vile Beggar, Hulkamania: + - soundadd: Adds the scrungulartiy as a roundend sound effect. +2019-02-17: + 4dplanner: + - bugfix: removed some nanite exploits + - bugfix: Blood-drunk eye is now less likely to cripple its user + BuffEngineering: + - bugfix: Vapes now come out of the mouth + Denton: + - balance: Bluespace beakers now only fit in large grenade casings. Large casings + have to be researched first and can be printed at the Security and Medical protolathes + or techfabs. + - balance: Increased the glass (5000), diamond (1000) and bluespace (1000) resource + cost for bluespace beakers. + - bugfix: Fixed bluespace beakers only containing glass in their materials list. + Kierany9: + - bugfix: Fixed several bugs involving hivemind tracking, team assignation and de-assimilation + not working. + - tweak: Assimilated vessels lose their vessel status when cloned once again. + - tweak: Made several hivemind abilities less janky. + - imageadd: The sprite for members of the One Mind has been updated to be much more + noticeable. + ShizCalev: + - bugfix: The deafness symptom will now correctly make a player permanently deaf + with the appropriate resistance value. + - bugfix: Fixed some DNA console issues causing mutations breaking injector and + disk printing. + - bugfix: Corrected a bad sanity check when removing hivemembers in the assimilation + gamemode. + SouDescolado: + - bugfix: Restricted VR uplinks from buying syndicate cash briefcases. + Time-Green: + - bugfix: You can now print mutators and stuff again from storage if the occupant + doesnt have it +2019-02-20: + Denton: + - admin: Added a cancel button to ahelp and asay popups. + LaKiller8: + - bugfix: Goonchat options should now save properly. + ShizCalev: + - tweak: The emergency internals crate now contains breath masks instead of gas + masks. + - imageadd: Added sprites for emitters so they stop facing weird directions when + their maintenance panel is opened. + - bugfix: Corrected a rogue linebreak in atmos canister warning/logging messages. + - bugfix: Fixed runtime related to the neet quirk when spawning in as a special + role without a bank account. + - bugfix: Corrected a bad area tile in chapel maintenance on box. + - bugfix: Junkies will now spawn with their pills correctly filled with their appropriate + drug. + Tlaltecuhtli: + - bugfix: tesla coil zapping no longer blows up everything and itself + Vile Beggar: + - soundadd: Soviet Golems now play the USSR anthem instead of the Russian Federation + one. + daklaj: + - balance: beam projectiles now pass through riot shields + - balance: shields will break after absorbing too much damage + nemvar: + - balance: Love and pacification potions no longer work on megafauna. + wesoda25: + - balance: disembowelment no longer works on mobs that aren't dead or in critical + condition +2019-02-24: + Denton: + - tweak: Ghosts/observers can now look at photos from far away. + Poojawa: + - bugfix: fixed a bug where husks kept their hair if husked by fire damage or Ling + succ + SouDescolado: + - refactor: Slot Machines can now accept holocredits (Switch mode back and forth + with a multitool. Default is Holocredit.) + Time-Green: + - code_imp: Removes duplicant paraplegic quirk in the code + Tlaltecuhtli: + - tweak: crafting a pneumatic cannon no longer takes an eternity + - bugfix: Other people's clothes burning no longer spam you + Yenwodyah: + - bugfix: Destroying an empty head no longer destroys the organs you pulled out + of it. + actioninja: + - bugfix: The anti-combat mechanism in the Russian Revolver has been revised to + prevent usage while dual wielding. + subject217: + - tweak: Soviet and Capitalist golems no longer appear in opportunities where a + random golem species was selected, primarily golem mutation toxin. + tralezab: + - bugfix: Valentines no longer hold up mulligan! +2019-02-25: + 4dplanner: + - bugfix: the center blast of the hierophant club cross attack no longer deals reduced + damage + MacHac: + - bugfix: Portable atmospherics machinery now releases its air when it explodes. + - bugfix: Bank cards can now talk again. + - rscadd: There's now a client preference to ignore them. + Mickyan: + - tweak: Clowns now get a mood boost from wearing clown shoes, but no longer feel + sad when they are not. + - bugfix: Wearing shoes means on your FEET! + - bugfix: Drunkenness will now correctly reach zero over time + - bugfix: Drunk moodlet now clears properly + MrDoomBringer: + - admin: Admins can now use the Centcom Podlauncher to launch things without the + things looking like they're being sent inside a pod. + MrStonedOne: + - admin: 'Some tweaks to the ban interface:' + - rscadd: Bans apply to computer_ids by default + - rscadd: Bans only apply to IPs by default if its a permaban. + - admin: 'Note: The behavior of the "Use IP and CID from last connection of key" + box has been changed. It now only fills in checked values, where as before it + would error if CID or IP was check.' + Nero1024: + - bugfix: crawling sounds will no longer be played from moving buckled mobs + ShizCalev: + - bugfix: Corrected slime mutation not correctly replacing the word douchebag. + - bugfix: Fixed Elvis speech mutation inserting the word "getting" when saying "muh + valids" + Tlaltecuhtli: + - rscadd: pumps, volume pumps, filters and mixers can be turned on and off by ctrlclick + - rscadd: pumps, volume pumps, filters and mixers can be set to max transfer by + altclick + actioninja: + - bugfix: The RPG can be loaded properly after firing + - spellcheck: The RPG has been renamed to the PML-9 + nemvar: + - bugfix: You can now properly remove welding goggles. +2019-02-26: + BuffEngineering: + - bugfix: Mass driver time is now in sync with normal time + Lett1: + - rscadd: 'Added a new type of bot: the firebot.' + - rscadd: Firebots can be constructed out of extinguisher + borg arm > red fire + helmet > prox sensor + MacHac: + - rscadd: Nanotrasen's Blood Sports division has cracked down on cheating in the + CTF arena. + ShizCalev: + - bugfix: Jaunting mobs will no longer cause mice/ducks/ect to squeek when moving + over them. + Time-Green: + - rscadd: Adds more effects to genetic meltdown + YPOQ: + - bugfix: Defective clones will no longer be permanently mute + anconfuzedrock: + - imageadd: Old shoe object sprites + gy1ta23: + - spellcheck: fixes cheap lighter description +2019-02-27: + WJohn: + - tweak: Very minor tweaks to lavaland syndie base to fix a dark spot left by the + removal of the circuit lab and to dissuade players blowing themselves up with + explosive testing in the test chamber. + YPOQ: + - bugfix: Shield-less syndicate mobs no longer block projectiles +2019-03-02: + Basilman: + - bugfix: Fixes Arnold Pizza having a slight flavor of pineapple + - spellcheck: corrected CQC help instructions + Kamparauta: + - tweak: Nanotrasen has released a software update for pAI's that allows them to + synthesize various musical instruments. + Kierany9: + - bugfix: The hivemind radar works again. + MASMC: + - bugfix: Cult shields now don't shatter on anything but brute and burn damage. + SIX10: + - tweak: swapped nutrition values for sandwich and grilled cheese + ShizCalev: + - bugfix: Fixed beartraps cuffing a flying/floating mob when crossing over it. + - bugfix: Fixed beartraps cuffing and harming a mob who passes over them while inside/on + a vehicle. + - bugfix: Beartraps will now only cuff/harm you while in a vehicle if your legs + are exposed/the primary propulsion method (ie scooters/skateboards.) + - bugfix: Pineapple haters/lovers will get/no longer get pineapple pizzas respectively + from infinite pizza boxes. + - bugfix: Fixed janitors spawning with partially broken jani-holobarrier projectors. + - bugfix: Fixed janitcarts being unable to move through wet floor signs + - bugfix: Fixed 10mm rifle mags and sniper mags not reporting ammo/updating material + values. + TerraGS: + - rscadd: Floorbots can now be crafted with other kinds of toolboxes + - bugfix: Tablecrafting floorbots now requires the intended amount of floor tiles + - bugfix: Fixed a firebot related runtime + Time-Green: + - rscadd: 'Adds snailpeople as a rare genetics accident. sprite: Snailshell sprites + by nickvr628' + - tweak: loot crates can't explode after unlocking anymore + Tlaltecuhtli: + - balance: rebalanced the price of some almost never used traitor items + - balance: the power sink costs 10 tc + - rscadd: the robotics assembly crate now actually has parts for 2 of each friendly + bots + WJohnston: + - bugfix: Hats that partially cover up your hair should no longer leave baldness + lines, most notably seen with the HoP's cap, and should transition more smoothly + in some cases. + tralezab: + - rscadd: 'New negative trait: Unstable!' +2019-03-05: + IndieanaJones: + - bugfix: Fixed space dragon being able to swoop and subsequently becoming invisible + MrDoomBringer: + - bugfix: The centcom podlauncher UI no longer looks like shit + - bugfix: Tooltips will no longer stay around if you hover over them (which would + lead to them blocking shit underneath) + TerraGS: + - code_imp: Cleans up bot construction code + Zxaber: + - tweak: The Mecha Hydraulic Clamp can now open firelocks and unpowered airlocks + actioninja: + - tweak: PubbyStation has been refitted from a Tesla and Singulo based engine to + a Supermatter based engine. +2019-03-07: + Bawhoppen: + - rscadd: Disablers now have a new sprite and now can attach flashlights. + Denton: + - balance: Explosive lances no longer explode when thrown (but still do with melee + attacks). + IndieanaJones: + - bugfix: Fixed the Space Dragon announcement + - admin: Manually-spawned space dragon events can now have their announcement cancelled + Mickyan: + - rscadd: You can now use a razor on help intent to change your fellow crewmembers' + hair/facial hair styles + - rscadd: Using a wig in your hand lets you change it to a new style/color + - rscadd: 'Natural Wigs are now available in the Clothesmate: made of 100% natural + chromatic nanofibers, these wigs automatically match the color of your natural + hair' + MrDoomBringer: + - tweak: You no longer have to hold you ID in your active hand to pull out dosh + - tweak: Cards now tell you more about your account when withdrawing cash + ShizCalev: + - bugfix: Fixed candles not being extinguished by fire extinguishers, water containers, + ect. + - bugfix: Fixed candles not stopping processing when put out. + - bugfix: Adminhealing someone in crit will now properly clear the heartbeat sound. + - bugfix: Cybernetic organs work again, sorry! + TerraGS: + - bugfix: Blood cult halo now goes away when deconverted + Tlaltecuhtli: + - bugfix: rcd works when you hit catwalks/lattice + - bugfix: rcd works when you hit foamed floor + Unit2E: + - tweak: powersinks now become dense when anchored, like a machine. + Zxaber: + - tweak: Ripley now has an open cabin. This means it cannot protect against atmospheric + dangers, and it does not provide the user cover from ranged attacks, but moves + quicker and is slightly cheaper to manufacture. + - rscadd: A conversion kit is available in the exosuit fabricator that gives the + Ripley a pressurized cabin as before, but the added weight will slow it down + again. + actioninja: + - balance: New NT regulations have replaced the standard issue hybrid taser with + a pure disabler. + - balance: Also fuck the stun mode on the advanced energy gun who thought that was + a good idea. + - balance: The hos's laser can only fire three taser shots instead of five. + - balance: Energy crossbows have been reworked. They no longer paralyze, but instead + heavily blur vision, apply a huge burst of stamina damage, and knock you on + your ass for one second. Two shots is enough to down someone from stamina crit + on both the mini and large versions. The blur lasts for 10 seconds. + - balance: The price of the mini ebow has been reduced to 10TC to compensate for + this weaker effect. + - tweak: The ED-209 is now built with a DRAGnet and fires netshot instead of taser + bolts. + - balance: Stunshells can no longer be produced in any lathe. + - balance: The "pacifier" mech taser can no longer be built. + as334: + - rscadd: Fusion got reworked again. Start it using 250+ moles of plasma and carbon + dioxide, with tritium, all at 10000 degrees. + - rscadd: Fusion undergoes a chaotic reaction, and will release energy(or absorb + it with high instabilities), as well as releasing waste gases. + - rscadd: To accommodate fusion, filters have been changed to move gas in the same + way as volume pumps. + - rscadd: As well, hitting a volume pump with a multitool will overclock it, allowing + it to move gases to higher than normal pressures at the cost of leaking some + of the contents. + kriskog: + - bugfix: Non-kitchen fridges and meat lockers have had their access requirements + removed. + pubby: + - bugfix: Cough, beard, and undead virus now work properly + py01: + - tweak: Removed stamina damage from Mech Scattershot, added a little more brute. + tralezab: + - rscadd: 'New event: Fugitives!' + - rscadd: Fugitives will land on the station, and have to prepare for the hunters + looking for them! +2019-03-14: + 4dplanner: + - rscadd: sepia slime extract has a delay before activating + - balance: the user of a sepia slime extract is no longer immune to the time field + - balance: chilling sepia is now the support extract - it always freezes the user, + but not other marked people + - balance: give one to your golem! + - rscadd: burning sepia spawns the rewind camera. Take a selfie with someone and + give it to them to make sure they remember the moment forever! + - balance: you don't actually need to give them the photo, they'll remember anyway. + Keep it as a reminder. + - rscadd: 'rewinding resets your location to the turf you were on after 10 seconds, + and heals simple animals and objects. remove: timefreeze camera is admin spawn + only.' + - rscadd: recurring sepia recalls to the hand of the last person to touch it after + activating. Reusable timestop grenades! + - tweak: some special cameras don't prompt for customisation + - bugfix: timefreeze camera actually makes a photo + - bugfix: timestop stops pathing + - bugfix: timestop stops mechs + - bugfix: adds a check to make sure simple_animals don't get their AI toggled while + sentient + - bugfix: Adds the timestop overlay to frozen projectiles + - bugfix: Timestopped things have INFINITY move_resist as opposed to being anchored + - bugfix: Timestop will now unfreeze things that somehow leave it + - bugfix: mobs in the middle of a walk_to will have their walk stopped by timestop + - bugfix: mobs that are stunned will be stopped mid walk as well + - bugfix: Slimes respect mobility_flags & MOBILITY_MOVE + - bugfix: Slimes no longer automatically regain MOBILITY_MOVE whenever not cold + - bugfix: pulling respects changes in move_force + - bugfix: swapping places respects move_force if the participant is not willing + BuffEngineering: + - bugfix: You may no longer summon plasteel from the door dimension. + - tweak: High security airlocks are now 33% more materially efficient! + - bugfix: Boomers may now sip in peace knowing their cloning based longevity is + not at risk. + Caiggas: + - bugfix: Fixed jump-boots breaking after colliding with things at close range. + Carbonhell: + - server: youtube-dl works again for linux based servers + Ghommie: + - rscadd: Adds two cartons of space milks to the skellies pirate cutter's fridge. + JJRcop: + - admin: Play Internet Sound now respects start (like &t=xxx or &start=xxx) and + end times (like &end=xxx). This allows admins to choose a snippet of media to + play, like for example pick a song out of an hour long album compilation. + Kierany9: + - bugfix: Fixed Hivemind Hosts retaining powers on death and while dead + Menshin: + - bugfix: engineering APCs shouldn't be reset on Grid Check event anymore. + ShizCalev: + - bugfix: Corrected a minor issue where the regenerative core would trigger at -1 + HP instead of at 0HP. + - bugfix: Sentient firebots can now use their fire extinguishers. + - bugfix: Fixed hacked firebots not resetting after being reset.... + - bugfix: Revolvers will no longer immediately click when trying to suicide while + on an empty chamber. + - bugfix: Cult magic inhands now work again... for real this time. + SpaceManiac: + - bugfix: The wizard hardsuit now correctly grants magic resistance. + - bugfix: Cow tipping now properly stuns the cow. + - bugfix: Suiciding with the infernal contract now properly causes the victim to + yell out. + - bugfix: Accessing the notes panel within the first few seconds of connecting no + longer risks broken styling. + TerraGS: + - bugfix: Curing advanced voice change virus symptoms no longer leaves you unable + to speak + Unit2E: + - bugfix: people in fire resistant now get properly hot in fires they shouldn't + resist (temps of 35000K and over) + actioninja: + - bugfix: Fixed a few mapping issues with the Supermatter on Pubbystation + - bugfix: The ID console in the HoP's office on Meta has been rotated to face toward + the HoP when they're at their desk + dvanbale: + - bugfix: Removes dizziness when adminhealing + imsxz: + - balance: epinephrine no longer hard caps oxygen damage at ~30 + - balance: epinephrine now gives the no crit damage trait, which makes creatures + not take passive oxygen(or brute if you cant breathe) damage while in critical + - tweak: epinephrine now heals minor oxygen damage at the same health threshold + that it currently heals other damage types at. + - bugfix: atropine and epinephrine now check if your health is under your mobs crit + threshold instead of using the number 0 before healing + monster860: + - bugfix: fixes advanced proccall + spookydonut: + - rscadd: Adds the ability to give shuttles a cooldown timer + tralezab: + - rscadd: The wizard has many more staves to play with! + - rscadd: Along with the new effects, the chaos bolt has a couple more bolts not + available my normal means +2019-03-15: + 4dplanner: + - bugfix: liver purging is more consistent + - bugfix: chemical recipes are more consistent + - tweak: chemical scans only show to 2 d.p + Dennok: + - bugfix: Turbines work again. + Denton: + - tweak: Clarified Syndicate ghost role flavor text to mention that agents are not + supposed to abandon their bases. + - balance: Rolling a 1 with the d20 of fate prevents you from being revived by any + means. + Lett1: + - bugfix: firebots now shop up on robotics pda's + ShizCalev: + - bugfix: Pacifists can now use wormhole projectors. + SpaceManiac: + - bugfix: pAIs are no longer immune to stamina damage. + - bugfix: Fixed a runtime when an AI core witnesses someone exit a cardboard box. + - bugfix: Fixed a runtime when attempting to blind a True Devil with a flashlight. + - bugfix: The implant chair no longer runtimes when implanting non-implant organs. + cacogen: + - spellcheck: Makes stun baton two words + plapatin: + - tweak: Added a big heap of fancy new clown names! Be slightly less generic! +2019-03-17: + 4dplanner: + - bugfix: Buckle objects can now properly specify lying angle + - bugfix: Wheelchairs and other such vehicles let you use UIs even if your legs + don't work + - bugfix: You can now pull objects while in a wheelchair even if your legs don't + work + - bugfix: You no longer have a chance of sleeping upside down in a bed + - tweak: No longer randomises lying direction a second time on fall + Nervere: + - bugfix: Fixed stunbatons being invisible. + ShizCalev: + - bugfix: Blind people will no longer be able to see pills being slipped into their + drinks........... + - bugfix: Fixed an issue causing slippery oil to be noninteractive. + - bugfix: Motor oil can now catch on fire. Better do your job, janitor! + - bugfix: Cleaned up some crayon and spraycan code for futureproofing. + WJohnston, Antur, and Arcane: + - rscadd: THE GOOSE IS LOOSE +2019-03-18: + 4dplanner: + - tweak: chemical scans actually display to 3 dp, sorry +2019-03-19: + 81Denton: + - bugfix: Curators no longer lose access to the aux base and mining station EVA + during skeleton shifts. + Farquaar: + - rscadd: Added several new religions to the Nanotrasen-approved faith list, including + Judaism, Rastafarianism, and Honkism + MrDoomBringer: + - bugfix: Gondolapods work again + - bugfix: the see-through pod effect for centcom podlaunchers works again + - bugfix: the Stealth effect for centcom podlaunchers works again + - admin: sparks will not generate if the quietLanding effect is on, for the centcom + podlauncher + - admin: makes input text clearer for the centcom podlauncher + ShizCalev: + - tweak: Added DRAGnet's to the armory on Delta & Pubby. + - bugfix: Added logging to cloning machinery. + - bugfix: Fixed a runtime with wabbajack / bolt of change causing the person that + was hit to go invisible and be unable to do anything. + - bugfix: Fixed carbons with no eyes having a flash overlay applied when they're + flashed. + - bugfix: Fixed species with no eyes getting flashed. + Time-Green: + - code_imp: Adds tools to make mutations transfer through cloning + Vile Beggar: + - rscadd: Mechs can now be equipped with disablers. +2019-03-20: + Basilman: + - rscadd: Chaplain's holy whip now deals more damage to vampires. + - bugfix: Fixed adminheal not curing various status effects + - bugfix: Fixed certain alien organs (eyes, tongue, liver) not registering for organ + bounty. + Kmc2000: + - rscadd: Added darkmode! You can opt-in to this by clicking the settings icon on + goonchat, and looking for the toggle darkmode button. + Militaires: + - bugfix: Fixed cursed hearts maintaining red filter even when removed + MrStonedOne: + - rscdel: afk kicker no longer exempts ghosts + - rscadd: afk kicker now exempts people in the lobby join queue + - rscadd: afk kicker now exempts admins + - tweak: afk kicker now includes a link you can use rejoin quickly. + - tweak: '(Note: these all apply to the default disabled idle time kicker, not the + end of round lobby kicker)' + PKPenguin321: + - bugfix: Spasms should no longer cause you to step out of closed chambers, like + cryo or DNA scanners. + Pandolphina: + - bugfix: Miniature energy guns can fit in the holster + ShizCalev: + - tweak: Added DRAGnet crates to cargonia. + - bugfix: Fixed runtime when shooting podpeople with a alpha somatoray + - bugfix: Floorbots can now be constructed with normal toolboxes. + SpaceManiac: + - code_imp: Random docking ports (escape pod Lavaland destinations) print a more + informative warning and delete themselves if Lavaland does not exist. + Time-Green: + - bugfix: Snails can't wear glasses + - bugfix: Snails don't lube the floor when buckled anymore + Tlaltecuhtli: + - tweak: the eva suit crate now will have 1 space suit and 1 jetpack + - tweak: 'the miner starter kit will be the same as the ones miners can buy grammar: + changed the description of the medical refill crate to represent whats inside' + YPOQ: + - bugfix: Fixed a bug that caused limbs to take incorrect damage amounts when damage + exceeded the limb's damage cap + kevinz000: + - admin: Panic bunker block message is now a config. + nichlas0010: + - balance: The malf AI's APC-hacking is now no longer audible to people outside + of the AI's location. +2019-03-21: + Militaires: + - tweak: Snails now utilize glasses offset system + ShizCalev: + - spellcheck: Repairing robotic limbs attached to yourself will no longer refer + to you in the third person. + - bugfix: You'll no longer hit an air alarm with your ID when unlocking it. + - bugfix: Admin modify bodyparts panel will now only show parts that are valid for + modification. + SpironoZeppeli: + - balance: Ethereals no longer die to their own charge levels + Tlaltecuhtli: + - bugfix: the medkits in the beach dome, city of clog and russian shuttle are no + longer empty + actioninja: + - bugfix: admin pms display in the proper colors + - bugfix: some uis are no longer unreadable. + - tweak: Updated the colors of the dark mode ui. + - tweak: darkmode is no longer the default +2019-03-22: + Atlanta Ned: + - rscadd: If you've got Head of Staff access, you can now message Central Command. + Central Command is not responsible for any executions sustained as a result + of mutinous behavior. + Fikou: + - rscadd: added an ezmk pulse rifle to the seraph mech + - rscdel: removed the buckshot gun from the seraph mech + MMMiracles: + - tweak: The engine on Donutstation has been changed to the Supermatter. + MrStonedOne: + - tweak: Exempted byond accounts already in the round from the connected players + cap, allowing them to reconnect even if the server is full. This exemption applies + even if you are dead or are a ghost, but does not apply if you hit "observe" + from the lobby. + ShizCalev: + - bugfix: ED-209 tablecrafting recipe has been corrected to use a DRAGNet + - bugfix: Fixed an exploit allowing you to grab people from anywhere with a clowncar. + - bugfix: Simple mobs can now only damage clown cars from the inside if they're + able to smash through walls. + - imageadd: Mech disablers are no longer invisible. + - admin: Improved some cloning logging. + - bugfix: Emagging a cloning pod will now leave fingerprints. + - bugfix: Ejecting someone while they're being cloned will now leave fingerprints. + SpaceManiac: + - code_imp: Logs for certain kinds of errors will now include better debugging information. + - spellcheck: Renamed the "any color" paint bucket to "adaptive paint". + Tlaltecuhtli: + - balance: ai/borg uploads now have a gps signal when built which will be active + until its monitor gets decostructed + - balance: ai/borg uploads take slighty longer to deconstruct + anconfuzedrock: + - rscadd: New negative quirk - back pain causes very bad mood from wearing uneven + storage items on your back, but other back items like air tanks and shotguns + are okay. + plapatin: + - rscadd: Watch the Tip of the Round messages, there's a few extra ones out there + now, along with outdated ones being revised! +2019-03-23: + Borisvanmemes: + - bugfix: ED 209s now drop DRAGNets and not tasers + MrStonedOne: + - bugfix: Fixed the connection cap being silly about what connections it counted + towards the limit. + SpaceManiac: + - bugfix: Heirloom bodybags no longer lose their heirloom status when deployed. + actioninja: + - bugfix: Goonchat properly loads the white theme by default. + - bugfix: The input bar no longer has weirdness with color when swapping themes. +2019-03-24: + Mickyan: + - balance: Strong alcoholic beverages in excessive quantity are now far more dangerous. + Drink responsibly. +2019-03-25: + ShizCalev: + - tweak: Added a chair to pubby's cloning room. + - bugfix: Fixed a minor runtime caused by admins clicking a follow link while in + the lobby. + actioninja: + - bugfix: Lot of small darkmode fixes +2019-03-27: + 4dplanner: + - bugfix: Humans can no longer use UIs while incapacitated + - bugfix: stabilised sepia slime randomly changes your speed as intended + 81Denton: + - bugfix: Rolling a 17 on the d20 of fate no longer gives you an empty box. + Basilman: + - bugfix: fixed runtime from selectin missing bodypart due to ran_zone + - code_imp: changed how ran_zone selects a zone from a switch to pickweight + Kierany9: + - bugfix: Added a 15 second grace period after death to prevent people from avoiding + a hivemind host's Reclaim by succumbing. + Lett1: + - rscadd: 'Added a new holodeck program: Photobooth' + - rscadd: Comes with three cameras and black and white floors, a dresser and a mirror. + Menshin: + - bugfix: Janitor ERT leader now spawns properly equipped + ShizCalev: + - bugfix: Fixed a runtime that resulted in the character preview messing up if you + were set to a non-human species while having a command level position set to + high when enforce human authority is enabled. + - tweak: Examining a recharger will now tell you the amount of charge the inserted + device has. + - bugfix: Pulling someone while they're buckled to a chair will no longer offset + them and make them face you. + - bugfix: Buckling someone in while they're being pulled will now properly reset + their offsets. + - bugfix: Pulling offsets will now update properly while dragging someone who's + laying down. + Tlaltecuhtli: + - balance: beepsky smash now summons imaginary beepskys that deal stamina damage + instead of outright stunning + py01: + - balance: -Mechs no longer explode on death -Mechs and syndicate combat mechs sleep + the pilot for 2s when destroyed, other combat mechs for 4s. -Mechs now have + exit times. 1s for basic ripley, 2s for other mechs, 4s for all combat mechs. + You cannot punch or use equipment when exiting, and moving cancels. +2019-03-28: + AnturK: + - bugfix: Spraypainting blast doors no longer makes them see-through. + - balance: Paint remover now works on blast doors and the like. + Fox McCloud: + - bugfix: Fixes a very longstanding LINDA bug where turfs adjacent to a hotspot + would be less prone to igniting + PKPenguin321: + - rscadd: Keep your eye out for a rare new arcade game! + - balance: X-Ray vision can no longer be obtained via a random gene sequence at + roundstart. + - balance: X-Ray now has 35 instability, up from 25. + - rscadd: A new gene, thermal vision, has been added to genetics. + - rscadd: You can create X-Ray vision by mixing Thermal Vision and Radioactive together. + ShizCalev: + - bugfix: Corrected cloning logs not showing the clone's key if they ghosted during + processing. + SpaceManiac: + - bugfix: The death icon for the "banned" AI core choice will now show properly. + SuicidalPickles: + - tweak: Medical Winter Coats can now equip Handheld Crew Monitors in their suit + storage slot. + Vile Beggar: + - bugfix: Wearing the CE jumpsuit along with the advanced hardsuit will now fully + protect you from radiation, as intended. + zeroisthebiggay: + - rscadd: Gave the Service Cyborg a Synthesizer! Try not to destroy the Human populace's + weak organic eardrums with it. + - rscdel: Service Cyborgs have lost their Violin to compensate for this. Your bashing + in of heads with the Guitar will remain unimpeded however. +2019-03-29: + 81Denton: + - bugfix: Fixed a bug that prevented strange reagent from reacting with hydroponics + trays. Use with care! + SpaceManiac: + - bugfix: If an admin sends a ghost back to the lobby, they can now choose a different + set of quirks. + - code_imp: The code to handle buckling latejoin players to chairs has been made + more flexible. + Spyro Zeppeli: + - balance: Changes ethereal low charge damage from brute to toxin + Tlaltecuhtli: + - bugfix: fixes exploit with holopets + Zxaber: + - rscadd: AIs can now use CTRL and a number key (1 - 9) to assign a location to + the number key, and then press the key later to jump their camera to that location. + The numpad keys will work as aliases for their respective numbers. + - rscadd: The Tilde key, or zero (or numpad zero), will return you to the last point + you jumped from. +2019-03-30: + FloranOtten: + - rscadd: Added the Pod Shuttle + ShizCalev: + - tweak: Moved mapping related errors to their own log file. + Vile Beggar: + - bugfix: You no longer have to take off your clown/mime mask to shower properly. +2019-04-01: + AutomaticFrenzy: + - bugfix: soap now displays the correct message when examined + ShizCalev: + - bugfix: Revamped Donutstation's engineering and supermatter rooms to fix a number + of issues that prevented proper functionality, and resolved numerous aesthetic + complaints. + - bugfix: Fixed Jones actions on a couple away mission fridges. + - bugfix: Mass drivers will no longer launch ghosts & camera mobs (AI cameras, xenobio + cameras, ect) + SpaceManiac: + - bugfix: Blood brothers succeeding at some objective no longer bolds the entire + rest of the round-end report. + Tlaltecuhtli: + - spellcheck: fixes spelling error in void magent + - tweak: cryo cell starts with auto eject true + Vile Beggar: + - bugfix: Toxins launch site telescreens now work properly again. + - bugfix: Polymorphed drones no longer have normal drone flavortext. + Zxaber: + - bugfix: Firefighter construction text is no longer off by a step. +2019-04-02: + Barhandar: + - rscadd: Plasteel golems have been buffed and will now stay on the ground instead + of floating without gravity (like magboots). They're also cannot be swapped + positions with even on help intent. + SpaceManiac: + - bugfix: Fixed the latest set of roundstart active turfs. + WJohnston: + - imageadd: New .357 revolver sprites. + bobbahbrown: + - bugfix: Return of the photocopied ass + - bugfix: Photocopiers now properly have a delay before photocopying an ass. + - bugfix: Corrected an error that stopped photos of crew members being printed at + the security records consoles. + pireamaineach: + - bugfix: Makes the .45 magazine actually update per round rather than just showing + full or empty. +2019-04-03: + Basilman: + - bugfix: Added a cooldown for datum outputs + Kierany9: + - bugfix: Fixed the assimilation radar bug for real this time. + - bugfix: Possibly fixed mindshield implants sometimes not working against vessels. + MrDoomBringer: + - tweak: Supplypod Beacons from the Express Supply Console now cost 500 credits, + down from 5000. + Nervere: + - bugfix: Default color for when custom asay colors is not enabled is now orange, + not red. + - bugfix: Asay is now properly bolded in lightmode. + - bugfix: Asay is now properly bolded in darkmode. + - tweak: Default color for when custom asay colors is enabled is now orange, not + black. + - admin: removed a duplicate/broken secrets panel button + - admin: you can now click the text that says "Antagonist" on an antagonist's entry + in the global player panel to check all antags, as intended + ShizCalev: + - bugfix: Paraplegics can now climb into mechs. + - bugfix: Locker bolts will no longer move mobs that aren't valid for lockering. + - bugfix: Paraplegics/mobs missing legs can no longer operate vehicles which require + legs to operate (ie bicycles, skateboards, ATVs, ect) if they lost the limbs + while still buckled in. + - tweak: Mobs with no arms will now fall off bikes & scooters when trying to move. + - tweak: Badmins can now edit limb requirements of vehicles. + Tlaltecuhtli: + - balance: large ebows do 20 damage instead of 40 + - rscadd: russian surplus crate, sec ammo crate, meat/veggie/fruit crate, rped crate, bomb + suit crate, bio suit crate, parrot crate, chem crate + - tweak: lowered price of some crates which are overpriced for no reason aka the + ipod crate and the mech circuits crate, track implant crate has also track .38 + ammo + - bugfix: sectech vendor has the refill pack + Zxaber: + - balance: Deflecting shots while inside a MK-I Ripley (or inside anything else, + for that matter) will cause the shots to deflect back into the container. + - balance: Firing at a MK-I Ripley while aiming for the head or chest will still + hit the pilot, but aiming for the arms or legs will now intentionally hit the + mech. + - tweak: Being incapacitated in an open-canopy mech will now lead to you falling + out. + actioninja: + - balance: EZ-CLEAN grenades now deal 1.5x the damage. + - soundadd: Replaced Title2.ogg with a much higher quality version. + bobbahbrown: + - bugfix: Wands, staves, and other magic guns no longer allow bypassing den and + anti-magic checks when being fired offhand. + - spellcheck: Removed unlawful reference to Disney's Star Wars franchise in map + logging. +2019-04-04: + actioninja: + - rscadd: Disarm has been reworked, instead of an rng based system instead it pushes + people away from you. If their movement is blocked it knocks them over. Shoving + someone twice quickly will knock ranged weapons out of their hands. + - rscdel: Moving into humans while in a hostile intent no longer pushes them. + - tweak: Passive grabs need to be resisted out of while on the ground, and can't + be directly crawled out of +2019-04-06: + FloranOtten: + - tweak: Changes the wooden doors on the Meta Maint Bar with wooden airlocks. Sounds + are the same. + RaveRadbury: + - tweak: Bike horns and baguettes can now be equipped to belt and back slots! + ShizCalev: + - tweak: Enabled tactical reloads for most ballistic weapons. + bobbahbrown: + - rscadd: Monkeys now apply knockdown when tackling instead of stunning, and can + stun you by tackling you whilst you are knocked down. +2019-04-24: + Kierany9: + - balance: The hivemind radar's no longer has a minimum range, but has an increased + ping time. + - balance: How power use affects the hivemind radar has been tweaked as to ensure + that going loud early is punished more. + Mickyan: + - rscadd: 'New quirk: Empath. Gain a better insight on the state of people around + you by examining them.' + - rscadd: 'New quirk: Friendly. Your hugs are just the best. Keep yourself in a + good mood to give the bestest hugs!' + MrDroppodBringer and Time-Green: + - rscadd: Adds the lipid extractor to the service protolathe arsenal + TetraK1: + - bugfix: AI integrity restorer no longer drops a free AI core on deconstruction/destruction. + Tlaltecuhtli: + - balance: rubbershot does 66 stamina + 18 damage instead of 150 stamina + 18 damage + - balance: beanbang does 55 stamina + 5 damge instead of 80 + 5 damage + Wilchenx: + - rscadd: The modular pc vendor + - rscdel: minor entities on meta/pubby/box/delta to make room for said vendor + actioninja: + - bugfix: Fixed an exploit where incompatible magazine could be tactical reloaded + into guns, and then still fire. + bgobandit: + - tweak: Examining intercoms/radios shows the frequency they're set to, if you're + in range. +2019-04-25: + RaveRadbury: + - rscadd: pAI's now have the same headset tech as AI. Add and remove keys just like + you would with headsets. + - tweak: Service Halls now allow all Service dept. jobs. +2019-04-27: + 81Denton: + - bugfix: 'Pubbystation: Fixed the incinerator''s waste to space injector starting + powered off.' + - bugfix: 'Metastation: You can now pass parts of the AI sat transit tube again.' + DaxDupont: + - bugfix: Clowns now spawn with the proper health + Mideanon: + - bugfix: Adminordrazine now gives blood back + MrFluffster: + - tweak: tweaked the pubby incinerator + RaveRadbury: + - bugfix: The radio configuration menu for masters of pAI will now toggle properly. + - bugfix: pAI HUD appears as it should. + RaveRadbury, Art by Navi.OS: + - rscadd: pAI Newscaster + - rscadd: pAI Camera + - rscadd: New pAI HUD + - imageadd: unique pAI HUD theme + TheDreamweaver: + - bugfix: Hilbert's Hotel can no longer be brought inside of itself. + Zxaber: + - tweak: Certain small items purchased through cargo now get grouped into a single + box. + - rscadd: Added single-order options for several existing products in the Cargo + Catalog. + - rscadd: Added ALPU MK-I Ripley kit to the cargo catalog, under Engineering. + - balance: 'Cargo Ripley bounty now requires a MK-II. remove: Removed the Ripley + and Odysseus listings in the cargo catalog that were only the control boards + and nothing more.' + - tweak: Ammo and Medkit listings are now single-pack items, and considered small + items that get grouped into single boxes. Price per unit for ammo is unchanged, + and for medkits is as close to unchanged as is reasonable. + actioninja: + - spellcheck: Changed the description on ling augmented eyes to be more accurate + to their actual functionality + nemvar: + - balance: Heavily nerfs russian surplus gear. + tralezab: + - rscadd: zombies can eat brains now +2019-04-30: + 81Denton: + - bugfix: Dead AIs no longer get stuck in place and become movable again. + Carshalash: + - rscadd: Replaces Pressurized Slime to spray lube instead of water + PKPenguin321: + - balance: Humans now have a punch damage range of 1-10, up from 0-9 + - balance: The chance to miss a punch now increases the more stamina and brute damage + you have + - balance: The stun duration for a critical punch now scales with how much stamina/brute + damage the victim has + - balance: Punches now deal full stamina damage + half damage in brute (effectively + 1.5x damage on all punches, not accounting for stamina regeneration) + - balance: Kicking (punching a prone person) does full brute damage, never misses, + and does 1.5x damage + - balance: Grabs are now harder to break out of the more stamina/brute damage you + have + - balance: Failing to resist out of a grab will deal a bit of stamina damage to + you + - balance: In all instances above where both stamina and brute damage are considered, + brute is weighed 1/2 as heavily as stamina (meaning stamina has more of an effect + than brute when it comes to punch-stun duration, miss chance, etc) + Skoglol: + - bugfix: Offstation AI can no longer interact with other z-levels. Again. + - balance: Robotics control console can now only blow/lockdown borgs and drones + on current z-level. + - bugfix: Falsewalls now properly hide pipes and wires. + - bugfix: Ninja dash now works in dark areas if you can see in the dark. + - bugfix: Blob factories can no longer create more than one blobbernaut at a time. + SpaceManiac: + - code_imp: Removed a workaround for a compiler bug that has since been fixed. + - tweak: The "draggable" cursor is now shown when folding a closed bodybag. + - tweak: Failing to fold a bodybag because it is open or full now tells you why. + nemvar: + - bugfix: Fixes bathsalts and beepsky smash transfering their respective brain traumas + after cloning. +2019-05-04: + 81Denton: + - bugfix: 'Donutstation: The Atmospherics incinerator airlocks now cycle properly.' + - admin: Admins who want to cancel round end delay now have to confirm a popup first. + Coconutwarrior97: + - rscdel: Removed grandpa from the first name list. + Lett1: + - rscadd: 'New trauma: Expressive Aphasia only. Restricts your speech to the 1000 + most common english words.' + MMMiracles: + - tweak: Various minor tweaks to Donutstation. + Skoglol: + - bugfix: Credits can now only be withdrawn in integer amounts. + - bugfix: Mining bags will no longer drop ore into backpack. + - bugfix: Mining bags in backpack no longer interferes with other mining bags. + - bugfix: .357 casings now always drops on floor when speedloaded. + - bugfix: Fixes some storage size circumventions. + Tlaltecuhtli: + - rscadd: ghetto grinder made out of wood and plasteel + Wilchenx: + - bugfix: Deluxe Silicate Selections vendor now has circuitboards + - bugfix: fixes a typo + - tweak: Added pAI cards to the vendor + YPOQ: + - bugfix: Borgs in wheelchairs can no longer go super fast + Zxaber: + - tweak: Failing the "which clothes are shower-safe" guessing minigame no longer + punishes with a mood debuff (though you still won't get clean until you get + it right). + as334: + - rscadd: New Gas Reaction, Stimulum Energy Balls. Combine 100 degree Pluoxium, + Stimulum and small amounts of Plasma and Nitryl to shoot off a deadly radioactive + energy ball. + - rscadd: The reaction will consume the plasma, pluoxium and stimulum and release + small amounts of heat. The presence of water vapor will change the direction + in which it shoots. See if you can figure out how to aim it. + - tweak: Nitryl now forms at 22,000 degrees, a significantly lower temperature. + - rscdel: Removed some old left-behind fusion test canisters. + nemvar: + - bugfix: A missing liver will now hurt you again. + zeroisthebiggay: + - rscadd: Gives Janiborgs the long lost bucket for their mop. + - rscadd: Gives Janiborgs a paint remover. + - rscadd: Gives Janiborgs a flyswatter to destroy angry bees and moths with. +2019-05-06: + Fikou: + - rscadd: Diagnostic HUD eyes, now printable at your local Medical Lathe/Exosuit + Fabricator! + PKPenguin321: + - bugfix: Mindswapping with a stand instead mindswaps you with that stand's owner, + giving you ownership of their stand. + Zxaber: + - bugfix: Cargo manifests no longer list the purchaser as "/datum/bank_account" + under certain circumstances +2019-05-07: + 4dplanner: + - bugfix: summon item cannot mark station loving items + Floyd / Qustinnus, Sprites by MrDoomBringer: + - rscadd: 'New traitor item: The suspicious phone. This device lets you launch a + device that drains the funds of all crewmembers to your bank account, the only + way for them to stop this is by rushing to the conventionaly launched spacecoin + market where the crew can sell their Spacecoin.' + JoeyJo0: + - rscadd: Radsuit lockers in atmos + - tweak: Pipe dispensers are now moved to maintenance locations + Naksu: + - bugfix: Transferring quirks now properly removes the roundstart trait from the + person losing the quirk. + - bugfix: Roundstart traits no longer block the removal of other sources of that + trait + - code_imp: Trait accessors are now defines rather than functions + RaveRadbury: + - bugfix: pAI mouse hotkeys are restored + - rscdel: Removed hull integrity system from economy.dm Should reduce periodic lag. + Skoglol: + - rscadd: Shocks now propagate to people you are pulling or pulled by. + - code_imp: Grounded nerves now uses the shock immune trait. + YPOQ: + - bugfix: Fixed sand, glass, and bronze golems being unaffected by projectiles they + should have been affected by. + blessedmulligan: + - rscadd: Garlic! Heals chefs and makes everyone else stinky. Keeps vampires away. + - rscadd: Garlic Bread. Made with a bread slice, butter, and garlic. + - tweak: Khinkalis now require garlic to make, and are slightly more filling. + pigeonsk: + - tweak: Air contents inside a tank react additionally once instead of thrice when + exploding + zxaber: + - rscadd: A couple of dead bodies are now in the morgue. The souls are long gone, + so no one will care if you "borrowed" a part or two. +2019-05-08: + 4dplanner: + - bugfix: transform spell transfers damage correctly instead of healing most of + the time + - bugfix: 0% simplemob health maps to 0 carbon health, 100% simplemob to 100% carbon + - bugfix: transforming to a form with brute resistance no longer heals you + - bugfix: transforming back to a species with brute resistance no longer heals you + JJRcop and Kmc2000 (sprites): + - rscadd: Replaced Sleepers with Lifeform Stasis Units. These place patients in + stasis, a new status effect that halts biological functions indefinitely. It + also prevents corpse decay. + RaveRadbury: + - tweak: all medbay jobs have access to viro during skeleton shifts + - tweak: chemist, doctor, and virologist share increased mutual access + - bugfix: The Tenets of Servicia are properly available through "servicianism" and + "partying" religions + ShizCalev: + - bugfix: switching to the SS13 camera network will no longer send you to the VR + area. +2019-05-09: + 4dplanner: + - bugfix: Blood drunk eye gives damage slowdown immunity rather than vulnerability. + Skoglol: + - bugfix: Secondary shocks should no longer some times ignore insulated gloves. + nemvar: + - tweak: Activating a grenade no longer puts you in throwmode. + - tweak: You always throw active grenades now. + zeroisthebiggay: + - tweak: Lets nukeops buy chest rigs. +2019-05-10: + JoeyJo0: + - rscadd: N2O Decomposition reaction + - tweak: N2O is no longer the perfect "safety gas". N2O Decomposes starting from + 1400K, feeding more oxygen into the engine. + Mickyan: + - tweak: the contents on the smartfridge icon now change depending on how many items + it contains + - bugfix: opening the maintenance panel of smartfridges now correctly updates the + icon + Naksu: + - bugfix: fixed a mutation runtime + - bugfix: Abductors can use their own console again. + Okand37: + - rscadd: Nanotrasen Shipyards have released a set of Kilo-pattern shuttles including + a new Kilo Emergency Shuttle, purchasable for 5000 credits! + - rscadd: Syndicate Skunkworks have ushered in a new model of the infiltrator-pattern + shuttle designed for operative insertion and extraction. Rumours report the + new shuttle to be an up-armoured version of the original design that Nanotrasen + Intelligence workers have taken to calling the "tortoise." + - admin: New shuttles are accessible from the shuttle loader! + YoYoBatty: + - bugfix: Fixed hostile mob's not properly breaking directional windows and doors. + nemvar: + - tweak: Only the first generation of spiders can change directives for their offsprings. + - admin: Spider directives are now logged. + py01: + - bugfix: 'CQC and Sleeping Carp are properly logged. Change: CQC can passively + grab targets when not on grab intent. Passive grabs do not count towards combos + for CQC or Sleeping carp.' +2019-05-11: + Farquaar: + - rscadd: Added a number of Nanotrasen-approved religious clothing items to the + chaplain vendor, autodrobe and clothesmate. + - imageadd: sprites and icons for several new clothing items, including some in-hand + sprites. + Garen7: + - bugfix: You can only cook donk pockets once now + JStheguy: + - tweak: Humans have more natural-looking skin coloration. + RaveRadbury: + - bugfix: Chem has viro access during skeleton shifts + - bugfix: Doctor, Chemist and Viro lost mutual expanded access. + YoYoBatty: + - rscadd: Tachyon-doppler arrays now have explosion logging. + actioninja: + - tweak: Goofbegone was applied to roundstart messages to reduce spam a little. +2019-05-12: + 4dplanner: + - bugfix: spiritual moodlet description has a newline + Kierany9: + - balance: Medullary Failure now has a maximum range + Naksu: + - tweak: LateInitialize no longer waits for sleepers, moved some book/bookcase initialization + sql over there. + RaveRadbury: + - tweak: Follower hoodies are in the crafting menu! + Tetr4: + - tweak: Remote signallers now use input boxes instead of inc/dec buttons. + - bugfix: Remote signaller freq range no longer clamps to the wrong range. + Tlaltecuhtli: + - rscadd: hitting a bottle or a soda can with a bullet will make them break + actioninja: + - soundadd: PDA beep, grenade arm, and flesh impact sounds have been fixed + - soundadd: When you get a quick rundown, your ears bleed less. +2019-05-13: + Farquaar: + - bugfix: Caught the wizard who was turning the rastacap shipments invisible. + Lett1: + - rscadd: Adds a new mutation to the orange + Mickyan: + - code_imp: Mood quirks are now only processed by the quirk holders + - bugfix: Disk toasters no longer turn invisible after inserting a disk + Naksu: + - rscdel: Removed VR + - refactor: Refactored blob code + - tweak: vending machines now use spritesheets + Skoglol: + - bugfix: Borgs using the wrong tools during a repeatable surgery step will no longer + have to restart surgery. + - bugfix: Starting and stopping the closing step during repeatable surgery will + no longer advance you to the closing step. + Ty-the-Smonk: + - bugfix: You can now interact with self sustaining crossbreeds +2019-05-14: + Flatgub: + - rscadd: Added RCL wiring menu + - bugfix: RCL change cable colour button now applies changes immediately + Krysonism: + - rscadd: 8 new alcoholic drinks. + - rscadd: 2 new nonalcoholic drinks. + - rscadd: Packs of a novel artificial sweetener have been added to the kitchen vendor. + - rscadd: Bottles of trappist beer are now available at a premium price in the booze-o-mat. + - rscadd: Juicing parsnips now yields parsnip juice. add; Maintenance peaches. + - rscdel: Removed champagne from the booze dispenser. + - balance: Now everyone has to pay 200 credits if they want champagne from the booze-o-mat. + - bugfix: Grape soda now cools you down like other sodas. + - imageadd: Added new drink, bottle, vomit and peach can sprites. + MrFluffster: + - rscadd: An extra tile to the Box chapel's width + - rscdel: One barely noticeable tile of width from escape(one escape brig chair + dead [*] ) + RaveRadbury: + - refactor: mood_event timeouts are now in MINUTES and SECONDS + Skoglol: + - bugfix: You no longer get shocked by shock touching someone you are pulling. + WJohnston: + - rscadd: New boxstation mining shuttle! It paves the way for little pod-like shuttles + needing to return home where they can charge, though this needs to be expanded + to other shuttles as well. + anconfuzedrock: + - rscadd: Cargo can now order a ridiculously large canister containing only saline + to give medbay a more than plentiful supply of the stuff. +2019-05-17: + 4dplanner: + - bugfix: health hud will no longer show full health at 0 hp + - bugfix: glass golems properly redirect projectiles + - bugfix: glass golem reflected projectiles can damage the original firer + ExcessiveUseOfCobblestone: + - balance: borgs can now unbuckle people from stasis beds + Garen7: + - bugfix: fixes lings being able to infinitely use their strained muscles + Naksu: + - balance: The crabphone will no longer deafen everyone who didn't have the foreknowledge + that it was coming. + - balance: The crabphone has 80% less HP, as befits something that costs 7 TC and + is not two bubblegums stacked on top of eachother. + - balance: Nuclear operative TC now comes pre-distributed, the telecrystal assignment + stations have been removed. + - bugfix: mindshield nanites no longer give mindshields to revheads and one mind + awoken hiveminds. + - bugfix: Fixed several issues with venus human traps and their vines going through + walls + - code_imp: Made atmos update_visuals() proc a bit faster + jegub: + - bugfix: Lets the grass grow under your feet. + nemvar: + - bugfix: Explosive holoparasite bombs now explode if you bump into them, instead + of the other way around. + pireamaineach: + - rscadd: Added a 3rd atmos tech locker and rad locker to the incinerators on Meta + and Box, and an atmos tech locker to the incinerator on Pubby since it already + had a rad-suit. + - rscdel: Reverts https://github.com/tgstation/tgstation/pull/43557 + - tweak: Makes the doors to the incinerator on meta require atmos access. + - bugfix: Axes some hairstyles that didn't make the final cut but never got fully + removed, removes an unused sprite. + - bugfix: Also fixes the cornrows because they were bRoek + zeroisthebiggay: + - tweak: Gives Sentient Diseases a medical hud to observe their victims further + with. +2019-05-19: + CrazyClown12: + - tweak: The chloral hydrate inside of the sleepy pen is no longer slower acting + than chloral hydrate made in chemistry. + - tweak: The chloral hydrate inside of cookies synthesised by emagged borgs is no + longer slower acting than chloral hydrate made in chemistry. + - rscdel: Delayed chloral hydrate + Erwgd: + - rscadd: Swapped out an epinephrine bottle for potassium iodide in NanoMed Plus + vending machines. + Naksu: + - bugfix: Items using atom colors for coloring now show up properly colored in vending + machines, rather than snow-white + Partheo: + - imageadd: Scrubbers have updated design and animation + Rave Radbury, Art by Navi.OS: + - rscadd: pAI's have a bunch of HUD stuff now + - rscadd: pAI's now have an AI style PDA + - rscadd: pAI cameras can now download a zoom feature! Bigger and smaller pictures! + - tweak: Split the pAI medhud module into seperate medhud and health analyzer modules + - tweak: Journalism modules now have RAM costs + - balance: RAM prices have changed on a number of modules + - imageadd: added more pAI HUD icons + Zxaber: + - balance: AI power backup is now separate from the health, and is tied to their + core. Carding an AI on battery backup will leave the core at partial charge. + AIs no longer slowly lose integrity while on backups (but will instantly die + as before once the backup runs out). As such, whacking an AI with a wrench will + no longer magically lower their backup battery capacity. + - balance: AIs on backup battery can now unbolt at the cost of a quarter of their + battery's max charge. This cannot be done while at under 25% power. + imsxz: + - balance: cakehat has been nerfed + - tweak: cakehat sounds cooler +2019-05-22: + Incoming5643: + - rscadd: After a very long period of being broken, the training bomb in security + finally works properly again. + - tweak: Syndicate bomb cores have become a little more robust in their operation. + Defused but still cored bombs are no longer inert and can be set again. Would + be heroes are advised to cut out and dispose of bomb cores, and dismantle unneeded + bomb shells to be absolutely sure. + MrFluffster: + - rscadd: CLOTH foodtype + Naksu: + - rscadd: Added a new blob strain that grows inside the station and eats garbage + - code_imp: Several fixes for stuff harddeling + - bugfix: Cryotubes no longer display a double of a person that was once in but + teleported out by having ingested bluespace or other such nonsense + - code_imp: pda.detonatable and uplink component checks removed in favor of a signal + in detomatix cart handling + - balance: nukeop uplinks now have 5 unlimited discounts and 10 limited discounts + shared between the team, rather than 3 individual discounts like traitor uplinks + - bugfix: corpses no longer feel, light-headed or otherwise + - code_imp: removed /datum/mutation/human/proc/on_move in favor of having the chameleon + mutation register for a signal + RaveRadbury: + - tweak: '"Religiously Comforted" from Spiritual Quirk occurs on examine and lasts + for 5 minutes' + kriskog: + - bugfix: Added a bunch of previously missing adjacency checks to ui window actions + and alt clicks. + loserXD: + - tweak: Hangar Bay Shutters need only general CentCom access to open now + nemvar: + - bugfix: Podcloning now lets you keep your quirks. + vuonojenmustaturska: + - rscdel: Removed the ability of fat people to vore monkeys, and the ability of + aliens to vore humans. + - code_imp: Removed stubbed out would-be functionality related to stomach contents + - rscadd: Nuclear Operative reinforcements now get uplinks with 0 TC and a real + name. +2019-05-23: + 4dplanner: + - bugfix: between the sheets heals carbons + - tweak: colossus chest is intangible to colossus bolts + Naksu: + - code_imp: removed some unnecessary wrappers in Life() code. + - code_imp: get_area() is now a define rather than a proc. + TheSilverNuke: + - rscadd: edaggers have a special suicide! + nemvar: + - bugfix: You can now reuse chemical grenade casings if they fail to react. + ninjanomnom: + - rscadd: Some rpg affixes now have special effects + weeweesoda: + - balance: The CRAB protocol traitor item now has a maximum stock of 1 each round +2019-05-27: + 4dplanner: + - rscadd: The deja vu effect (previously only used by rewind camera) now resets + all your limbs and damage to the point it was added after 10 seconds (as well + as the original position reset) + - rscadd: The deja vu effect cannot resurrect the dead, but will heal their corpse + - rscadd: New limbs fall off, old ones re-attach + - rscadd: Regenerative sepia cores add a deja vu effect before healing instead of + a timestop + - rscadd: The rewind camera rewinds 2 times to distinguish it from the regenerative + core + - bugfix: colossus and drake can no longer attack from the afterlife + - bugfix: timestop is properly defeated by antimagic. + - bugfix: timestop only checks antimagic once + Akrilla: + - rscadd: Traitors now recognize codewords automatically in spoken conversation. + Phrases in blue, responses in red. + - tweak: Changed traitor greet text slightly. + ExcessiveUseOfVending: + - tweak: Wardrobe Vendors will now accept clothing types they sell. Now you can + clean up after getting that cool alternate uniform! + - code_imp: 'see PR #43964 on how to easily setup a vending machine to accept items!' + Farquaar: + - bugfix: The monk's frock has been sanctified and will no longer reveal your naked + body when the hood is pulled up. + Fire Chance: + - bugfix: Fixed the drink sprites overlapping when you are mixing beer with other + drinks. + Garen7: + - tweak: Lesser form lings can now toggle augmented vision + - bugfix: You can no longer turn back into human form as a lesser form ling while + ventcrawling + - bugfix: Stuns and Reagents are now passed when transforming into a monkey or human + Irafas: + - bugfix: Connected the incinerator/janitor's/botany backroom/service rooms to the + scrubber network + JJRcop: + - rscadd: You can now build a new PDA messaging server if you lose it. + - tweak: Requests console messages no longer work if the messaging server is offline. + Emergency alerts will still function in that case as long as the rest of telecomms + is online. + Naksu: + - code_imp: pipeline gas reconciliation is now faster + OnlineGirlfriend: + - rscadd: Lemonade + - tweak: Arnold Palmer recipe + - imageadd: lemonade sprite + Putnam3145: + - tweak: All departments can now print basic power cells from their respective techfab. + RaveRadbury: + - rscadd: Quirks have flavor text in medical records + - rscadd: All quirks have medical record entries + - spellcheck: All quirk medical records refer to "Patient", removing a few instances + of "Subject" + Tlaltecuhtli: + - bugfix: fixes message spam from riding a vehicle without enough legs/arms + XDTM: + - rscadd: Added a new device, the nanite communication remote, which can be used + to send custom messages to message-based nanite programs. + - rscadd: 'Comm remotes use separate Comm Codes: for a message to be received, the + signal''s comm code must be the same as the program''s.' + actioninja: + - bugfix: Shuttle sounds should no longer ass blast your ears as they no longer + play PER DOOR and instead from the nearest engine, or door if none are available. + - soundadd: Distant shuttle sounds. + bgobandit: + - admin: TP now shows the names of blood brothers' brothers. + hey there uwu: + - bugfix: You can no longer choose the zombie race from the magic mirror, as intended. + nemvar: + - rscadd: Colored lights now shine in different colours. + - rscadd: Mops can now be printed at the autolathe and protolathe. + tralezab: + - rscadd: Gravitokinetic stands are now available! diff --git a/html/changelogs/AutoChangeLog-pr-42151.yml b/html/changelogs/AutoChangeLog-pr-42151.yml deleted file mode 100644 index 845c12a0e58..00000000000 --- a/html/changelogs/AutoChangeLog-pr-42151.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Time-Green" -delete-after: True -changes: - - rscadd: "Adds chromosomes to mutations. You can now alter your mutations in unexpected ways" diff --git a/html/changelogs/AutoChangeLog-pr-42353.yml b/html/changelogs/AutoChangeLog-pr-42353.yml deleted file mode 100644 index 24b91f5c07e..00000000000 --- a/html/changelogs/AutoChangeLog-pr-42353.yml +++ /dev/null @@ -1,18 +0,0 @@ -author: "Joe Berry" -delete-after: True -changes: - - rscadd: "VR Megafauna Arena Map, train against respawning megafauna without the fear of permanent death, comes randomly chosen in a selection of other vr maps in the normal vr sleeper" - - rscadd: "Permanent portals, indestructible portals that are paired up and linked forever" - - rscadd: "One way portals, portals that don't have a portal that leads back (mapping tool)" - - rscadd: "Recall portals, one way portals with a twist, you can use a spell given to you to go back to the old portal at any time" - - rscadd: "Megafauna arena portals, permanent portals that megafauna cannot travel through" - - rscadd: "Virtual Megafauna Spawners, spawn holographic megafauna on their person infinitely" - - rscadd: "Virtual versions of the megafauna, don't drop loot and are linked to their spawner" - - rscadd: "Infinite miner item chests, delete items on them when closed and respawn the same initial items when opened, used for vr mining equipment restocking" - - rscadd: "Boss rush mode for virtual megafauna arena, fight your way through all the megafauna one at a time" - - tweak: "Makes it easier for new bubblegum types to be created" - - bugfix: "Ash Drake Corpses no longer have an internal gps signal" - - imageadd: "Added icons for the megafauna spawners" - - code_imp: "Removes worthless and copy pasted code from the colossus file, like having a dead icon state of the ash drake and butcher results" - - refactor: "Makes it easier for new bubblegum types to be created without having to edit the initialization each time" - - config: "Adds VR Megafauna Arena Map to the away missions" diff --git a/html/changelogs/AutoChangeLog-pr-42443.yml b/html/changelogs/AutoChangeLog-pr-42443.yml deleted file mode 100644 index fcf666b583c..00000000000 --- a/html/changelogs/AutoChangeLog-pr-42443.yml +++ /dev/null @@ -1,6 +0,0 @@ -author: "PKPenguin321" -delete-after: True -changes: - - rscadd: "Added the Antenna power to genetics. It gives you a built-in radio." - - rscadd: "Added the Mind Reader power to genetics. You can read the minds of people on your screen. This will reveal semi-random bit of their past conversations, their intent, and their true name. You also get the antenna sprite. Can only be unlocked by combining Paranoia and Antenna." - - rscadd: "Added the Paranoia disability to genetics. You scream randomly, and have a small chance to suffer from hallucinations now and then." diff --git a/html/changelogs/AutoChangeLog-pr-42551.yml b/html/changelogs/AutoChangeLog-pr-42551.yml deleted file mode 100644 index b45efd10653..00000000000 --- a/html/changelogs/AutoChangeLog-pr-42551.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "IndieanaJones" -delete-after: True -changes: - - rscadd: "Space Dragon Mob" - - rscadd: "Space Dragon Antagonist Event" diff --git a/html/changelogs/AutoChangeLog-pr-42700.yml b/html/changelogs/AutoChangeLog-pr-42700.yml deleted file mode 100644 index fd55be71c05..00000000000 --- a/html/changelogs/AutoChangeLog-pr-42700.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Zxaber" -delete-after: True -changes: - - tweak: "There is now a max character config option for AI Freeform, Core Freeform, and Asimov upload boards." diff --git a/html/changelogs/AutoChangeLog-pr-42712.yml b/html/changelogs/AutoChangeLog-pr-42712.yml deleted file mode 100644 index 7fea020f95f..00000000000 --- a/html/changelogs/AutoChangeLog-pr-42712.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Caiggas" -delete-after: True -changes: - - rscadd: "Wooden pews may be constructed from 3 wood for all your religious needs!" diff --git a/html/changelogs/AutoChangeLog-pr-42731.yml b/html/changelogs/AutoChangeLog-pr-42731.yml deleted file mode 100644 index ed1f7e4c179..00000000000 --- a/html/changelogs/AutoChangeLog-pr-42731.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "subject217" -delete-after: True -changes: - - rscdel: "Headslugs have been removed from the gold extract spawn pool." diff --git a/html/changelogs/AutoChangeLog-pr-44075.yml b/html/changelogs/AutoChangeLog-pr-44075.yml new file mode 100644 index 00000000000..33ea36877a6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44075.yml @@ -0,0 +1,4 @@ +author: "Yenwodyah" +delete-after: True +changes: + - tweak: "Non-antags can now forge all agent IDs if they find them before they've been forged." diff --git a/html/changelogs/AutoChangeLog-pr-44112.yml b/html/changelogs/AutoChangeLog-pr-44112.yml new file mode 100644 index 00000000000..143c853eee7 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44112.yml @@ -0,0 +1,5 @@ +author: "Naksu" +delete-after: True +changes: + - code_imp: "/client/mousemove has been removed." + - balance: "the aiming beam of a beam rifle is only shown with the mouse button held down" diff --git a/html/changelogs/AutoChangeLog-pr-44118.yml b/html/changelogs/AutoChangeLog-pr-44118.yml new file mode 100644 index 00000000000..a1cf9a897b4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44118.yml @@ -0,0 +1,4 @@ +author: "py01" +delete-after: True +changes: + - balance: "Medulary Failure takes 3 seconds to cast now." diff --git a/html/changelogs/AutoChangeLog-pr-44120.yml b/html/changelogs/AutoChangeLog-pr-44120.yml new file mode 100644 index 00000000000..2a0bd410f30 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44120.yml @@ -0,0 +1,4 @@ +author: "nemvar" +delete-after: True +changes: + - balance: "Pneumatic cannons are now bulky." diff --git a/html/changelogs/AutoChangeLog-pr-44125.yml b/html/changelogs/AutoChangeLog-pr-44125.yml new file mode 100644 index 00000000000..78646ef42e6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44125.yml @@ -0,0 +1,5 @@ +author: "Ty-the-Smonk" +delete-after: True +changes: + - rscadd: "Descriptions for every crossbreed's effect (minus recurring because its self explanatory)." + - bugfix: "Changes a single comment in _corecross to reflect how many extracts are needed to crossbreed." diff --git a/html/changelogs/AutoChangeLog-pr-44127.yml b/html/changelogs/AutoChangeLog-pr-44127.yml new file mode 100644 index 00000000000..28207aa1692 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44127.yml @@ -0,0 +1,5 @@ +author: "Barhandar" +delete-after: True +changes: + - bugfix: "Box's solar panels are no longer missing catwalks from the middle of arrays." + - rscadd: "Box's engineering and laundromat now have showers." diff --git a/html/changelogs/AutoChangeLog-pr-44139.yml b/html/changelogs/AutoChangeLog-pr-44139.yml new file mode 100644 index 00000000000..3d01ee235c5 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44139.yml @@ -0,0 +1,4 @@ +author: "Akrilla" +delete-after: True +changes: + - tweak: "Fedoras/taqiyahs fit pocket sized items. Fedoras can also store the tommy gun and katana." diff --git a/html/changelogs/AutoChangeLog-pr-44149.yml b/html/changelogs/AutoChangeLog-pr-44149.yml new file mode 100644 index 00000000000..77a089a532a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44149.yml @@ -0,0 +1,4 @@ +author: "py01" +delete-after: True +changes: + - tweak: "Some hivemind abilities have new icons." diff --git a/html/changelogs/AutoChangeLog-pr-44154.yml b/html/changelogs/AutoChangeLog-pr-44154.yml new file mode 100644 index 00000000000..9994fa1003a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44154.yml @@ -0,0 +1,4 @@ +author: "bgobandit" +delete-after: True +changes: + - tweak: "Nanotrasen has cracked the code of the Syndicate storage implant. Removing the implant will also drop any items contained within, doing minor damage to the person implanted." diff --git a/html/changelogs/AutoChangeLog-pr-44158.yml b/html/changelogs/AutoChangeLog-pr-44158.yml new file mode 100644 index 00000000000..1aad243635a --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44158.yml @@ -0,0 +1,4 @@ +author: "bgobandit" +delete-after: True +changes: + - bugfix: "Cards Against Spess works again. Find decks at your local library." diff --git a/html/changelogs/AutoChangeLog-pr-44161.yml b/html/changelogs/AutoChangeLog-pr-44161.yml new file mode 100644 index 00000000000..c08c05bf7c6 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44161.yml @@ -0,0 +1,4 @@ +author: "Rockdtben" +delete-after: True +changes: + - bugfix: "Med Record, Sec Record, and Detective Scanner printed papers use paper_words icon state" diff --git a/html/changelogs/AutoChangeLog-pr-44162.yml b/html/changelogs/AutoChangeLog-pr-44162.yml new file mode 100644 index 00000000000..0a29806f9e4 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-44162.yml @@ -0,0 +1,5 @@ +author: "Rockdtben" +delete-after: True +changes: + - rscadd: "Forensic Scanner documents are numbered now." + - tweak: "Forensic Scanner document titles modified" diff --git a/icons/effects/blood.dmi b/icons/effects/blood.dmi index 8fadd31dbe3..3b59694b029 100644 Binary files a/icons/effects/blood.dmi and b/icons/effects/blood.dmi differ diff --git a/icons/effects/hivemind.dmi b/icons/effects/hivemind.dmi new file mode 100644 index 00000000000..c78dc0f6453 Binary files /dev/null and b/icons/effects/hivemind.dmi differ diff --git a/icons/effects/mapping_helpers.dmi b/icons/effects/mapping_helpers.dmi index 821338058ce..f8fbc2ee300 100644 Binary files a/icons/effects/mapping_helpers.dmi and b/icons/effects/mapping_helpers.dmi differ diff --git a/icons/effects/progessbar.dmi b/icons/effects/progessbar.dmi index 99284060aa6..f055a07ba14 100644 Binary files a/icons/effects/progessbar.dmi and b/icons/effects/progessbar.dmi differ diff --git a/icons/emoji.dmi b/icons/emoji.dmi index 87219eab843..7467561bafc 100644 Binary files a/icons/emoji.dmi and b/icons/emoji.dmi differ diff --git a/icons/mecha/mech_construction.dmi b/icons/mecha/mech_construction.dmi index 55060c7367d..d7f0f3e0548 100644 Binary files a/icons/mecha/mech_construction.dmi and b/icons/mecha/mech_construction.dmi differ diff --git a/icons/mecha/mecha.dmi b/icons/mecha/mecha.dmi index 4b09f791c3d..291abf969d1 100644 Binary files a/icons/mecha/mecha.dmi and b/icons/mecha/mecha.dmi differ diff --git a/icons/mecha/mecha_equipment.dmi b/icons/mecha/mecha_equipment.dmi index d66bd20af7e..029fe06342d 100644 Binary files a/icons/mecha/mecha_equipment.dmi and b/icons/mecha/mecha_equipment.dmi differ diff --git a/icons/member_content.dmi b/icons/member_content.dmi index bb597646276..77443711198 100644 Binary files a/icons/member_content.dmi and b/icons/member_content.dmi differ diff --git a/icons/mob/actions/actions_animal.dmi b/icons/mob/actions/actions_animal.dmi index aefa471dd23..e8f2d4ada83 100644 Binary files a/icons/mob/actions/actions_animal.dmi and b/icons/mob/actions/actions_animal.dmi differ diff --git a/icons/mob/actions/actions_hive.dmi b/icons/mob/actions/actions_hive.dmi index 163cb7e5fcf..233cf39d4d8 100644 Binary files a/icons/mob/actions/actions_hive.dmi and b/icons/mob/actions/actions_hive.dmi differ diff --git a/icons/mob/actions/actions_items.dmi b/icons/mob/actions/actions_items.dmi index ca380a5376e..39e2ea05841 100644 Binary files a/icons/mob/actions/actions_items.dmi and b/icons/mob/actions/actions_items.dmi differ diff --git a/icons/mob/ai.dmi b/icons/mob/ai.dmi index e8010197faf..91494cae01e 100644 Binary files a/icons/mob/ai.dmi and b/icons/mob/ai.dmi differ diff --git a/icons/mob/aibots.dmi b/icons/mob/aibots.dmi index 913a0dff02e..844791a02a7 100644 Binary files a/icons/mob/aibots.dmi and b/icons/mob/aibots.dmi differ diff --git a/icons/mob/animal.dmi b/icons/mob/animal.dmi index ef6cc585ca4..f7de4b6197e 100644 Binary files a/icons/mob/animal.dmi and b/icons/mob/animal.dmi differ diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index b856f495a09..c213a7f6505 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ diff --git a/icons/mob/belt.dmi b/icons/mob/belt.dmi index dc2edecd5ce..c10d3e197b6 100644 Binary files a/icons/mob/belt.dmi and b/icons/mob/belt.dmi differ diff --git a/icons/mob/cameramob.dmi b/icons/mob/cameramob.dmi index 18640c7136a..7ecaf0f6d96 100644 Binary files a/icons/mob/cameramob.dmi and b/icons/mob/cameramob.dmi differ diff --git a/icons/mob/clown_mobs.dmi b/icons/mob/clown_mobs.dmi new file mode 100644 index 00000000000..626fd67140a Binary files /dev/null and b/icons/mob/clown_mobs.dmi differ diff --git a/icons/mob/eyes.dmi b/icons/mob/eyes.dmi index e5e9c86af4f..e5b1e7d1579 100644 Binary files a/icons/mob/eyes.dmi and b/icons/mob/eyes.dmi differ diff --git a/icons/mob/feet.dmi b/icons/mob/feet.dmi index e7598f35c90..db12bc0cd5c 100644 Binary files a/icons/mob/feet.dmi and b/icons/mob/feet.dmi differ diff --git a/icons/mob/hair_extensions.dmi b/icons/mob/hair_extensions.dmi index 6344b678843..af63e3b331c 100644 Binary files a/icons/mob/hair_extensions.dmi and b/icons/mob/hair_extensions.dmi differ diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index 964e1699b7e..5319ff14fa2 100644 Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ diff --git a/icons/mob/hud.dmi b/icons/mob/hud.dmi index 6024d3056a7..e0226e1b3a2 100644 Binary files a/icons/mob/hud.dmi and b/icons/mob/hud.dmi differ diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index 2837db625c0..0fab5cea28c 100644 Binary files a/icons/mob/human_face.dmi and b/icons/mob/human_face.dmi differ diff --git a/icons/mob/human_parts_greyscale.dmi b/icons/mob/human_parts_greyscale.dmi index e1df504ebdf..50c143b9cb9 100644 Binary files a/icons/mob/human_parts_greyscale.dmi and b/icons/mob/human_parts_greyscale.dmi differ diff --git a/icons/mob/inhands/clothing_lefthand.dmi b/icons/mob/inhands/clothing_lefthand.dmi index 2b39acd3d88..6a232eb93e7 100644 Binary files a/icons/mob/inhands/clothing_lefthand.dmi and b/icons/mob/inhands/clothing_lefthand.dmi differ diff --git a/icons/mob/inhands/clothing_righthand.dmi b/icons/mob/inhands/clothing_righthand.dmi index ef6c9b3f062..09b791d4dad 100644 Binary files a/icons/mob/inhands/clothing_righthand.dmi and b/icons/mob/inhands/clothing_righthand.dmi differ diff --git a/icons/mob/inhands/equipment/toolbox_lefthand.dmi b/icons/mob/inhands/equipment/toolbox_lefthand.dmi index b2fa42ce5ef..39094263756 100644 Binary files a/icons/mob/inhands/equipment/toolbox_lefthand.dmi and b/icons/mob/inhands/equipment/toolbox_lefthand.dmi differ diff --git a/icons/mob/inhands/equipment/toolbox_righthand.dmi b/icons/mob/inhands/equipment/toolbox_righthand.dmi index ccb15982dd2..533f0a591cc 100644 Binary files a/icons/mob/inhands/equipment/toolbox_righthand.dmi and b/icons/mob/inhands/equipment/toolbox_righthand.dmi differ diff --git a/icons/mob/inhands/weapons/guns_lefthand.dmi b/icons/mob/inhands/weapons/guns_lefthand.dmi index bfff565c0e9..e64c068ef54 100644 Binary files a/icons/mob/inhands/weapons/guns_lefthand.dmi and b/icons/mob/inhands/weapons/guns_lefthand.dmi differ diff --git a/icons/mob/inhands/weapons/guns_righthand.dmi b/icons/mob/inhands/weapons/guns_righthand.dmi index 6255b1411b4..5d279cda178 100644 Binary files a/icons/mob/inhands/weapons/guns_righthand.dmi and b/icons/mob/inhands/weapons/guns_righthand.dmi differ diff --git a/icons/mob/mask.dmi b/icons/mob/mask.dmi index fd44f07663e..98189fbfa95 100644 Binary files a/icons/mob/mask.dmi and b/icons/mob/mask.dmi differ diff --git a/icons/mob/neck.dmi b/icons/mob/neck.dmi index b91c29e03fb..53699dcfeeb 100644 Binary files a/icons/mob/neck.dmi and b/icons/mob/neck.dmi differ diff --git a/icons/mob/radial.dmi b/icons/mob/radial.dmi index b2dd0cad786..cfdd0e549a0 100644 Binary files a/icons/mob/radial.dmi and b/icons/mob/radial.dmi differ diff --git a/icons/mob/screen_alert.dmi b/icons/mob/screen_alert.dmi old mode 100644 new mode 100755 index da2aaa4d3e2..9550d879aa9 Binary files a/icons/mob/screen_alert.dmi and b/icons/mob/screen_alert.dmi differ diff --git a/icons/mob/screen_pai.dmi b/icons/mob/screen_pai.dmi new file mode 100644 index 00000000000..4868d26cc08 Binary files /dev/null and b/icons/mob/screen_pai.dmi differ diff --git a/icons/mob/simple_human.dmi b/icons/mob/simple_human.dmi index 621715b0ee4..881936d0a9e 100644 Binary files a/icons/mob/simple_human.dmi and b/icons/mob/simple_human.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 8e69ab80e7f..2ce331f41f2 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/mob/uniform.dmi b/icons/mob/uniform.dmi index f640ed51eb0..e6f95bd643d 100644 Binary files a/icons/mob/uniform.dmi and b/icons/mob/uniform.dmi differ diff --git a/icons/obj/atmospherics/components/unary_devices.dmi b/icons/obj/atmospherics/components/unary_devices.dmi index c888f25c055..2875e958c96 100644 Binary files a/icons/obj/atmospherics/components/unary_devices.dmi and b/icons/obj/atmospherics/components/unary_devices.dmi differ diff --git a/icons/obj/atmospherics/pipes/pipe_item.dmi b/icons/obj/atmospherics/pipes/pipe_item.dmi index 6eed3fad0ac..8489294ae58 100644 Binary files a/icons/obj/atmospherics/pipes/pipe_item.dmi and b/icons/obj/atmospherics/pipes/pipe_item.dmi differ diff --git a/icons/obj/chemical.dmi b/icons/obj/chemical.dmi index 2453b7d66d7..6f52f119bad 100644 Binary files a/icons/obj/chemical.dmi and b/icons/obj/chemical.dmi differ diff --git a/icons/obj/clothing/glasses.dmi b/icons/obj/clothing/glasses.dmi index e8b0ba35d15..2a1a51f1673 100644 Binary files a/icons/obj/clothing/glasses.dmi and b/icons/obj/clothing/glasses.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index 51ba3541fe7..86718f2e02f 100644 Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ diff --git a/icons/obj/clothing/masks.dmi b/icons/obj/clothing/masks.dmi index d18f9f2b982..6b233c9b53c 100644 Binary files a/icons/obj/clothing/masks.dmi and b/icons/obj/clothing/masks.dmi differ diff --git a/icons/obj/clothing/neck.dmi b/icons/obj/clothing/neck.dmi index 0f3668ce102..15f6f05b7d6 100644 Binary files a/icons/obj/clothing/neck.dmi and b/icons/obj/clothing/neck.dmi differ diff --git a/icons/obj/clothing/shoes.dmi b/icons/obj/clothing/shoes.dmi index 3383c779b48..556d18cf28f 100644 Binary files a/icons/obj/clothing/shoes.dmi and b/icons/obj/clothing/shoes.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 0465ef0aa63..69de7f8be9f 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/clothing/uniforms.dmi b/icons/obj/clothing/uniforms.dmi index e5d2a740530..e9298bd2fba 100644 Binary files a/icons/obj/clothing/uniforms.dmi and b/icons/obj/clothing/uniforms.dmi differ diff --git a/icons/obj/decals.dmi b/icons/obj/decals.dmi index 3d382d25b3d..d0887e2ca4f 100644 Binary files a/icons/obj/decals.dmi and b/icons/obj/decals.dmi differ diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 74110bc2d11..71fceba8b4d 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ diff --git a/icons/obj/dice.dmi b/icons/obj/dice.dmi index 1d6601aa310..5980471d035 100644 Binary files a/icons/obj/dice.dmi and b/icons/obj/dice.dmi differ diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi index cc4bb7bcb1f..984cac44712 100644 Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ diff --git a/icons/obj/food/burgerbread.dmi b/icons/obj/food/burgerbread.dmi index 19daa7b15a3..d776bb4520a 100644 Binary files a/icons/obj/food/burgerbread.dmi and b/icons/obj/food/burgerbread.dmi differ diff --git a/icons/obj/food/containers.dmi b/icons/obj/food/containers.dmi index c348fb4f8f0..ad3073a1401 100644 Binary files a/icons/obj/food/containers.dmi and b/icons/obj/food/containers.dmi differ diff --git a/icons/obj/food/food.dmi b/icons/obj/food/food.dmi index a5a88fc6ff8..78051d9c4b9 100644 Binary files a/icons/obj/food/food.dmi and b/icons/obj/food/food.dmi differ diff --git a/icons/obj/grenade.dmi b/icons/obj/grenade.dmi index d6dd4c1b000..b3cb9dd2e95 100644 Binary files a/icons/obj/grenade.dmi and b/icons/obj/grenade.dmi differ diff --git a/icons/obj/guns/energy.dmi b/icons/obj/guns/energy.dmi index 6b9a623b7db..00ecc3ebdd6 100644 Binary files a/icons/obj/guns/energy.dmi and b/icons/obj/guns/energy.dmi differ diff --git a/icons/obj/guns/magic.dmi b/icons/obj/guns/magic.dmi index 47d05e3470f..bbdbeeef9d2 100644 Binary files a/icons/obj/guns/magic.dmi and b/icons/obj/guns/magic.dmi differ diff --git a/icons/obj/guns/projectile.dmi b/icons/obj/guns/projectile.dmi index e2083d8d8f9..321789fe81c 100644 Binary files a/icons/obj/guns/projectile.dmi and b/icons/obj/guns/projectile.dmi differ diff --git a/icons/obj/hydroponics/growing_vegetables.dmi b/icons/obj/hydroponics/growing_vegetables.dmi index 9fc1520175e..c13ce2d5210 100644 Binary files a/icons/obj/hydroponics/growing_vegetables.dmi and b/icons/obj/hydroponics/growing_vegetables.dmi differ diff --git a/icons/obj/hydroponics/harvest.dmi b/icons/obj/hydroponics/harvest.dmi index 680b2b2de04..3278cf3e640 100644 Binary files a/icons/obj/hydroponics/harvest.dmi and b/icons/obj/hydroponics/harvest.dmi differ diff --git a/icons/obj/hydroponics/seeds.dmi b/icons/obj/hydroponics/seeds.dmi index 9859bd7a4d4..56139b8e298 100644 Binary files a/icons/obj/hydroponics/seeds.dmi and b/icons/obj/hydroponics/seeds.dmi differ diff --git a/icons/obj/items_and_weapons.dmi b/icons/obj/items_and_weapons.dmi index cb2ba60ce7b..616b32becc8 100644 Binary files a/icons/obj/items_and_weapons.dmi and b/icons/obj/items_and_weapons.dmi differ diff --git a/icons/obj/iv_drip.dmi b/icons/obj/iv_drip.dmi index 016513245e1..115b9cded74 100644 Binary files a/icons/obj/iv_drip.dmi and b/icons/obj/iv_drip.dmi differ diff --git a/icons/obj/machines/fat_sucker.dmi b/icons/obj/machines/fat_sucker.dmi new file mode 100644 index 00000000000..ad8b0d13cdc Binary files /dev/null and b/icons/obj/machines/fat_sucker.dmi differ diff --git a/icons/obj/machines/research.dmi b/icons/obj/machines/research.dmi index b756c77e20f..f352b12d14c 100644 Binary files a/icons/obj/machines/research.dmi and b/icons/obj/machines/research.dmi differ diff --git a/icons/obj/machines/stasis.dmi b/icons/obj/machines/stasis.dmi new file mode 100755 index 00000000000..d63d8e24d3f Binary files /dev/null and b/icons/obj/machines/stasis.dmi differ diff --git a/icons/obj/machines/telecomms.dmi b/icons/obj/machines/telecomms.dmi index 4a6988f88e4..93bb9c477aa 100644 Binary files a/icons/obj/machines/telecomms.dmi and b/icons/obj/machines/telecomms.dmi differ diff --git a/icons/obj/machines/teleporter.dmi b/icons/obj/machines/teleporter.dmi index 1d3c97199b5..0d7a3066f12 100644 Binary files a/icons/obj/machines/teleporter.dmi and b/icons/obj/machines/teleporter.dmi differ diff --git a/icons/obj/money_machine.dmi b/icons/obj/money_machine.dmi new file mode 100644 index 00000000000..3e7fde761f5 Binary files /dev/null and b/icons/obj/money_machine.dmi differ diff --git a/icons/obj/money_machine_64.dmi b/icons/obj/money_machine_64.dmi new file mode 100644 index 00000000000..7bad748f2ea Binary files /dev/null and b/icons/obj/money_machine_64.dmi differ diff --git a/icons/obj/projectiles.dmi b/icons/obj/projectiles.dmi index f1ad7ed9e3a..37e791eb427 100644 Binary files a/icons/obj/projectiles.dmi and b/icons/obj/projectiles.dmi differ diff --git a/icons/obj/radio.dmi b/icons/obj/radio.dmi index 64642b8a6c5..6072e372b04 100644 Binary files a/icons/obj/radio.dmi and b/icons/obj/radio.dmi differ diff --git a/icons/obj/singularity.dmi b/icons/obj/singularity.dmi index b5f7a109d11..3cc086b9396 100644 Binary files a/icons/obj/singularity.dmi and b/icons/obj/singularity.dmi differ diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi index 94d2ea4fda4..917e645beba 100644 Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ diff --git a/icons/obj/surgery.dmi b/icons/obj/surgery.dmi index bece386d3de..702475c321b 100755 Binary files a/icons/obj/surgery.dmi and b/icons/obj/surgery.dmi differ diff --git a/icons/obj/syringe.dmi b/icons/obj/syringe.dmi index f77735fc3ee..bf656de9ff2 100644 Binary files a/icons/obj/syringe.dmi and b/icons/obj/syringe.dmi differ diff --git a/icons/obj/vending.dmi b/icons/obj/vending.dmi index 737e5d79d92..79c58b40db0 100644 Binary files a/icons/obj/vending.dmi and b/icons/obj/vending.dmi differ diff --git a/icons/obj/vending_restock.dmi b/icons/obj/vending_restock.dmi index a59fdd0f520..c9512aa9246 100644 Binary files a/icons/obj/vending_restock.dmi and b/icons/obj/vending_restock.dmi differ diff --git a/icons/turf/floors.dmi b/icons/turf/floors.dmi index 43311862e5c..a55a773b69c 100644 Binary files a/icons/turf/floors.dmi and b/icons/turf/floors.dmi differ diff --git a/interface/interface.dm b/interface/interface.dm index e49d4d64b4e..79efd7a2ea2 100644 --- a/interface/interface.dm +++ b/interface/interface.dm @@ -67,7 +67,7 @@ return var/static/issue_template = file2text(".github/ISSUE_TEMPLATE.md") var/servername = CONFIG_GET(string/servername) - var/url_params = "Reporting client version: [byond_version]\n\n[issue_template]" + var/url_params = "Reporting client version: [byond_version].[byond_build]\n\n[issue_template]" if(GLOB.round_id || servername) url_params = "Issue reported from [GLOB.round_id ? " Round ID: [GLOB.round_id][servername ? " ([servername])" : ""]" : servername]\n\n[url_params]" DIRECT_OUTPUT(src, link("[githuburl]/issues/new?body=[url_encode(url_params)]")) diff --git a/interface/menu.dm b/interface/menu.dm index eca97d669d2..547c2edfc1d 100644 --- a/interface/menu.dm +++ b/interface/menu.dm @@ -65,10 +65,10 @@ GLOBAL_LIST_EMPTY(menulist) /datum/verbs/menu/Icon/Load_checked(client/C) //So we can be lazy, we invoke the "checked" menu item on menu load. - var/atom/verb/verbpath = Get_checked(C) + var/procpath/verbpath = Get_checked(C) if (!verbpath || !(verbpath in typesof("[type]/verb"))) return - + if (copytext(verbpath.name,1,2) == "@") winset(C, null, list2params(list("command" = copytext(verbpath.name,2)))) else diff --git a/interface/skin.dmf b/interface/skin.dmf index af55fc8f0da..56662d91ec0 100644 --- a/interface/skin.dmf +++ b/interface/skin.dmf @@ -2,21 +2,21 @@ macro "default" menu "menu" - elem + elem name = "&File" command = "" saved-params = "is-checked" - elem + elem name = "&Quick screenshot\tF2" command = ".screenshot auto" category = "&File" saved-params = "is-checked" - elem + elem name = "&Save screenshot as...\tShift+F2" command = ".screenshot" category = "&File" saved-params = "is-checked" - elem + elem name = "" command = "" category = "&File" @@ -26,21 +26,21 @@ menu "menu" command = ".reconnect" category = "&File" saved-params = "is-checked" - elem + elem name = "&Quit\tAlt-F4" command = ".quit" category = "&File" saved-params = "is-checked" - elem + elem name = "&Help" command = "" saved-params = "is-checked" - elem + elem name = "&Admin Help\tF1" command = "adminhelp" category = "&Help" saved-params = "is-checked" - elem + elem name = "&Hotkeys" command = "hotkeys-help" category = "&Help" @@ -255,7 +255,7 @@ window "preferences_window" elem "preferences_window" type = MAIN pos = 372,0 - size = 1120x1000 + size = 1280x1000 anchor1 = none anchor2 = none background-color = none @@ -264,17 +264,17 @@ window "preferences_window" statusbar = false elem "preferences_browser" type = BROWSER - pos = -8,-8 - size = 896x1008 + pos = 0,0 + size = 960x1000 anchor1 = 0,0 - anchor2 = 90,100 + anchor2 = 75,100 background-color = none saved-params = "" elem "character_preview_map" type = MAP - pos = 887,0 - size = 313x1000 - anchor1 = 90,0 + pos = 960,0 + size = 320x1000 + anchor1 = 75,0 anchor2 = 100,100 right-click = true saved-params = "zoom;letterbox;zoom-mode" diff --git a/interface/stylesheet.dm b/interface/stylesheet.dm index 010f2c8a6c4..01231650583 100644 --- a/interface/stylesheet.dm +++ b/interface/stylesheet.dm @@ -136,6 +136,7 @@ h1.alert, h2.alert {color: #000000;} .alertalien {color: #00c000; font-weight: bold;} .changeling {color: #800080; font-style: italic;} .assimilator {color: #800080; font-size: 2 ; font-weight: bold;} +.bigassimilator {color: #800080; font-size: 4 ; font-weight: bold;} .spider {color: #4d004d;} diff --git a/sound/ambience/acidrain_end.ogg b/sound/ambience/acidrain_end.ogg index 75fb4aaf8dd..d02299c6c0d 100644 Binary files a/sound/ambience/acidrain_end.ogg and b/sound/ambience/acidrain_end.ogg differ diff --git a/sound/ambience/acidrain_mid.ogg b/sound/ambience/acidrain_mid.ogg index 03d4812355b..13dd3a59cb8 100644 Binary files a/sound/ambience/acidrain_mid.ogg and b/sound/ambience/acidrain_mid.ogg differ diff --git a/sound/ambience/acidrain_start.ogg b/sound/ambience/acidrain_start.ogg index 48f365d9df9..27e47372944 100644 Binary files a/sound/ambience/acidrain_start.ogg and b/sound/ambience/acidrain_start.ogg differ diff --git a/sound/ambience/aurora_caelus.ogg b/sound/ambience/aurora_caelus.ogg index 0c741678d50..ca97269a127 100644 Binary files a/sound/ambience/aurora_caelus.ogg and b/sound/ambience/aurora_caelus.ogg differ diff --git a/sound/ambience/title2.ogg b/sound/ambience/title2.ogg index 94e78f83c19..ae36089a567 100644 Binary files a/sound/ambience/title2.ogg and b/sound/ambience/title2.ogg differ diff --git a/sound/ambience/title3.ogg b/sound/ambience/title3.ogg index cd1e4835a5c..96a651d291e 100644 Binary files a/sound/ambience/title3.ogg and b/sound/ambience/title3.ogg differ diff --git a/sound/creatures/bee.ogg b/sound/creatures/bee.ogg index cd2779f8347..d690f1f771a 100644 Binary files a/sound/creatures/bee.ogg and b/sound/creatures/bee.ogg differ diff --git a/sound/creatures/goose1.ogg b/sound/creatures/goose1.ogg new file mode 100644 index 00000000000..f1817bc3023 Binary files /dev/null and b/sound/creatures/goose1.ogg differ diff --git a/sound/creatures/goose2.ogg b/sound/creatures/goose2.ogg new file mode 100644 index 00000000000..aaf0a040a69 Binary files /dev/null and b/sound/creatures/goose2.ogg differ diff --git a/sound/creatures/goose3.ogg b/sound/creatures/goose3.ogg new file mode 100644 index 00000000000..d98aa4df16d Binary files /dev/null and b/sound/creatures/goose3.ogg differ diff --git a/sound/creatures/goose4.ogg b/sound/creatures/goose4.ogg new file mode 100644 index 00000000000..97db2e0e56a Binary files /dev/null and b/sound/creatures/goose4.ogg differ diff --git a/sound/creatures/gorilla.ogg b/sound/creatures/gorilla.ogg index cde0bc1edc6..67c08bace5a 100644 Binary files a/sound/creatures/gorilla.ogg and b/sound/creatures/gorilla.ogg differ diff --git a/sound/creatures/rattle.ogg b/sound/creatures/rattle.ogg index 7115aada0b6..7c0cf1104bb 100644 Binary files a/sound/creatures/rattle.ogg and b/sound/creatures/rattle.ogg differ diff --git a/sound/effects/bamf.ogg b/sound/effects/bamf.ogg index 541153672ab..7ad6e0e7e73 100644 Binary files a/sound/effects/bamf.ogg and b/sound/effects/bamf.ogg differ diff --git a/sound/effects/bang.ogg b/sound/effects/bang.ogg index 87c535e4861..656983f0980 100644 Binary files a/sound/effects/bang.ogg and b/sound/effects/bang.ogg differ diff --git a/sound/effects/beepskyspinsabre.ogg b/sound/effects/beepskyspinsabre.ogg index 87be7dae798..56aaa3c1bb1 100644 Binary files a/sound/effects/beepskyspinsabre.ogg and b/sound/effects/beepskyspinsabre.ogg differ diff --git a/sound/effects/bin_close.ogg b/sound/effects/bin_close.ogg index aef7b0cd886..a50c7db5b6b 100644 Binary files a/sound/effects/bin_close.ogg and b/sound/effects/bin_close.ogg differ diff --git a/sound/effects/bin_open.ogg b/sound/effects/bin_open.ogg index dc0749741b5..2f351aa1874 100644 Binary files a/sound/effects/bin_open.ogg and b/sound/effects/bin_open.ogg differ diff --git a/sound/effects/blobattack.ogg b/sound/effects/blobattack.ogg index eec2ee571f0..c9fcfbee448 100644 Binary files a/sound/effects/blobattack.ogg and b/sound/effects/blobattack.ogg differ diff --git a/sound/effects/bodyfall1.ogg b/sound/effects/bodyfall1.ogg index cf217a8e077..6a8eecefeec 100644 Binary files a/sound/effects/bodyfall1.ogg and b/sound/effects/bodyfall1.ogg differ diff --git a/sound/effects/bodyfall2.ogg b/sound/effects/bodyfall2.ogg index 49f6cdd39ad..b41bd746c53 100644 Binary files a/sound/effects/bodyfall2.ogg and b/sound/effects/bodyfall2.ogg differ diff --git a/sound/effects/bodyfall3.ogg b/sound/effects/bodyfall3.ogg index 5a3817510d7..ef2d5ca7006 100644 Binary files a/sound/effects/bodyfall3.ogg and b/sound/effects/bodyfall3.ogg differ diff --git a/sound/effects/bodyfall4.ogg b/sound/effects/bodyfall4.ogg index e6a1661c931..8951e75b40b 100644 Binary files a/sound/effects/bodyfall4.ogg and b/sound/effects/bodyfall4.ogg differ diff --git a/sound/effects/break_stone.ogg b/sound/effects/break_stone.ogg index 711fd50d482..64256cb8f90 100644 Binary files a/sound/effects/break_stone.ogg and b/sound/effects/break_stone.ogg differ diff --git a/sound/effects/bubbles.ogg b/sound/effects/bubbles.ogg index 39af85cf080..c028e8aa982 100644 Binary files a/sound/effects/bubbles.ogg and b/sound/effects/bubbles.ogg differ diff --git a/sound/effects/bubbles2.ogg b/sound/effects/bubbles2.ogg index 6cd52f0f43e..42cb0c021b4 100644 Binary files a/sound/effects/bubbles2.ogg and b/sound/effects/bubbles2.ogg differ diff --git a/sound/effects/can_open1.ogg b/sound/effects/can_open1.ogg index 4b38ab77038..5da8d89ff06 100644 Binary files a/sound/effects/can_open1.ogg and b/sound/effects/can_open1.ogg differ diff --git a/sound/effects/can_open2.ogg b/sound/effects/can_open2.ogg index 0b054c23c69..1cf6b1221b7 100644 Binary files a/sound/effects/can_open2.ogg and b/sound/effects/can_open2.ogg differ diff --git a/sound/effects/can_open3.ogg b/sound/effects/can_open3.ogg index 4523c6f1fec..ca29d0661c0 100644 Binary files a/sound/effects/can_open3.ogg and b/sound/effects/can_open3.ogg differ diff --git a/sound/effects/clang.ogg b/sound/effects/clang.ogg index 11090f4ce39..2302c20d1ea 100644 Binary files a/sound/effects/clang.ogg and b/sound/effects/clang.ogg differ diff --git a/sound/effects/clock_tick.ogg b/sound/effects/clock_tick.ogg index b292de136ca..4d31c09cf2e 100644 Binary files a/sound/effects/clock_tick.ogg and b/sound/effects/clock_tick.ogg differ diff --git a/sound/effects/clockcult_gateway_charging.ogg b/sound/effects/clockcult_gateway_charging.ogg index 1c4e55538ce..f8b8444d7ad 100644 Binary files a/sound/effects/clockcult_gateway_charging.ogg and b/sound/effects/clockcult_gateway_charging.ogg differ diff --git a/sound/effects/comfyfire.ogg b/sound/effects/comfyfire.ogg index 1bc7fc02d02..148c9c2da15 100644 Binary files a/sound/effects/comfyfire.ogg and b/sound/effects/comfyfire.ogg differ diff --git a/sound/effects/curse1.ogg b/sound/effects/curse1.ogg index b5482db037e..6bc2c55f217 100644 Binary files a/sound/effects/curse1.ogg and b/sound/effects/curse1.ogg differ diff --git a/sound/effects/curse2.ogg b/sound/effects/curse2.ogg index ab0d82246d8..52998d7bd36 100644 Binary files a/sound/effects/curse2.ogg and b/sound/effects/curse2.ogg differ diff --git a/sound/effects/curse3.ogg b/sound/effects/curse3.ogg index 8ba46199b96..cfa58c39fed 100644 Binary files a/sound/effects/curse3.ogg and b/sound/effects/curse3.ogg differ diff --git a/sound/effects/curse4.ogg b/sound/effects/curse4.ogg index 8d4e13e3dc9..a5672ed7cc9 100644 Binary files a/sound/effects/curse4.ogg and b/sound/effects/curse4.ogg differ diff --git a/sound/effects/curse5.ogg b/sound/effects/curse5.ogg index 3525280298a..529d6f36065 100644 Binary files a/sound/effects/curse5.ogg and b/sound/effects/curse5.ogg differ diff --git a/sound/effects/curse6.ogg b/sound/effects/curse6.ogg index ae36eff039f..52e96143aa4 100644 Binary files a/sound/effects/curse6.ogg and b/sound/effects/curse6.ogg differ diff --git a/sound/effects/curseattack.ogg b/sound/effects/curseattack.ogg index 0726582f7b5..550ab301561 100644 Binary files a/sound/effects/curseattack.ogg and b/sound/effects/curseattack.ogg differ diff --git a/sound/effects/curtain.ogg b/sound/effects/curtain.ogg index b3be91aaa28..2dabbf58629 100644 Binary files a/sound/effects/curtain.ogg and b/sound/effects/curtain.ogg differ diff --git a/sound/effects/doorcreaky.ogg b/sound/effects/doorcreaky.ogg index 3d60aca56bf..d2e8d50b112 100644 Binary files a/sound/effects/doorcreaky.ogg and b/sound/effects/doorcreaky.ogg differ diff --git a/sound/effects/empulse.ogg b/sound/effects/empulse.ogg index f9b7066454d..f0eab64643e 100644 Binary files a/sound/effects/empulse.ogg and b/sound/effects/empulse.ogg differ diff --git a/sound/effects/explosion_distant.ogg b/sound/effects/explosion_distant.ogg index d9976c51fe7..795d450c896 100644 Binary files a/sound/effects/explosion_distant.ogg and b/sound/effects/explosion_distant.ogg differ diff --git a/sound/effects/extinguish.ogg b/sound/effects/extinguish.ogg index d59ea9f32fb..5c6676afbbd 100644 Binary files a/sound/effects/extinguish.ogg and b/sound/effects/extinguish.ogg differ diff --git a/sound/effects/fuse.ogg b/sound/effects/fuse.ogg index a1a7ba368f8..5b2f4eddc61 100644 Binary files a/sound/effects/fuse.ogg and b/sound/effects/fuse.ogg differ diff --git a/sound/effects/ghost.ogg b/sound/effects/ghost.ogg index e6b6da36e53..ce2b8e26e7e 100644 Binary files a/sound/effects/ghost.ogg and b/sound/effects/ghost.ogg differ diff --git a/sound/effects/ghost2.ogg b/sound/effects/ghost2.ogg index ed384e40d22..aa3eb5c94ae 100644 Binary files a/sound/effects/ghost2.ogg and b/sound/effects/ghost2.ogg differ diff --git a/sound/effects/gib_step.ogg b/sound/effects/gib_step.ogg index 01592651ab9..6052933c0f3 100644 Binary files a/sound/effects/gib_step.ogg and b/sound/effects/gib_step.ogg differ diff --git a/sound/effects/glass_step.ogg b/sound/effects/glass_step.ogg index 2793056b902..2141a97c604 100644 Binary files a/sound/effects/glass_step.ogg and b/sound/effects/glass_step.ogg differ diff --git a/sound/effects/glassbr1.ogg b/sound/effects/glassbr1.ogg index 40938309a0a..738be270679 100644 Binary files a/sound/effects/glassbr1.ogg and b/sound/effects/glassbr1.ogg differ diff --git a/sound/effects/glassbr2.ogg b/sound/effects/glassbr2.ogg index 9dba184098e..aa0ae71453e 100644 Binary files a/sound/effects/glassbr2.ogg and b/sound/effects/glassbr2.ogg differ diff --git a/sound/effects/glassbr3.ogg b/sound/effects/glassbr3.ogg index 4f46dd1a1c7..4b4f05586d9 100644 Binary files a/sound/effects/glassbr3.ogg and b/sound/effects/glassbr3.ogg differ diff --git a/sound/effects/glasshit.ogg b/sound/effects/glasshit.ogg index 500afcd5d06..1a6e98715dd 100644 Binary files a/sound/effects/glasshit.ogg and b/sound/effects/glasshit.ogg differ diff --git a/sound/effects/glassknock.ogg b/sound/effects/glassknock.ogg index 8878dda8013..91da9de803a 100644 Binary files a/sound/effects/glassknock.ogg and b/sound/effects/glassknock.ogg differ diff --git a/sound/effects/gong.ogg b/sound/effects/gong.ogg index 1e9c3d4e6c5..4d12f5d0d2d 100644 Binary files a/sound/effects/gong.ogg and b/sound/effects/gong.ogg differ diff --git a/sound/effects/gravhit.ogg b/sound/effects/gravhit.ogg new file mode 100644 index 00000000000..524ddf733f5 Binary files /dev/null and b/sound/effects/gravhit.ogg differ diff --git a/sound/effects/grillehit.ogg b/sound/effects/grillehit.ogg index e5227b90d04..0dc6c33367f 100644 Binary files a/sound/effects/grillehit.ogg and b/sound/effects/grillehit.ogg differ diff --git a/sound/effects/his_grace_ascend.ogg b/sound/effects/his_grace_ascend.ogg index 8ddc8be4cdb..61866f2afc9 100644 Binary files a/sound/effects/his_grace_ascend.ogg and b/sound/effects/his_grace_ascend.ogg differ diff --git a/sound/effects/hit_kick.ogg b/sound/effects/hit_kick.ogg index 850642de699..5638e5d2d67 100644 Binary files a/sound/effects/hit_kick.ogg and b/sound/effects/hit_kick.ogg differ diff --git a/sound/effects/hit_on_shattered_glass.ogg b/sound/effects/hit_on_shattered_glass.ogg index dfeca0ba629..f0f21e277bd 100644 Binary files a/sound/effects/hit_on_shattered_glass.ogg and b/sound/effects/hit_on_shattered_glass.ogg differ diff --git a/sound/effects/hit_punch.ogg b/sound/effects/hit_punch.ogg index e4b38e9627a..beed99926c6 100644 Binary files a/sound/effects/hit_punch.ogg and b/sound/effects/hit_punch.ogg differ diff --git a/sound/effects/huuu.ogg b/sound/effects/huuu.ogg index 3bef8569795..9be0bebcfbd 100644 Binary files a/sound/effects/huuu.ogg and b/sound/effects/huuu.ogg differ diff --git a/sound/effects/hyperspace_begin_distance.ogg b/sound/effects/hyperspace_begin_distance.ogg new file mode 100644 index 00000000000..e79363743b4 Binary files /dev/null and b/sound/effects/hyperspace_begin_distance.ogg differ diff --git a/sound/effects/hyperspace_end_distance.ogg b/sound/effects/hyperspace_end_distance.ogg new file mode 100644 index 00000000000..591abb0ad25 Binary files /dev/null and b/sound/effects/hyperspace_end_distance.ogg differ diff --git a/sound/effects/hyperspace_progress_distance.ogg b/sound/effects/hyperspace_progress_distance.ogg new file mode 100644 index 00000000000..2ba8533a845 Binary files /dev/null and b/sound/effects/hyperspace_progress_distance.ogg differ diff --git a/sound/effects/license.txt b/sound/effects/license.txt new file mode 100644 index 00000000000..ac3058e5d6c --- /dev/null +++ b/sound/effects/license.txt @@ -0,0 +1,5 @@ +one_mind.ogg is Mars Attacks Sounds, by Mike Koenig (http://soundbible.com/1047-Mars-Attacks.html). It has been licensed under CC-BY 3.0 license. + It is unaltered ingame + +hit_punch.ogg and hit_kick.ogg are made by Taira Komori +(https://taira-komori.jpn.org/freesounden.html) diff --git a/sound/effects/light_flicker.ogg b/sound/effects/light_flicker.ogg index 58be2c6ebda..f279de02d1b 100644 Binary files a/sound/effects/light_flicker.ogg and b/sound/effects/light_flicker.ogg differ diff --git a/sound/effects/meow1.ogg b/sound/effects/meow1.ogg index c486bfd5db9..462f246d55c 100644 Binary files a/sound/effects/meow1.ogg and b/sound/effects/meow1.ogg differ diff --git a/sound/effects/meteorimpact.ogg b/sound/effects/meteorimpact.ogg index bd960ec0f61..9ed75f6c57e 100644 Binary files a/sound/effects/meteorimpact.ogg and b/sound/effects/meteorimpact.ogg differ diff --git a/sound/effects/mousesqueek.ogg b/sound/effects/mousesqueek.ogg index 7b413d6da2a..fef15503cd9 100644 Binary files a/sound/effects/mousesqueek.ogg and b/sound/effects/mousesqueek.ogg differ diff --git a/sound/effects/one_mind.ogg b/sound/effects/one_mind.ogg new file mode 100644 index 00000000000..2c8bd214c57 Binary files /dev/null and b/sound/effects/one_mind.ogg differ diff --git a/sound/effects/pageturn1.ogg b/sound/effects/pageturn1.ogg index 0fe537cd1da..1ccc977c23f 100644 Binary files a/sound/effects/pageturn1.ogg and b/sound/effects/pageturn1.ogg differ diff --git a/sound/effects/pageturn2.ogg b/sound/effects/pageturn2.ogg index e34f7fdd507..21f89782e5e 100644 Binary files a/sound/effects/pageturn2.ogg and b/sound/effects/pageturn2.ogg differ diff --git a/sound/effects/pageturn3.ogg b/sound/effects/pageturn3.ogg index 8b2d61fdc6d..11a54eb5555 100644 Binary files a/sound/effects/pageturn3.ogg and b/sound/effects/pageturn3.ogg differ diff --git a/sound/effects/pai_boot.ogg b/sound/effects/pai_boot.ogg index 058866475c5..3d6783fe703 100644 Binary files a/sound/effects/pai_boot.ogg and b/sound/effects/pai_boot.ogg differ diff --git a/sound/effects/phasein.ogg b/sound/effects/phasein.ogg index 9bb4d443f0d..33318e9b127 100644 Binary files a/sound/effects/phasein.ogg and b/sound/effects/phasein.ogg differ diff --git a/sound/effects/picaxe1.ogg b/sound/effects/picaxe1.ogg index 337422d39e4..833f882a684 100644 Binary files a/sound/effects/picaxe1.ogg and b/sound/effects/picaxe1.ogg differ diff --git a/sound/effects/picaxe2.ogg b/sound/effects/picaxe2.ogg index c1a2fd631bd..e280748337d 100644 Binary files a/sound/effects/picaxe2.ogg and b/sound/effects/picaxe2.ogg differ diff --git a/sound/effects/picaxe3.ogg b/sound/effects/picaxe3.ogg index f4656613284..fc2a88d1186 100644 Binary files a/sound/effects/picaxe3.ogg and b/sound/effects/picaxe3.ogg differ diff --git a/sound/effects/pop.ogg b/sound/effects/pop.ogg index 9b9b4b4e1dd..cf0bc2da72b 100644 Binary files a/sound/effects/pop.ogg and b/sound/effects/pop.ogg differ diff --git a/sound/effects/pope_entry.ogg b/sound/effects/pope_entry.ogg index 2add30012ad..54cf14fc4fc 100644 Binary files a/sound/effects/pope_entry.ogg and b/sound/effects/pope_entry.ogg differ diff --git a/sound/effects/reee.ogg b/sound/effects/reee.ogg index 5774b45edac..6a635f5a676 100644 Binary files a/sound/effects/reee.ogg and b/sound/effects/reee.ogg differ diff --git a/sound/effects/refill.ogg b/sound/effects/refill.ogg index 4915bd00137..511658929bb 100644 Binary files a/sound/effects/refill.ogg and b/sound/effects/refill.ogg differ diff --git a/sound/effects/rustle1.ogg b/sound/effects/rustle1.ogg index fe8da05a62b..365fb5d85f3 100644 Binary files a/sound/effects/rustle1.ogg and b/sound/effects/rustle1.ogg differ diff --git a/sound/effects/rustle2.ogg b/sound/effects/rustle2.ogg index df2d9c889f0..031aeb8a8e1 100644 Binary files a/sound/effects/rustle2.ogg and b/sound/effects/rustle2.ogg differ diff --git a/sound/effects/rustle3.ogg b/sound/effects/rustle3.ogg index 39307500641..1bbdfb2500b 100644 Binary files a/sound/effects/rustle3.ogg and b/sound/effects/rustle3.ogg differ diff --git a/sound/effects/rustle4.ogg b/sound/effects/rustle4.ogg index b9a3fa32721..1401fca0c72 100644 Binary files a/sound/effects/rustle4.ogg and b/sound/effects/rustle4.ogg differ diff --git a/sound/effects/rustle5.ogg b/sound/effects/rustle5.ogg index c7bd8ccfd5e..ac10981b808 100644 Binary files a/sound/effects/rustle5.ogg and b/sound/effects/rustle5.ogg differ diff --git a/sound/effects/servostep.ogg b/sound/effects/servostep.ogg index 9999b99ccbc..757b4523da8 100644 Binary files a/sound/effects/servostep.ogg and b/sound/effects/servostep.ogg differ diff --git a/sound/effects/shieldbash.ogg b/sound/effects/shieldbash.ogg index ffcea669566..6fa8e9ad913 100644 Binary files a/sound/effects/shieldbash.ogg and b/sound/effects/shieldbash.ogg differ diff --git a/sound/effects/shovel_dig.ogg b/sound/effects/shovel_dig.ogg index c0b459066a0..23f3353f009 100644 Binary files a/sound/effects/shovel_dig.ogg and b/sound/effects/shovel_dig.ogg differ diff --git a/sound/effects/singlebeat.ogg b/sound/effects/singlebeat.ogg index 8dd550d5d84..7ff820c5a58 100644 Binary files a/sound/effects/singlebeat.ogg and b/sound/effects/singlebeat.ogg differ diff --git a/sound/effects/slosh.ogg b/sound/effects/slosh.ogg index 2448e60ab4a..c414dbb0313 100644 Binary files a/sound/effects/slosh.ogg and b/sound/effects/slosh.ogg differ diff --git a/sound/effects/smoke.ogg b/sound/effects/smoke.ogg index 1a1aa3733ed..49e1331fd1f 100644 Binary files a/sound/effects/smoke.ogg and b/sound/effects/smoke.ogg differ diff --git a/sound/effects/space_wind.ogg b/sound/effects/space_wind.ogg index 397086a1a29..3709cdb0557 100644 Binary files a/sound/effects/space_wind.ogg and b/sound/effects/space_wind.ogg differ diff --git a/sound/effects/sparks1.ogg b/sound/effects/sparks1.ogg index 11861ebf4b4..a45cadc0037 100644 Binary files a/sound/effects/sparks1.ogg and b/sound/effects/sparks1.ogg differ diff --git a/sound/effects/sparks2.ogg b/sound/effects/sparks2.ogg index ccea7b38d1d..9e2b0d26944 100644 Binary files a/sound/effects/sparks2.ogg and b/sound/effects/sparks2.ogg differ diff --git a/sound/effects/sparks3.ogg b/sound/effects/sparks3.ogg index 11f353e9241..11bf8cd3400 100644 Binary files a/sound/effects/sparks3.ogg and b/sound/effects/sparks3.ogg differ diff --git a/sound/effects/sparks4.ogg b/sound/effects/sparks4.ogg index 9dc62ac477f..6081f9c330c 100644 Binary files a/sound/effects/sparks4.ogg and b/sound/effects/sparks4.ogg differ diff --git a/sound/effects/splat.ogg b/sound/effects/splat.ogg index e4a2d621dad..c7b60beaf14 100644 Binary files a/sound/effects/splat.ogg and b/sound/effects/splat.ogg differ diff --git a/sound/effects/spray.ogg b/sound/effects/spray.ogg index 9df3fa60328..d7796264c68 100644 Binary files a/sound/effects/spray.ogg and b/sound/effects/spray.ogg differ diff --git a/sound/effects/spray2.ogg b/sound/effects/spray2.ogg index b29abf385a7..d184d76bd00 100644 Binary files a/sound/effects/spray2.ogg and b/sound/effects/spray2.ogg differ diff --git a/sound/effects/spray3.ogg b/sound/effects/spray3.ogg index 3ea4574ea63..cf0502e744d 100644 Binary files a/sound/effects/spray3.ogg and b/sound/effects/spray3.ogg differ diff --git a/sound/effects/stealthoff.ogg b/sound/effects/stealthoff.ogg index 865f9e28b0c..d78706e9cdc 100644 Binary files a/sound/effects/stealthoff.ogg and b/sound/effects/stealthoff.ogg differ diff --git a/sound/effects/stonedoor_openclose.ogg b/sound/effects/stonedoor_openclose.ogg index 9f3919ed652..baa5edf6724 100644 Binary files a/sound/effects/stonedoor_openclose.ogg and b/sound/effects/stonedoor_openclose.ogg differ diff --git a/sound/effects/suitstep1.ogg b/sound/effects/suitstep1.ogg index fdc56bb9e47..fc5287d703a 100644 Binary files a/sound/effects/suitstep1.ogg and b/sound/effects/suitstep1.ogg differ diff --git a/sound/effects/suitstep2.ogg b/sound/effects/suitstep2.ogg index 17a528feebf..b6700dd9917 100644 Binary files a/sound/effects/suitstep2.ogg and b/sound/effects/suitstep2.ogg differ diff --git a/sound/effects/supermatter.ogg b/sound/effects/supermatter.ogg index 83081a5e9bf..c6e87b61e6c 100644 Binary files a/sound/effects/supermatter.ogg and b/sound/effects/supermatter.ogg differ diff --git a/sound/effects/tendril_destroyed.ogg b/sound/effects/tendril_destroyed.ogg index 449db1a381f..210bd5225e2 100644 Binary files a/sound/effects/tendril_destroyed.ogg and b/sound/effects/tendril_destroyed.ogg differ diff --git a/sound/effects/woodhit.ogg b/sound/effects/woodhit.ogg index 00608c84ec9..04ff37f3c7a 100644 Binary files a/sound/effects/woodhit.ogg and b/sound/effects/woodhit.ogg differ diff --git a/sound/effects/zzzt.ogg b/sound/effects/zzzt.ogg index b41b5642644..028e78d9dec 100644 Binary files a/sound/effects/zzzt.ogg and b/sound/effects/zzzt.ogg differ diff --git a/sound/instruments/bikehorn/Ab2.ogg b/sound/instruments/bikehorn/Ab2.ogg index cc33da35f45..516dc5f1a51 100644 Binary files a/sound/instruments/bikehorn/Ab2.ogg and b/sound/instruments/bikehorn/Ab2.ogg differ diff --git a/sound/instruments/bikehorn/Ab3.ogg b/sound/instruments/bikehorn/Ab3.ogg index b046ed2e74a..6110ccc005b 100644 Binary files a/sound/instruments/bikehorn/Ab3.ogg and b/sound/instruments/bikehorn/Ab3.ogg differ diff --git a/sound/instruments/bikehorn/Ab4.ogg b/sound/instruments/bikehorn/Ab4.ogg index ba50324d626..b69bc30a425 100644 Binary files a/sound/instruments/bikehorn/Ab4.ogg and b/sound/instruments/bikehorn/Ab4.ogg differ diff --git a/sound/instruments/bikehorn/An2.ogg b/sound/instruments/bikehorn/An2.ogg index ddfbe21910b..29c97fc38e2 100644 Binary files a/sound/instruments/bikehorn/An2.ogg and b/sound/instruments/bikehorn/An2.ogg differ diff --git a/sound/instruments/bikehorn/An3.ogg b/sound/instruments/bikehorn/An3.ogg index c69e59a8da0..f9f67aaa530 100644 Binary files a/sound/instruments/bikehorn/An3.ogg and b/sound/instruments/bikehorn/An3.ogg differ diff --git a/sound/instruments/bikehorn/An4.ogg b/sound/instruments/bikehorn/An4.ogg index 5b42fe4ae8f..74b9fa6adc2 100644 Binary files a/sound/instruments/bikehorn/An4.ogg and b/sound/instruments/bikehorn/An4.ogg differ diff --git a/sound/instruments/bikehorn/Bb2.ogg b/sound/instruments/bikehorn/Bb2.ogg index 4a909bdfc53..5cee07e1920 100644 Binary files a/sound/instruments/bikehorn/Bb2.ogg and b/sound/instruments/bikehorn/Bb2.ogg differ diff --git a/sound/instruments/bikehorn/Bb3.ogg b/sound/instruments/bikehorn/Bb3.ogg index 2055984a86c..f655ba973ce 100644 Binary files a/sound/instruments/bikehorn/Bb3.ogg and b/sound/instruments/bikehorn/Bb3.ogg differ diff --git a/sound/instruments/bikehorn/Bb4.ogg b/sound/instruments/bikehorn/Bb4.ogg index 73003e040c1..54dc87781eb 100644 Binary files a/sound/instruments/bikehorn/Bb4.ogg and b/sound/instruments/bikehorn/Bb4.ogg differ diff --git a/sound/instruments/bikehorn/Bn2.ogg b/sound/instruments/bikehorn/Bn2.ogg index 17532a6a7c9..ff86ec97190 100644 Binary files a/sound/instruments/bikehorn/Bn2.ogg and b/sound/instruments/bikehorn/Bn2.ogg differ diff --git a/sound/instruments/bikehorn/Bn3.ogg b/sound/instruments/bikehorn/Bn3.ogg index ff36b917093..c639f34e8e5 100644 Binary files a/sound/instruments/bikehorn/Bn3.ogg and b/sound/instruments/bikehorn/Bn3.ogg differ diff --git a/sound/instruments/bikehorn/Bn4.ogg b/sound/instruments/bikehorn/Bn4.ogg index 6750a931552..ea0bc643c54 100644 Binary files a/sound/instruments/bikehorn/Bn4.ogg and b/sound/instruments/bikehorn/Bn4.ogg differ diff --git a/sound/instruments/bikehorn/Cn3.ogg b/sound/instruments/bikehorn/Cn3.ogg index f75ddaa83f2..129a67d6bdf 100644 Binary files a/sound/instruments/bikehorn/Cn3.ogg and b/sound/instruments/bikehorn/Cn3.ogg differ diff --git a/sound/instruments/bikehorn/Cn4.ogg b/sound/instruments/bikehorn/Cn4.ogg index e5889f04bce..e02a4fa8d22 100644 Binary files a/sound/instruments/bikehorn/Cn4.ogg and b/sound/instruments/bikehorn/Cn4.ogg differ diff --git a/sound/instruments/bikehorn/Cn5.ogg b/sound/instruments/bikehorn/Cn5.ogg index 328a6edf10e..eb0b76dadc1 100644 Binary files a/sound/instruments/bikehorn/Cn5.ogg and b/sound/instruments/bikehorn/Cn5.ogg differ diff --git a/sound/instruments/bikehorn/Db3.ogg b/sound/instruments/bikehorn/Db3.ogg index 3c3e8d10305..000c38fb67a 100644 Binary files a/sound/instruments/bikehorn/Db3.ogg and b/sound/instruments/bikehorn/Db3.ogg differ diff --git a/sound/instruments/bikehorn/Db4.ogg b/sound/instruments/bikehorn/Db4.ogg index 35dd47df475..2f9423914a1 100644 Binary files a/sound/instruments/bikehorn/Db4.ogg and b/sound/instruments/bikehorn/Db4.ogg differ diff --git a/sound/instruments/bikehorn/Db5.ogg b/sound/instruments/bikehorn/Db5.ogg index 54c10b54c54..e65b43a2882 100644 Binary files a/sound/instruments/bikehorn/Db5.ogg and b/sound/instruments/bikehorn/Db5.ogg differ diff --git a/sound/instruments/bikehorn/Dn3.ogg b/sound/instruments/bikehorn/Dn3.ogg index 33a863c8426..f132cd6ba55 100644 Binary files a/sound/instruments/bikehorn/Dn3.ogg and b/sound/instruments/bikehorn/Dn3.ogg differ diff --git a/sound/instruments/bikehorn/Dn4.ogg b/sound/instruments/bikehorn/Dn4.ogg index bd4c353e625..196100f483a 100644 Binary files a/sound/instruments/bikehorn/Dn4.ogg and b/sound/instruments/bikehorn/Dn4.ogg differ diff --git a/sound/instruments/bikehorn/Dn5.ogg b/sound/instruments/bikehorn/Dn5.ogg index 11b355b11cf..cca45f94739 100644 Binary files a/sound/instruments/bikehorn/Dn5.ogg and b/sound/instruments/bikehorn/Dn5.ogg differ diff --git a/sound/instruments/bikehorn/Eb3.ogg b/sound/instruments/bikehorn/Eb3.ogg index 367cc5456dc..8fd4306ae39 100644 Binary files a/sound/instruments/bikehorn/Eb3.ogg and b/sound/instruments/bikehorn/Eb3.ogg differ diff --git a/sound/instruments/bikehorn/Eb4.ogg b/sound/instruments/bikehorn/Eb4.ogg index d7344da37c9..72700fd0e36 100644 Binary files a/sound/instruments/bikehorn/Eb4.ogg and b/sound/instruments/bikehorn/Eb4.ogg differ diff --git a/sound/instruments/bikehorn/Eb5.ogg b/sound/instruments/bikehorn/Eb5.ogg index c94b994d199..d2c050ec09f 100644 Binary files a/sound/instruments/bikehorn/Eb5.ogg and b/sound/instruments/bikehorn/Eb5.ogg differ diff --git a/sound/instruments/bikehorn/En2.ogg b/sound/instruments/bikehorn/En2.ogg index 6c2e4de57dd..ab9bb7dd452 100644 Binary files a/sound/instruments/bikehorn/En2.ogg and b/sound/instruments/bikehorn/En2.ogg differ diff --git a/sound/instruments/bikehorn/En3.ogg b/sound/instruments/bikehorn/En3.ogg index 37b96d48518..cac18c0249d 100644 Binary files a/sound/instruments/bikehorn/En3.ogg and b/sound/instruments/bikehorn/En3.ogg differ diff --git a/sound/instruments/bikehorn/En4.ogg b/sound/instruments/bikehorn/En4.ogg index 2a23deabf57..17c9fc4ea28 100644 Binary files a/sound/instruments/bikehorn/En4.ogg and b/sound/instruments/bikehorn/En4.ogg differ diff --git a/sound/instruments/bikehorn/Fn2.ogg b/sound/instruments/bikehorn/Fn2.ogg index 3ddbcb90339..9db53950835 100644 Binary files a/sound/instruments/bikehorn/Fn2.ogg and b/sound/instruments/bikehorn/Fn2.ogg differ diff --git a/sound/instruments/bikehorn/Fn3.ogg b/sound/instruments/bikehorn/Fn3.ogg index 47f8625ea9b..1228fafc944 100644 Binary files a/sound/instruments/bikehorn/Fn3.ogg and b/sound/instruments/bikehorn/Fn3.ogg differ diff --git a/sound/instruments/bikehorn/Fn4.ogg b/sound/instruments/bikehorn/Fn4.ogg index ee330535668..3744a1a3bf7 100644 Binary files a/sound/instruments/bikehorn/Fn4.ogg and b/sound/instruments/bikehorn/Fn4.ogg differ diff --git a/sound/instruments/bikehorn/Gb2.ogg b/sound/instruments/bikehorn/Gb2.ogg index e78f9430104..6625b93d163 100644 Binary files a/sound/instruments/bikehorn/Gb2.ogg and b/sound/instruments/bikehorn/Gb2.ogg differ diff --git a/sound/instruments/bikehorn/Gb3.ogg b/sound/instruments/bikehorn/Gb3.ogg index be59509ee92..03154ab427e 100644 Binary files a/sound/instruments/bikehorn/Gb3.ogg and b/sound/instruments/bikehorn/Gb3.ogg differ diff --git a/sound/instruments/bikehorn/Gb4.ogg b/sound/instruments/bikehorn/Gb4.ogg index fac913aaff4..59958dbae47 100644 Binary files a/sound/instruments/bikehorn/Gb4.ogg and b/sound/instruments/bikehorn/Gb4.ogg differ diff --git a/sound/instruments/bikehorn/Gn2.ogg b/sound/instruments/bikehorn/Gn2.ogg index 80997735440..95faf3389d7 100644 Binary files a/sound/instruments/bikehorn/Gn2.ogg and b/sound/instruments/bikehorn/Gn2.ogg differ diff --git a/sound/instruments/bikehorn/Gn3.ogg b/sound/instruments/bikehorn/Gn3.ogg index 1966dfd0e86..f903ae66156 100644 Binary files a/sound/instruments/bikehorn/Gn3.ogg and b/sound/instruments/bikehorn/Gn3.ogg differ diff --git a/sound/instruments/bikehorn/Gn4.ogg b/sound/instruments/bikehorn/Gn4.ogg index 86f81bc1cbb..6631da09e69 100644 Binary files a/sound/instruments/bikehorn/Gn4.ogg and b/sound/instruments/bikehorn/Gn4.ogg differ diff --git a/sound/items/airhorn.ogg b/sound/items/airhorn.ogg index f70e6bf137b..10430cc2c65 100644 Binary files a/sound/items/airhorn.ogg and b/sound/items/airhorn.ogg differ diff --git a/sound/items/airhorn2.ogg b/sound/items/airhorn2.ogg index 37ee8640af9..1b1ddcd0d10 100644 Binary files a/sound/items/airhorn2.ogg and b/sound/items/airhorn2.ogg differ diff --git a/sound/items/bubblewrap.ogg b/sound/items/bubblewrap.ogg index 5ea4726ecc4..1595d817e7b 100644 Binary files a/sound/items/bubblewrap.ogg and b/sound/items/bubblewrap.ogg differ diff --git a/sound/items/cardshuffle.ogg b/sound/items/cardshuffle.ogg index 1fe763af5bc..3d59e5c9778 100644 Binary files a/sound/items/cardshuffle.ogg and b/sound/items/cardshuffle.ogg differ diff --git a/sound/items/carhorn.ogg b/sound/items/carhorn.ogg index 1d3c25b6216..53b6801103c 100644 Binary files a/sound/items/carhorn.ogg and b/sound/items/carhorn.ogg differ diff --git a/sound/items/change_drill.ogg b/sound/items/change_drill.ogg index 406027a5955..f8928fc00f9 100644 Binary files a/sound/items/change_drill.ogg and b/sound/items/change_drill.ogg differ diff --git a/sound/items/change_jaws.ogg b/sound/items/change_jaws.ogg index b6a41eca806..13960ccc3e3 100644 Binary files a/sound/items/change_jaws.ogg and b/sound/items/change_jaws.ogg differ diff --git a/sound/items/coinflip.ogg b/sound/items/coinflip.ogg index 299d38d528d..ef7f849ef44 100644 Binary files a/sound/items/coinflip.ogg and b/sound/items/coinflip.ogg differ diff --git a/sound/items/crowbar.ogg b/sound/items/crowbar.ogg index 47dcd7b2b67..17b6e87bcaa 100644 Binary files a/sound/items/crowbar.ogg and b/sound/items/crowbar.ogg differ diff --git a/sound/items/deconstruct.ogg b/sound/items/deconstruct.ogg index 49c206a2d75..15453ecd1af 100644 Binary files a/sound/items/deconstruct.ogg and b/sound/items/deconstruct.ogg differ diff --git a/sound/items/dodgeball.ogg b/sound/items/dodgeball.ogg index 48ee657923f..878d923a8df 100644 Binary files a/sound/items/dodgeball.ogg and b/sound/items/dodgeball.ogg differ diff --git a/sound/items/drink.ogg b/sound/items/drink.ogg index 4dc9f88be46..9b41ae946ec 100644 Binary files a/sound/items/drink.ogg and b/sound/items/drink.ogg differ diff --git a/sound/items/dump_it.ogg b/sound/items/dump_it.ogg new file mode 100644 index 00000000000..33bdb49e69e Binary files /dev/null and b/sound/items/dump_it.ogg differ diff --git a/sound/items/eatfood.ogg b/sound/items/eatfood.ogg index 84c67abe441..e1943d3fda9 100644 Binary files a/sound/items/eatfood.ogg and b/sound/items/eatfood.ogg differ diff --git a/sound/items/fulext_deploy.wav b/sound/items/fulext_deploy.wav deleted file mode 100644 index 9fbcb7e3f85..00000000000 Binary files a/sound/items/fulext_deploy.wav and /dev/null differ diff --git a/sound/items/fultext_deploy.ogg b/sound/items/fultext_deploy.ogg new file mode 100644 index 00000000000..2433b9e0fe3 Binary files /dev/null and b/sound/items/fultext_deploy.ogg differ diff --git a/sound/items/fultext_launch.ogg b/sound/items/fultext_launch.ogg new file mode 100644 index 00000000000..2c874419927 Binary files /dev/null and b/sound/items/fultext_launch.ogg differ diff --git a/sound/items/fultext_launch.wav b/sound/items/fultext_launch.wav deleted file mode 100644 index a623a89ada4..00000000000 Binary files a/sound/items/fultext_launch.wav and /dev/null differ diff --git a/sound/items/gavel.ogg b/sound/items/gavel.ogg index 751eb0ea219..22a851e1f33 100644 Binary files a/sound/items/gavel.ogg and b/sound/items/gavel.ogg differ diff --git a/sound/items/nuke_toy_lowpower.ogg b/sound/items/nuke_toy_lowpower.ogg index 053b1ff2c72..e976342d6f4 100644 Binary files a/sound/items/nuke_toy_lowpower.ogg and b/sound/items/nuke_toy_lowpower.ogg differ diff --git a/sound/items/party_horn.ogg b/sound/items/party_horn.ogg index ffdd49b1e72..f965f4a7bb6 100644 Binary files a/sound/items/party_horn.ogg and b/sound/items/party_horn.ogg differ diff --git a/sound/items/poster_ripped.ogg b/sound/items/poster_ripped.ogg index e42e36ce97d..0bc90c9fb6c 100644 Binary files a/sound/items/poster_ripped.ogg and b/sound/items/poster_ripped.ogg differ diff --git a/sound/items/pshoom_2.ogg b/sound/items/pshoom_2.ogg index 480b302fad8..9b94a798581 100644 Binary files a/sound/items/pshoom_2.ogg and b/sound/items/pshoom_2.ogg differ diff --git a/sound/items/ratchet.ogg b/sound/items/ratchet.ogg index 9cfb9639626..9b6045b9dad 100644 Binary files a/sound/items/ratchet.ogg and b/sound/items/ratchet.ogg differ diff --git a/sound/items/screwdriver.ogg b/sound/items/screwdriver.ogg index 2ba9e831e35..a6fc5dc6b98 100644 Binary files a/sound/items/screwdriver.ogg and b/sound/items/screwdriver.ogg differ diff --git a/sound/items/screwdriver2.ogg b/sound/items/screwdriver2.ogg index 5974a16e0dc..121a78932c6 100644 Binary files a/sound/items/screwdriver2.ogg and b/sound/items/screwdriver2.ogg differ diff --git a/sound/items/sheath.ogg b/sound/items/sheath.ogg index 35566236d88..9e1d5cdc009 100644 Binary files a/sound/items/sheath.ogg and b/sound/items/sheath.ogg differ diff --git a/sound/items/syringeproj.ogg b/sound/items/syringeproj.ogg index 25b94915a14..33e8288f5b8 100644 Binary files a/sound/items/syringeproj.ogg and b/sound/items/syringeproj.ogg differ diff --git a/sound/items/timer.ogg b/sound/items/timer.ogg index a13db015be3..0f1dd353243 100644 Binary files a/sound/items/timer.ogg and b/sound/items/timer.ogg differ diff --git a/sound/items/toysqueak1.ogg b/sound/items/toysqueak1.ogg index e64a6fb179d..57b962726c6 100644 Binary files a/sound/items/toysqueak1.ogg and b/sound/items/toysqueak1.ogg differ diff --git a/sound/items/toysqueak2.ogg b/sound/items/toysqueak2.ogg index fddf1edfb92..05ca302a238 100644 Binary files a/sound/items/toysqueak2.ogg and b/sound/items/toysqueak2.ogg differ diff --git a/sound/items/toysqueak3.ogg b/sound/items/toysqueak3.ogg index 338f4d8aa90..5dcdc70f011 100644 Binary files a/sound/items/toysqueak3.ogg and b/sound/items/toysqueak3.ogg differ diff --git a/sound/items/trayhit1.ogg b/sound/items/trayhit1.ogg index 4eb48c680ee..a2b5532a542 100644 Binary files a/sound/items/trayhit1.ogg and b/sound/items/trayhit1.ogg differ diff --git a/sound/items/unsheath.ogg b/sound/items/unsheath.ogg index 388ff1fc189..09867f5966a 100644 Binary files a/sound/items/unsheath.ogg and b/sound/items/unsheath.ogg differ diff --git a/sound/items/weeoo1.ogg b/sound/items/weeoo1.ogg index 1d9f9c7d772..d842696c78f 100644 Binary files a/sound/items/weeoo1.ogg and b/sound/items/weeoo1.ogg differ diff --git a/sound/items/welder.ogg b/sound/items/welder.ogg index fac0cd93c97..b431ca3151c 100644 Binary files a/sound/items/welder.ogg and b/sound/items/welder.ogg differ diff --git a/sound/items/welder2.ogg b/sound/items/welder2.ogg index fc2ce3e3cf8..2756fe3f6bf 100644 Binary files a/sound/items/welder2.ogg and b/sound/items/welder2.ogg differ diff --git a/sound/items/welderactivate.ogg b/sound/items/welderactivate.ogg index 5218f2ab1cf..e01102a9ed5 100644 Binary files a/sound/items/welderactivate.ogg and b/sound/items/welderactivate.ogg differ diff --git a/sound/items/wirecutter.ogg b/sound/items/wirecutter.ogg index a406c1fa841..b26af964492 100644 Binary files a/sound/items/wirecutter.ogg and b/sound/items/wirecutter.ogg differ diff --git a/sound/items/zip.ogg b/sound/items/zip.ogg index fff4b3e355f..d437d486ea4 100644 Binary files a/sound/items/zip.ogg and b/sound/items/zip.ogg differ diff --git a/sound/lavaland/cursed_slot_machine.ogg b/sound/lavaland/cursed_slot_machine.ogg index 1e1b545021d..80911861bab 100644 Binary files a/sound/lavaland/cursed_slot_machine.ogg and b/sound/lavaland/cursed_slot_machine.ogg differ diff --git a/sound/lavaland/cursed_slot_machine_jackpot.ogg b/sound/lavaland/cursed_slot_machine_jackpot.ogg index 83a1c0bee70..19a4c417a96 100644 Binary files a/sound/lavaland/cursed_slot_machine_jackpot.ogg and b/sound/lavaland/cursed_slot_machine_jackpot.ogg differ diff --git a/sound/machines/airlock.ogg b/sound/machines/airlock.ogg index c0a4cfdcba6..55cafa974f3 100644 Binary files a/sound/machines/airlock.ogg and b/sound/machines/airlock.ogg differ diff --git a/sound/machines/airlock_alien_prying.ogg b/sound/machines/airlock_alien_prying.ogg index 470e86eb259..14ee78e2dc7 100644 Binary files a/sound/machines/airlock_alien_prying.ogg and b/sound/machines/airlock_alien_prying.ogg differ diff --git a/sound/machines/airlockclose.ogg b/sound/machines/airlockclose.ogg index 58a06817f00..5da73f770e8 100644 Binary files a/sound/machines/airlockclose.ogg and b/sound/machines/airlockclose.ogg differ diff --git a/sound/machines/airlockforced.ogg b/sound/machines/airlockforced.ogg index 8f46a89fe32..67544104bb3 100644 Binary files a/sound/machines/airlockforced.ogg and b/sound/machines/airlockforced.ogg differ diff --git a/sound/machines/airlockopen.ogg b/sound/machines/airlockopen.ogg index 0aac107d715..218ff971364 100644 Binary files a/sound/machines/airlockopen.ogg and b/sound/machines/airlockopen.ogg differ diff --git a/sound/machines/beep.ogg b/sound/machines/beep.ogg index faca0771e0d..b00addfd297 100644 Binary files a/sound/machines/beep.ogg and b/sound/machines/beep.ogg differ diff --git a/sound/machines/blastdoor.ogg b/sound/machines/blastdoor.ogg index 2de1b55999c..e64deb132fa 100644 Binary files a/sound/machines/blastdoor.ogg and b/sound/machines/blastdoor.ogg differ diff --git a/sound/machines/blender.ogg b/sound/machines/blender.ogg index 2497b97e019..ae78bc25ba4 100644 Binary files a/sound/machines/blender.ogg and b/sound/machines/blender.ogg differ diff --git a/sound/machines/boltsdown.ogg b/sound/machines/boltsdown.ogg index c7320a04dfe..61fde63e951 100644 Binary files a/sound/machines/boltsdown.ogg and b/sound/machines/boltsdown.ogg differ diff --git a/sound/machines/boltsup.ogg b/sound/machines/boltsup.ogg index bc422e28726..108ee74b17b 100644 Binary files a/sound/machines/boltsup.ogg and b/sound/machines/boltsup.ogg differ diff --git a/sound/machines/chime.ogg b/sound/machines/chime.ogg index 20548c73cda..f20eb11d11b 100644 Binary files a/sound/machines/chime.ogg and b/sound/machines/chime.ogg differ diff --git a/sound/machines/click.ogg b/sound/machines/click.ogg index 23a4fa1bb16..b3947c86e04 100644 Binary files a/sound/machines/click.ogg and b/sound/machines/click.ogg differ diff --git a/sound/machines/clockcult/ark_damage.ogg b/sound/machines/clockcult/ark_damage.ogg index 40ccfc62190..1834ee5b1f1 100644 Binary files a/sound/machines/clockcult/ark_damage.ogg and b/sound/machines/clockcult/ark_damage.ogg differ diff --git a/sound/machines/clockcult/ark_deathrattle.ogg b/sound/machines/clockcult/ark_deathrattle.ogg index 916ff0429e7..821b7cb3351 100644 Binary files a/sound/machines/clockcult/ark_deathrattle.ogg and b/sound/machines/clockcult/ark_deathrattle.ogg differ diff --git a/sound/machines/clockcult/ark_recall.ogg b/sound/machines/clockcult/ark_recall.ogg index a38a0b765b6..c02b19c2594 100644 Binary files a/sound/machines/clockcult/ark_recall.ogg and b/sound/machines/clockcult/ark_recall.ogg differ diff --git a/sound/machines/clockcult/ark_scream.ogg b/sound/machines/clockcult/ark_scream.ogg index acdc7c85db4..3e2fde4fdac 100644 Binary files a/sound/machines/clockcult/ark_scream.ogg and b/sound/machines/clockcult/ark_scream.ogg differ diff --git a/sound/machines/clockcult/brass_skewer.ogg b/sound/machines/clockcult/brass_skewer.ogg index 927bf9b2757..6bdb352f330 100644 Binary files a/sound/machines/clockcult/brass_skewer.ogg and b/sound/machines/clockcult/brass_skewer.ogg differ diff --git a/sound/machines/clockcult/eminence_command.ogg b/sound/machines/clockcult/eminence_command.ogg index 59a4e3f26d7..a4133d2d5c5 100644 Binary files a/sound/machines/clockcult/eminence_command.ogg and b/sound/machines/clockcult/eminence_command.ogg differ diff --git a/sound/machines/clockcult/eminence_selected.ogg b/sound/machines/clockcult/eminence_selected.ogg index 6d1175faf78..f70ddd1dc37 100644 Binary files a/sound/machines/clockcult/eminence_selected.ogg and b/sound/machines/clockcult/eminence_selected.ogg differ diff --git a/sound/machines/clockcult/integration_cog_install.ogg b/sound/machines/clockcult/integration_cog_install.ogg index 554ec0707b5..5fb5a7ce41d 100644 Binary files a/sound/machines/clockcult/integration_cog_install.ogg and b/sound/machines/clockcult/integration_cog_install.ogg differ diff --git a/sound/machines/clockcult/ocularwarden-dot1.ogg b/sound/machines/clockcult/ocularwarden-dot1.ogg index d00e3922c89..fc2836ff1f4 100644 Binary files a/sound/machines/clockcult/ocularwarden-dot1.ogg and b/sound/machines/clockcult/ocularwarden-dot1.ogg differ diff --git a/sound/machines/clockcult/ocularwarden-dot2.ogg b/sound/machines/clockcult/ocularwarden-dot2.ogg index 8f9c047c6bc..635116cb67c 100644 Binary files a/sound/machines/clockcult/ocularwarden-dot2.ogg and b/sound/machines/clockcult/ocularwarden-dot2.ogg differ diff --git a/sound/machines/clockcult/ocularwarden-target.ogg b/sound/machines/clockcult/ocularwarden-target.ogg index 88fecbe00d5..557437a6721 100644 Binary files a/sound/machines/clockcult/ocularwarden-target.ogg and b/sound/machines/clockcult/ocularwarden-target.ogg differ diff --git a/sound/machines/clockcult/stargazer_activate.ogg b/sound/machines/clockcult/stargazer_activate.ogg index 8a2a0a9bc96..38fe2e730e3 100644 Binary files a/sound/machines/clockcult/stargazer_activate.ogg and b/sound/machines/clockcult/stargazer_activate.ogg differ diff --git a/sound/machines/clockcult/steam_whoosh.ogg b/sound/machines/clockcult/steam_whoosh.ogg index 21c7975c084..4b1004d9e05 100644 Binary files a/sound/machines/clockcult/steam_whoosh.ogg and b/sound/machines/clockcult/steam_whoosh.ogg differ diff --git a/sound/machines/copier.ogg b/sound/machines/copier.ogg index 4e407a573d4..8f9f95e6e37 100644 Binary files a/sound/machines/copier.ogg and b/sound/machines/copier.ogg differ diff --git a/sound/machines/cryo_warning.ogg b/sound/machines/cryo_warning.ogg index 06cdebc9447..8d1bbc5883b 100644 Binary files a/sound/machines/cryo_warning.ogg and b/sound/machines/cryo_warning.ogg differ diff --git a/sound/machines/defib_SaftyOn.ogg b/sound/machines/defib_SaftyOn.ogg index cf261536466..25229b3a4e4 100644 Binary files a/sound/machines/defib_SaftyOn.ogg and b/sound/machines/defib_SaftyOn.ogg differ diff --git a/sound/machines/defib_charge.ogg b/sound/machines/defib_charge.ogg index 3e2be160fd1..b94279675dd 100644 Binary files a/sound/machines/defib_charge.ogg and b/sound/machines/defib_charge.ogg differ diff --git a/sound/machines/defib_failed.ogg b/sound/machines/defib_failed.ogg index 341f70ce84e..25e372f5d68 100644 Binary files a/sound/machines/defib_failed.ogg and b/sound/machines/defib_failed.ogg differ diff --git a/sound/machines/defib_ready.ogg b/sound/machines/defib_ready.ogg index 718128602ed..d014e594c06 100644 Binary files a/sound/machines/defib_ready.ogg and b/sound/machines/defib_ready.ogg differ diff --git a/sound/machines/defib_saftyOff.ogg b/sound/machines/defib_saftyOff.ogg index 6ab57097de3..146d56f33fc 100644 Binary files a/sound/machines/defib_saftyOff.ogg and b/sound/machines/defib_saftyOff.ogg differ diff --git a/sound/machines/defib_success.ogg b/sound/machines/defib_success.ogg index 3f71438c168..59b8a699f23 100644 Binary files a/sound/machines/defib_success.ogg and b/sound/machines/defib_success.ogg differ diff --git a/sound/machines/defib_zap.ogg b/sound/machines/defib_zap.ogg index 5612db39a43..690345b6144 100644 Binary files a/sound/machines/defib_zap.ogg and b/sound/machines/defib_zap.ogg differ diff --git a/sound/machines/deniedbeep.ogg b/sound/machines/deniedbeep.ogg index 2bcb70e70fb..1dde573a98d 100644 Binary files a/sound/machines/deniedbeep.ogg and b/sound/machines/deniedbeep.ogg differ diff --git a/sound/machines/ding.ogg b/sound/machines/ding.ogg index 664a52e99ac..24bce5d8d71 100644 Binary files a/sound/machines/ding.ogg and b/sound/machines/ding.ogg differ diff --git a/sound/machines/disposalflush.ogg b/sound/machines/disposalflush.ogg index 33818256adb..023566b63a3 100644 Binary files a/sound/machines/disposalflush.ogg and b/sound/machines/disposalflush.ogg differ diff --git a/sound/machines/door_close.ogg b/sound/machines/door_close.ogg index e0e6c01b680..31250f532ac 100644 Binary files a/sound/machines/door_close.ogg and b/sound/machines/door_close.ogg differ diff --git a/sound/machines/door_locked.ogg b/sound/machines/door_locked.ogg index 4a59d6bf844..19a983e201f 100644 Binary files a/sound/machines/door_locked.ogg and b/sound/machines/door_locked.ogg differ diff --git a/sound/machines/door_open.ogg b/sound/machines/door_open.ogg index 2303efcaf45..6f5b6f8eb51 100644 Binary files a/sound/machines/door_open.ogg and b/sound/machines/door_open.ogg differ diff --git a/sound/machines/doorclick.ogg b/sound/machines/doorclick.ogg index 5a73889fb80..647b7855bd7 100644 Binary files a/sound/machines/doorclick.ogg and b/sound/machines/doorclick.ogg differ diff --git a/sound/machines/engine_alert1.ogg b/sound/machines/engine_alert1.ogg index fadec78891f..55a741f4794 100644 Binary files a/sound/machines/engine_alert1.ogg and b/sound/machines/engine_alert1.ogg differ diff --git a/sound/machines/engine_alert2.ogg b/sound/machines/engine_alert2.ogg index 83f693617a7..e9f21626132 100644 Binary files a/sound/machines/engine_alert2.ogg and b/sound/machines/engine_alert2.ogg differ diff --git a/sound/machines/fryer/deep_fryer_1.ogg b/sound/machines/fryer/deep_fryer_1.ogg index 7b726c9de6f..2c3dd719d92 100644 Binary files a/sound/machines/fryer/deep_fryer_1.ogg and b/sound/machines/fryer/deep_fryer_1.ogg differ diff --git a/sound/machines/fryer/deep_fryer_2.ogg b/sound/machines/fryer/deep_fryer_2.ogg index 4bd4be7d772..ced31e7e4be 100644 Binary files a/sound/machines/fryer/deep_fryer_2.ogg and b/sound/machines/fryer/deep_fryer_2.ogg differ diff --git a/sound/machines/fryer/deep_fryer_emerge.ogg b/sound/machines/fryer/deep_fryer_emerge.ogg index a803dd4c677..5572802b36f 100644 Binary files a/sound/machines/fryer/deep_fryer_emerge.ogg and b/sound/machines/fryer/deep_fryer_emerge.ogg differ diff --git a/sound/machines/fryer/deep_fryer_immerse.ogg b/sound/machines/fryer/deep_fryer_immerse.ogg index 3c06b865caa..0acbb46788e 100644 Binary files a/sound/machines/fryer/deep_fryer_immerse.ogg and b/sound/machines/fryer/deep_fryer_immerse.ogg differ diff --git a/sound/machines/generator/generator_end.ogg b/sound/machines/generator/generator_end.ogg index 43979911677..c3a5f2e27f5 100644 Binary files a/sound/machines/generator/generator_end.ogg and b/sound/machines/generator/generator_end.ogg differ diff --git a/sound/machines/generator/generator_mid1.ogg b/sound/machines/generator/generator_mid1.ogg index 10a0d01a7e7..61be7098e02 100644 Binary files a/sound/machines/generator/generator_mid1.ogg and b/sound/machines/generator/generator_mid1.ogg differ diff --git a/sound/machines/generator/generator_mid2.ogg b/sound/machines/generator/generator_mid2.ogg index 77656772ccf..c2d801badc7 100644 Binary files a/sound/machines/generator/generator_mid2.ogg and b/sound/machines/generator/generator_mid2.ogg differ diff --git a/sound/machines/generator/generator_mid3.ogg b/sound/machines/generator/generator_mid3.ogg index 812a10e6fce..47f4aa66a1e 100644 Binary files a/sound/machines/generator/generator_mid3.ogg and b/sound/machines/generator/generator_mid3.ogg differ diff --git a/sound/machines/generator/generator_start.ogg b/sound/machines/generator/generator_start.ogg index 53f734388e9..384dd18aa1e 100644 Binary files a/sound/machines/generator/generator_start.ogg and b/sound/machines/generator/generator_start.ogg differ diff --git a/sound/machines/hiss.ogg b/sound/machines/hiss.ogg index 23f18200e3e..a1b725eab93 100644 Binary files a/sound/machines/hiss.ogg and b/sound/machines/hiss.ogg differ diff --git a/sound/machines/honkbot_evil_laugh.ogg b/sound/machines/honkbot_evil_laugh.ogg index 4101d82742d..7b12edf8a32 100644 Binary files a/sound/machines/honkbot_evil_laugh.ogg and b/sound/machines/honkbot_evil_laugh.ogg differ diff --git a/sound/machines/juicer.ogg b/sound/machines/juicer.ogg index dad905fc6cf..affd524b84a 100644 Binary files a/sound/machines/juicer.ogg and b/sound/machines/juicer.ogg differ diff --git a/sound/machines/locktoggle.ogg b/sound/machines/locktoggle.ogg index d8af48d9318..85e9eb4ffa8 100644 Binary files a/sound/machines/locktoggle.ogg and b/sound/machines/locktoggle.ogg differ diff --git a/sound/machines/microwave/microwave-end.ogg b/sound/machines/microwave/microwave-end.ogg index 1c13d87e175..c3b143c1a11 100644 Binary files a/sound/machines/microwave/microwave-end.ogg and b/sound/machines/microwave/microwave-end.ogg differ diff --git a/sound/machines/microwave/microwave-mid1.ogg b/sound/machines/microwave/microwave-mid1.ogg index 60a0cc8ec5a..db62e01d380 100644 Binary files a/sound/machines/microwave/microwave-mid1.ogg and b/sound/machines/microwave/microwave-mid1.ogg differ diff --git a/sound/machines/microwave/microwave-mid2.ogg b/sound/machines/microwave/microwave-mid2.ogg index 3b3dd32c282..666ae8f71d7 100644 Binary files a/sound/machines/microwave/microwave-mid2.ogg and b/sound/machines/microwave/microwave-mid2.ogg differ diff --git a/sound/machines/microwave/microwave-start.ogg b/sound/machines/microwave/microwave-start.ogg index 5e59c78e8a9..22ad7abbfea 100644 Binary files a/sound/machines/microwave/microwave-start.ogg and b/sound/machines/microwave/microwave-start.ogg differ diff --git a/sound/machines/ping.ogg b/sound/machines/ping.ogg index 3516d48d259..3f8a27cfcd4 100644 Binary files a/sound/machines/ping.ogg and b/sound/machines/ping.ogg differ diff --git a/sound/machines/scanbuzz.ogg b/sound/machines/scanbuzz.ogg index 10dce346cd8..d3422bc8f4d 100644 Binary files a/sound/machines/scanbuzz.ogg and b/sound/machines/scanbuzz.ogg differ diff --git a/sound/machines/shower/shower_end.ogg b/sound/machines/shower/shower_end.ogg index 80b93af39eb..666a00af939 100644 Binary files a/sound/machines/shower/shower_end.ogg and b/sound/machines/shower/shower_end.ogg differ diff --git a/sound/machines/shower/shower_mid1.ogg b/sound/machines/shower/shower_mid1.ogg index e1ae5a0c456..f69de07e6c4 100644 Binary files a/sound/machines/shower/shower_mid1.ogg and b/sound/machines/shower/shower_mid1.ogg differ diff --git a/sound/machines/shower/shower_mid2.ogg b/sound/machines/shower/shower_mid2.ogg index 4a54acd3524..e3d6112d0a3 100644 Binary files a/sound/machines/shower/shower_mid2.ogg and b/sound/machines/shower/shower_mid2.ogg differ diff --git a/sound/machines/shower/shower_mid3.ogg b/sound/machines/shower/shower_mid3.ogg index 8b4776a9b97..2c3a286bd73 100644 Binary files a/sound/machines/shower/shower_mid3.ogg and b/sound/machines/shower/shower_mid3.ogg differ diff --git a/sound/machines/shower/shower_start.ogg b/sound/machines/shower/shower_start.ogg index e5529f401bb..a59559c5679 100644 Binary files a/sound/machines/shower/shower_start.ogg and b/sound/machines/shower/shower_start.ogg differ diff --git a/sound/machines/signal.ogg b/sound/machines/signal.ogg deleted file mode 100644 index 824e1adb94c..00000000000 Binary files a/sound/machines/signal.ogg and /dev/null differ diff --git a/sound/machines/sm/supermatter1.ogg b/sound/machines/sm/supermatter1.ogg index 1860e788005..be5185009eb 100644 Binary files a/sound/machines/sm/supermatter1.ogg and b/sound/machines/sm/supermatter1.ogg differ diff --git a/sound/machines/sm/supermatter2.ogg b/sound/machines/sm/supermatter2.ogg index fb2d39fe26a..5c98d28ed1c 100644 Binary files a/sound/machines/sm/supermatter2.ogg and b/sound/machines/sm/supermatter2.ogg differ diff --git a/sound/machines/sm/supermatter3.ogg b/sound/machines/sm/supermatter3.ogg index 93ac3d505b6..fb8e09166c3 100644 Binary files a/sound/machines/sm/supermatter3.ogg and b/sound/machines/sm/supermatter3.ogg differ diff --git a/sound/machines/terminal_alert.ogg b/sound/machines/terminal_alert.ogg index 0f5006ee42c..a790c03ebdf 100644 Binary files a/sound/machines/terminal_alert.ogg and b/sound/machines/terminal_alert.ogg differ diff --git a/sound/machines/terminal_button01.ogg b/sound/machines/terminal_button01.ogg index 362d81f3c57..88b10c88912 100644 Binary files a/sound/machines/terminal_button01.ogg and b/sound/machines/terminal_button01.ogg differ diff --git a/sound/machines/terminal_button02.ogg b/sound/machines/terminal_button02.ogg index 6df9b289b55..8b30fd892ee 100644 Binary files a/sound/machines/terminal_button02.ogg and b/sound/machines/terminal_button02.ogg differ diff --git a/sound/machines/terminal_button03.ogg b/sound/machines/terminal_button03.ogg index 3bd1e2c4259..7a00168cfc3 100644 Binary files a/sound/machines/terminal_button03.ogg and b/sound/machines/terminal_button03.ogg differ diff --git a/sound/machines/terminal_button04.ogg b/sound/machines/terminal_button04.ogg index f9020380d0a..c56b23919cc 100644 Binary files a/sound/machines/terminal_button04.ogg and b/sound/machines/terminal_button04.ogg differ diff --git a/sound/machines/terminal_button05.ogg b/sound/machines/terminal_button05.ogg index 0bbfefe5273..e660ecf154c 100644 Binary files a/sound/machines/terminal_button05.ogg and b/sound/machines/terminal_button05.ogg differ diff --git a/sound/machines/terminal_button06.ogg b/sound/machines/terminal_button06.ogg index ecb521f272c..bef143ac521 100644 Binary files a/sound/machines/terminal_button06.ogg and b/sound/machines/terminal_button06.ogg differ diff --git a/sound/machines/terminal_button07.ogg b/sound/machines/terminal_button07.ogg index a6ed66bbf26..91a31a1156a 100644 Binary files a/sound/machines/terminal_button07.ogg and b/sound/machines/terminal_button07.ogg differ diff --git a/sound/machines/terminal_button08.ogg b/sound/machines/terminal_button08.ogg index 2d35c62cc4c..fc0131f5f4e 100644 Binary files a/sound/machines/terminal_button08.ogg and b/sound/machines/terminal_button08.ogg differ diff --git a/sound/machines/terminal_insert_disc.ogg b/sound/machines/terminal_insert_disc.ogg index 07313dabaca..dd226c1ebde 100644 Binary files a/sound/machines/terminal_insert_disc.ogg and b/sound/machines/terminal_insert_disc.ogg differ diff --git a/sound/machines/terminal_off.ogg b/sound/machines/terminal_off.ogg index 4882aa924af..90da8d75daf 100644 Binary files a/sound/machines/terminal_off.ogg and b/sound/machines/terminal_off.ogg differ diff --git a/sound/machines/terminal_on.ogg b/sound/machines/terminal_on.ogg index 95164b5b774..3c69d85de54 100644 Binary files a/sound/machines/terminal_on.ogg and b/sound/machines/terminal_on.ogg differ diff --git a/sound/machines/terminal_prompt.ogg b/sound/machines/terminal_prompt.ogg index 1ff4930a263..74de1c9a298 100644 Binary files a/sound/machines/terminal_prompt.ogg and b/sound/machines/terminal_prompt.ogg differ diff --git a/sound/machines/terminal_prompt_confirm.ogg b/sound/machines/terminal_prompt_confirm.ogg index b838a764e8c..897fec28e9a 100644 Binary files a/sound/machines/terminal_prompt_confirm.ogg and b/sound/machines/terminal_prompt_confirm.ogg differ diff --git a/sound/machines/terminal_prompt_deny.ogg b/sound/machines/terminal_prompt_deny.ogg index c408c21625f..fda065f0d46 100644 Binary files a/sound/machines/terminal_prompt_deny.ogg and b/sound/machines/terminal_prompt_deny.ogg differ diff --git a/sound/machines/triple_beep.ogg b/sound/machines/triple_beep.ogg index dcd3539c811..891345e3a09 100644 Binary files a/sound/machines/triple_beep.ogg and b/sound/machines/triple_beep.ogg differ diff --git a/sound/machines/twobeep.ogg b/sound/machines/twobeep.ogg index 55929a4bd85..26fc5a95a57 100644 Binary files a/sound/machines/twobeep.ogg and b/sound/machines/twobeep.ogg differ diff --git a/sound/machines/twobeep_high.ogg b/sound/machines/twobeep_high.ogg new file mode 100644 index 00000000000..b97b39a4f01 Binary files /dev/null and b/sound/machines/twobeep_high.ogg differ diff --git a/sound/machines/ventcrawl.ogg b/sound/machines/ventcrawl.ogg index 2df8b5c8981..da6d25388d6 100644 Binary files a/sound/machines/ventcrawl.ogg and b/sound/machines/ventcrawl.ogg differ diff --git a/sound/machines/warning-buzzer.ogg b/sound/machines/warning-buzzer.ogg index 28a124588b9..55bb179f57d 100644 Binary files a/sound/machines/warning-buzzer.ogg and b/sound/machines/warning-buzzer.ogg differ diff --git a/sound/machines/windowdoor.ogg b/sound/machines/windowdoor.ogg index bc753a3d7d7..26f094b5971 100644 Binary files a/sound/machines/windowdoor.ogg and b/sound/machines/windowdoor.ogg differ diff --git a/sound/magic/RATTLEMEBONES.ogg b/sound/magic/RATTLEMEBONES.ogg index e606fa7a851..d42cf512533 100644 Binary files a/sound/magic/RATTLEMEBONES.ogg and b/sound/magic/RATTLEMEBONES.ogg differ diff --git a/sound/magic/RATTLEMEBONES2.ogg b/sound/magic/RATTLEMEBONES2.ogg index 29ff6db510a..7265a06aabc 100644 Binary files a/sound/magic/RATTLEMEBONES2.ogg and b/sound/magic/RATTLEMEBONES2.ogg differ diff --git a/sound/magic/blind.ogg b/sound/magic/blind.ogg index ded32a594e4..06efb11d285 100644 Binary files a/sound/magic/blind.ogg and b/sound/magic/blind.ogg differ diff --git a/sound/magic/blink.ogg b/sound/magic/blink.ogg index 58b7cc8562c..80c29df1e10 100644 Binary files a/sound/magic/blink.ogg and b/sound/magic/blink.ogg differ diff --git a/sound/magic/castsummon.ogg b/sound/magic/castsummon.ogg index 493fb239764..e88bb073b35 100644 Binary files a/sound/magic/castsummon.ogg and b/sound/magic/castsummon.ogg differ diff --git a/sound/magic/charge.ogg b/sound/magic/charge.ogg index bf27fb9ae99..5d95280b92d 100644 Binary files a/sound/magic/charge.ogg and b/sound/magic/charge.ogg differ diff --git a/sound/magic/clockwork/anima_fragment_attack.ogg b/sound/magic/clockwork/anima_fragment_attack.ogg index 4d311f36109..c2ffe3cdc4d 100644 Binary files a/sound/magic/clockwork/anima_fragment_attack.ogg and b/sound/magic/clockwork/anima_fragment_attack.ogg differ diff --git a/sound/magic/clockwork/anima_fragment_death.ogg b/sound/magic/clockwork/anima_fragment_death.ogg index b9437e6bf16..d3dd88af105 100644 Binary files a/sound/magic/clockwork/anima_fragment_death.ogg and b/sound/magic/clockwork/anima_fragment_death.ogg differ diff --git a/sound/magic/clockwork/ark_activation.ogg b/sound/magic/clockwork/ark_activation.ogg index 809ad36f3b7..4627f06c727 100644 Binary files a/sound/magic/clockwork/ark_activation.ogg and b/sound/magic/clockwork/ark_activation.ogg differ diff --git a/sound/magic/clockwork/fellowship_armory.ogg b/sound/magic/clockwork/fellowship_armory.ogg index c108d4621c6..bd7570de085 100644 Binary files a/sound/magic/clockwork/fellowship_armory.ogg and b/sound/magic/clockwork/fellowship_armory.ogg differ diff --git a/sound/magic/clockwork/invoke_general.ogg b/sound/magic/clockwork/invoke_general.ogg index 6f0c0dd097a..67ce0440100 100644 Binary files a/sound/magic/clockwork/invoke_general.ogg and b/sound/magic/clockwork/invoke_general.ogg differ diff --git a/sound/magic/clockwork/narsie_attack.ogg b/sound/magic/clockwork/narsie_attack.ogg index 89fac778058..244b86a1a8c 100644 Binary files a/sound/magic/clockwork/narsie_attack.ogg and b/sound/magic/clockwork/narsie_attack.ogg differ diff --git a/sound/magic/clockwork/ratvar_attack.ogg b/sound/magic/clockwork/ratvar_attack.ogg index 1c17fe10510..e2ba46cfc07 100644 Binary files a/sound/magic/clockwork/ratvar_attack.ogg and b/sound/magic/clockwork/ratvar_attack.ogg differ diff --git a/sound/magic/clockwork/scripture_tier_up.ogg b/sound/magic/clockwork/scripture_tier_up.ogg index a9d4926f759..7a8d51a4c08 100644 Binary files a/sound/magic/clockwork/scripture_tier_up.ogg and b/sound/magic/clockwork/scripture_tier_up.ogg differ diff --git a/sound/magic/cowhead_curse.ogg b/sound/magic/cowhead_curse.ogg index 993b50566f2..6453b9f20dd 100644 Binary files a/sound/magic/cowhead_curse.ogg and b/sound/magic/cowhead_curse.ogg differ diff --git a/sound/magic/curse.ogg b/sound/magic/curse.ogg index f75369e90f8..bda610416de 100644 Binary files a/sound/magic/curse.ogg and b/sound/magic/curse.ogg differ diff --git a/sound/magic/demon_attack1.ogg b/sound/magic/demon_attack1.ogg index e3c765afd0c..18b646f136b 100644 Binary files a/sound/magic/demon_attack1.ogg and b/sound/magic/demon_attack1.ogg differ diff --git a/sound/magic/demon_consume.ogg b/sound/magic/demon_consume.ogg index ef9276e74c0..2f8b51a7da9 100644 Binary files a/sound/magic/demon_consume.ogg and b/sound/magic/demon_consume.ogg differ diff --git a/sound/magic/demon_dies.ogg b/sound/magic/demon_dies.ogg index ad2a95f397d..c3ad866c6b3 100644 Binary files a/sound/magic/demon_dies.ogg and b/sound/magic/demon_dies.ogg differ diff --git a/sound/magic/disable_tech.ogg b/sound/magic/disable_tech.ogg index 478dd042b53..a42d279d0df 100644 Binary files a/sound/magic/disable_tech.ogg and b/sound/magic/disable_tech.ogg differ diff --git a/sound/magic/disintegrate.ogg b/sound/magic/disintegrate.ogg index d36217a5b34..568a1b43e4d 100644 Binary files a/sound/magic/disintegrate.ogg and b/sound/magic/disintegrate.ogg differ diff --git a/sound/magic/enter_blood.ogg b/sound/magic/enter_blood.ogg index 4deba11b465..fb1666e48ca 100644 Binary files a/sound/magic/enter_blood.ogg and b/sound/magic/enter_blood.ogg differ diff --git a/sound/magic/ethereal_enter.ogg b/sound/magic/ethereal_enter.ogg index a0c7222c167..bc7e08646bf 100644 Binary files a/sound/magic/ethereal_enter.ogg and b/sound/magic/ethereal_enter.ogg differ diff --git a/sound/magic/ethereal_exit.ogg b/sound/magic/ethereal_exit.ogg index bd60ca8c695..43c5b6f35bf 100644 Binary files a/sound/magic/ethereal_exit.ogg and b/sound/magic/ethereal_exit.ogg differ diff --git a/sound/magic/exit_blood.ogg b/sound/magic/exit_blood.ogg index c4399a2ecc6..b7f93dfd473 100644 Binary files a/sound/magic/exit_blood.ogg and b/sound/magic/exit_blood.ogg differ diff --git a/sound/magic/fireball.ogg b/sound/magic/fireball.ogg index b9f6937f06b..e6dbad210b1 100644 Binary files a/sound/magic/fireball.ogg and b/sound/magic/fireball.ogg differ diff --git a/sound/magic/fleshtostone.ogg b/sound/magic/fleshtostone.ogg index 9033d4425ed..70c30a49658 100644 Binary files a/sound/magic/fleshtostone.ogg and b/sound/magic/fleshtostone.ogg differ diff --git a/sound/magic/forcewall.ogg b/sound/magic/forcewall.ogg index 4fbca3f42b7..ea6224d769a 100644 Binary files a/sound/magic/forcewall.ogg and b/sound/magic/forcewall.ogg differ diff --git a/sound/magic/horsehead_curse.ogg b/sound/magic/horsehead_curse.ogg index 598d096036b..ea1ca541e6a 100644 Binary files a/sound/magic/horsehead_curse.ogg and b/sound/magic/horsehead_curse.ogg differ diff --git a/sound/magic/knock.ogg b/sound/magic/knock.ogg index fe2f54f97ac..3c5d75ffcc2 100644 Binary files a/sound/magic/knock.ogg and b/sound/magic/knock.ogg differ diff --git a/sound/magic/lightning_chargeup.ogg b/sound/magic/lightning_chargeup.ogg index 0af44495024..4889b613248 100644 Binary files a/sound/magic/lightning_chargeup.ogg and b/sound/magic/lightning_chargeup.ogg differ diff --git a/sound/magic/lightningbolt.ogg b/sound/magic/lightningbolt.ogg index e5f6a5731ad..df3145a08ae 100644 Binary files a/sound/magic/lightningbolt.ogg and b/sound/magic/lightningbolt.ogg differ diff --git a/sound/magic/lightningshock.ogg b/sound/magic/lightningshock.ogg index 341a2934d6b..25853bec607 100644 Binary files a/sound/magic/lightningshock.ogg and b/sound/magic/lightningshock.ogg differ diff --git a/sound/magic/magic_missile.ogg b/sound/magic/magic_missile.ogg index 9d0799d82e9..dace7e711c0 100644 Binary files a/sound/magic/magic_missile.ogg and b/sound/magic/magic_missile.ogg differ diff --git a/sound/magic/mandswap.ogg b/sound/magic/mandswap.ogg index 2f4848becb0..88d62c0459b 100644 Binary files a/sound/magic/mandswap.ogg and b/sound/magic/mandswap.ogg differ diff --git a/sound/magic/mm_hit.ogg b/sound/magic/mm_hit.ogg index 4f09ef46d51..29a4e629c33 100644 Binary files a/sound/magic/mm_hit.ogg and b/sound/magic/mm_hit.ogg differ diff --git a/sound/magic/mutate.ogg b/sound/magic/mutate.ogg index d31514f310b..85b674c9aee 100644 Binary files a/sound/magic/mutate.ogg and b/sound/magic/mutate.ogg differ diff --git a/sound/magic/pighead_curse.ogg b/sound/magic/pighead_curse.ogg index 4195e40ba6b..42d69c0fe81 100644 Binary files a/sound/magic/pighead_curse.ogg and b/sound/magic/pighead_curse.ogg differ diff --git a/sound/magic/repulse.ogg b/sound/magic/repulse.ogg index ed010370754..fdba4f6e29d 100644 Binary files a/sound/magic/repulse.ogg and b/sound/magic/repulse.ogg differ diff --git a/sound/magic/smoke.ogg b/sound/magic/smoke.ogg index ca50a349676..61d1ffe980c 100644 Binary files a/sound/magic/smoke.ogg and b/sound/magic/smoke.ogg differ diff --git a/sound/magic/staff_animation.ogg b/sound/magic/staff_animation.ogg index 8abd7faa60f..8d9e9e8a25e 100644 Binary files a/sound/magic/staff_animation.ogg and b/sound/magic/staff_animation.ogg differ diff --git a/sound/magic/staff_change.ogg b/sound/magic/staff_change.ogg index 9e6eb72ae06..60020364da2 100644 Binary files a/sound/magic/staff_change.ogg and b/sound/magic/staff_change.ogg differ diff --git a/sound/magic/staff_chaos.ogg b/sound/magic/staff_chaos.ogg index e8b1c0e6adf..03a2ee3cf57 100644 Binary files a/sound/magic/staff_chaos.ogg and b/sound/magic/staff_chaos.ogg differ diff --git a/sound/magic/staff_door.ogg b/sound/magic/staff_door.ogg index 220f8124825..1aa29545c34 100644 Binary files a/sound/magic/staff_door.ogg and b/sound/magic/staff_door.ogg differ diff --git a/sound/magic/staff_healing.ogg b/sound/magic/staff_healing.ogg index af2a56049c8..1e1657aea1b 100644 Binary files a/sound/magic/staff_healing.ogg and b/sound/magic/staff_healing.ogg differ diff --git a/sound/magic/summon_guns.ogg b/sound/magic/summon_guns.ogg index b9b5394a4ed..2f87b903eb3 100644 Binary files a/sound/magic/summon_guns.ogg and b/sound/magic/summon_guns.ogg differ diff --git a/sound/magic/summon_karp.ogg b/sound/magic/summon_karp.ogg index d3890776f6d..d00ecf61f5a 100644 Binary files a/sound/magic/summon_karp.ogg and b/sound/magic/summon_karp.ogg differ diff --git a/sound/magic/summon_magic.ogg b/sound/magic/summon_magic.ogg index 86b33032826..cd9097194a1 100644 Binary files a/sound/magic/summon_magic.ogg and b/sound/magic/summon_magic.ogg differ diff --git a/sound/magic/summonitems_generic.ogg b/sound/magic/summonitems_generic.ogg index 80cc412a4a8..b8ff9bc42e0 100644 Binary files a/sound/magic/summonitems_generic.ogg and b/sound/magic/summonitems_generic.ogg differ diff --git a/sound/magic/tail_swing.ogg b/sound/magic/tail_swing.ogg index d39462fae30..9f345166be8 100644 Binary files a/sound/magic/tail_swing.ogg and b/sound/magic/tail_swing.ogg differ diff --git a/sound/magic/teleport_app.ogg b/sound/magic/teleport_app.ogg index dd9222ae0c3..9dc97c802b4 100644 Binary files a/sound/magic/teleport_app.ogg and b/sound/magic/teleport_app.ogg differ diff --git a/sound/magic/teleport_diss.ogg b/sound/magic/teleport_diss.ogg index edc0c55ed00..163ca45f393 100644 Binary files a/sound/magic/teleport_diss.ogg and b/sound/magic/teleport_diss.ogg differ diff --git a/sound/magic/timeparadox2.ogg b/sound/magic/timeparadox2.ogg index 1a025a895b0..3e3df99f63e 100644 Binary files a/sound/magic/timeparadox2.ogg and b/sound/magic/timeparadox2.ogg differ diff --git a/sound/magic/wand_teleport.ogg b/sound/magic/wand_teleport.ogg index 8a300d7763f..fa918d666e0 100644 Binary files a/sound/magic/wand_teleport.ogg and b/sound/magic/wand_teleport.ogg differ diff --git a/sound/magic/wandodeath.ogg b/sound/magic/wandodeath.ogg index 4412609657c..f898478c2b1 100644 Binary files a/sound/magic/wandodeath.ogg and b/sound/magic/wandodeath.ogg differ diff --git a/sound/magic/warpwhistle.ogg b/sound/magic/warpwhistle.ogg index 7a0822b540d..f1867bcaec9 100644 Binary files a/sound/magic/warpwhistle.ogg and b/sound/magic/warpwhistle.ogg differ diff --git a/sound/mecha/critdestr.ogg b/sound/mecha/critdestr.ogg index 8d41f46338d..c34639d08f6 100644 Binary files a/sound/mecha/critdestr.ogg and b/sound/mecha/critdestr.ogg differ diff --git a/sound/mecha/imag_enh.ogg b/sound/mecha/imag_enh.ogg index 624c6504dd0..3917dfc415e 100644 Binary files a/sound/mecha/imag_enh.ogg and b/sound/mecha/imag_enh.ogg differ diff --git a/sound/mecha/mechmove01.ogg b/sound/mecha/mechmove01.ogg index 9a3ce595a82..55f83b22d8c 100644 Binary files a/sound/mecha/mechmove01.ogg and b/sound/mecha/mechmove01.ogg differ diff --git a/sound/mecha/mechmove03.ogg b/sound/mecha/mechmove03.ogg index 5eca39d8e9a..44ec14d9619 100644 Binary files a/sound/mecha/mechmove03.ogg and b/sound/mecha/mechmove03.ogg differ diff --git a/sound/mecha/mechmove04.ogg b/sound/mecha/mechmove04.ogg index fab264aea5c..7441ed85154 100644 Binary files a/sound/mecha/mechmove04.ogg and b/sound/mecha/mechmove04.ogg differ diff --git a/sound/mecha/mechstep.ogg b/sound/mecha/mechstep.ogg index 66540860df7..45119bb7685 100644 Binary files a/sound/mecha/mechstep.ogg and b/sound/mecha/mechstep.ogg differ diff --git a/sound/mecha/mechturn.ogg b/sound/mecha/mechturn.ogg index 67dc345c026..44de9ce99c3 100644 Binary files a/sound/mecha/mechturn.ogg and b/sound/mecha/mechturn.ogg differ diff --git a/sound/mecha/nominal.ogg b/sound/mecha/nominal.ogg index 3b44021e787..b89bd39616a 100644 Binary files a/sound/mecha/nominal.ogg and b/sound/mecha/nominal.ogg differ diff --git a/sound/mecha/weapdestr.ogg b/sound/mecha/weapdestr.ogg index 3864de002e1..56371d75236 100644 Binary files a/sound/mecha/weapdestr.ogg and b/sound/mecha/weapdestr.ogg differ diff --git a/sound/misc/Cyka Blyat.ogg b/sound/misc/Cyka Blyat.ogg index 24c4ddd11b4..ca5c8fd49be 100644 Binary files a/sound/misc/Cyka Blyat.ogg and b/sound/misc/Cyka Blyat.ogg differ diff --git a/sound/misc/Russian_Anthem_chorus.ogg b/sound/misc/Russian_Anthem_chorus.ogg index fc765ac1ce2..0105eb7f22a 100644 Binary files a/sound/misc/Russian_Anthem_chorus.ogg and b/sound/misc/Russian_Anthem_chorus.ogg differ diff --git a/sound/misc/bang.ogg b/sound/misc/bang.ogg index 30bffca4fe4..c187a748ec4 100644 Binary files a/sound/misc/bang.ogg and b/sound/misc/bang.ogg differ diff --git a/sound/misc/bloblarm.ogg b/sound/misc/bloblarm.ogg index 50ba29739f5..a791d95daad 100644 Binary files a/sound/misc/bloblarm.ogg and b/sound/misc/bloblarm.ogg differ diff --git a/sound/misc/box_deploy.ogg b/sound/misc/box_deploy.ogg index 3fbe895950e..750328e279d 100644 Binary files a/sound/misc/box_deploy.ogg and b/sound/misc/box_deploy.ogg differ diff --git a/sound/misc/capitialism.ogg b/sound/misc/capitialism.ogg index 84df817a33f..8645fc6ed72 100644 Binary files a/sound/misc/capitialism.ogg and b/sound/misc/capitialism.ogg differ diff --git a/sound/misc/clap1.ogg b/sound/misc/clap1.ogg index a9a6cc71f83..da0f7eded79 100644 Binary files a/sound/misc/clap1.ogg and b/sound/misc/clap1.ogg differ diff --git a/sound/misc/highlander.ogg b/sound/misc/highlander.ogg index 01148b55dbf..c9203780e67 100644 Binary files a/sound/misc/highlander.ogg and b/sound/misc/highlander.ogg differ diff --git a/sound/misc/highlander_delayed.ogg b/sound/misc/highlander_delayed.ogg index 26453496628..aa96e173618 100644 Binary files a/sound/misc/highlander_delayed.ogg and b/sound/misc/highlander_delayed.ogg differ diff --git a/sound/misc/highlander_only_one.ogg b/sound/misc/highlander_only_one.ogg index 6458d10ab65..30bee0a3ddb 100644 Binary files a/sound/misc/highlander_only_one.ogg and b/sound/misc/highlander_only_one.ogg differ diff --git a/sound/misc/interference.ogg b/sound/misc/interference.ogg index e6d7b340028..bd4385142f5 100644 Binary files a/sound/misc/interference.ogg and b/sound/misc/interference.ogg differ diff --git a/sound/misc/sadtrombone.ogg b/sound/misc/sadtrombone.ogg index 788d263cba9..565c76d523a 100644 Binary files a/sound/misc/sadtrombone.ogg and b/sound/misc/sadtrombone.ogg differ diff --git a/sound/misc/splort.ogg b/sound/misc/splort.ogg index c7990454446..00f1abf8cea 100644 Binary files a/sound/misc/splort.ogg and b/sound/misc/splort.ogg differ diff --git a/sound/roundend/scrunglartiy.ogg b/sound/roundend/scrunglartiy.ogg new file mode 100644 index 00000000000..8019b567449 Binary files /dev/null and b/sound/roundend/scrunglartiy.ogg differ diff --git a/sound/standard.md b/sound/standard.md new file mode 100644 index 00000000000..b81e93e489c --- /dev/null +++ b/sound/standard.md @@ -0,0 +1,18 @@ +Standard audio file format is: +Ogg Vorbis on quality 5 preset, 44.1khz sample rate +Audio which plays with a source and direction (via playsound()) should be downmixed to mono, otherwise byond will do it itself. +Other sounds can be stereo + +If you don't know what this means, here's a brief guide on how to do things right in audacity: + +Project Rate (Hz) in the bottom right should be set to 44100 before exporting + +If the sound is going to play to all players at the same time with no source, it can be left as stereo. + +If it is going to play from a source with a direction, it should be mono. +You can downmix in audacity directly, use Tracks > Mix > Mix Stereo Down to Mono +If the option is greyed out, try clicking the track first. If it's still greyed out, it's likely already mono. + +To export, go to File > Export > Export as OGG. Once the dialogue pops up, give the file a name, and set the Quality slider at the bottom to dead center so the bottom number displays 5. + +That's it, you now have a properly exported file diff --git a/sound/vehicles/carcannon1.ogg b/sound/vehicles/carcannon1.ogg index 58cf9e3c054..751fa6f7546 100644 Binary files a/sound/vehicles/carcannon1.ogg and b/sound/vehicles/carcannon1.ogg differ diff --git a/sound/vehicles/carcannon2.ogg b/sound/vehicles/carcannon2.ogg index 22e0fdb0a22..7bc86d7cbca 100644 Binary files a/sound/vehicles/carcannon2.ogg and b/sound/vehicles/carcannon2.ogg differ diff --git a/sound/vehicles/carcannon3.ogg b/sound/vehicles/carcannon3.ogg index 27755c1e766..80407e553fd 100644 Binary files a/sound/vehicles/carcannon3.ogg and b/sound/vehicles/carcannon3.ogg differ diff --git a/sound/vehicles/carrev.ogg b/sound/vehicles/carrev.ogg index ef03830d32f..1d515f9c641 100644 Binary files a/sound/vehicles/carrev.ogg and b/sound/vehicles/carrev.ogg differ diff --git a/sound/vehicles/clowncar_cannonmode1.ogg b/sound/vehicles/clowncar_cannonmode1.ogg index 93ca53e286e..aa21c8f9906 100644 Binary files a/sound/vehicles/clowncar_cannonmode1.ogg and b/sound/vehicles/clowncar_cannonmode1.ogg differ diff --git a/sound/vehicles/clowncar_cannonmode2.ogg b/sound/vehicles/clowncar_cannonmode2.ogg index ad6144174c5..931e1464229 100644 Binary files a/sound/vehicles/clowncar_cannonmode2.ogg and b/sound/vehicles/clowncar_cannonmode2.ogg differ diff --git a/sound/vehicles/clowncar_crash1.ogg b/sound/vehicles/clowncar_crash1.ogg index 34a6c0c7c76..681a483f4ca 100644 Binary files a/sound/vehicles/clowncar_crash1.ogg and b/sound/vehicles/clowncar_crash1.ogg differ diff --git a/sound/vehicles/clowncar_crash2.ogg b/sound/vehicles/clowncar_crash2.ogg index 5bcbd326104..fcd1164770e 100644 Binary files a/sound/vehicles/clowncar_crash2.ogg and b/sound/vehicles/clowncar_crash2.ogg differ diff --git a/sound/vehicles/clowncar_crashpins.ogg b/sound/vehicles/clowncar_crashpins.ogg index 7503c8caf2d..e2419ef2bbb 100644 Binary files a/sound/vehicles/clowncar_crashpins.ogg and b/sound/vehicles/clowncar_crashpins.ogg differ diff --git a/sound/vehicles/clowncar_fart.ogg b/sound/vehicles/clowncar_fart.ogg index 05d9d546387..ba14ff9abf8 100644 Binary files a/sound/vehicles/clowncar_fart.ogg and b/sound/vehicles/clowncar_fart.ogg differ diff --git a/sound/vehicles/clowncar_load1.ogg b/sound/vehicles/clowncar_load1.ogg index 2adb41129f6..d4b0c605331 100644 Binary files a/sound/vehicles/clowncar_load1.ogg and b/sound/vehicles/clowncar_load1.ogg differ diff --git a/sound/vehicles/clowncar_load2.ogg b/sound/vehicles/clowncar_load2.ogg index 5315e1f3b33..19ac5cf4d9c 100644 Binary files a/sound/vehicles/clowncar_load2.ogg and b/sound/vehicles/clowncar_load2.ogg differ diff --git a/sound/vehicles/clowncar_ram1.ogg b/sound/vehicles/clowncar_ram1.ogg index 86e0653a2df..4f5fea8971f 100644 Binary files a/sound/vehicles/clowncar_ram1.ogg and b/sound/vehicles/clowncar_ram1.ogg differ diff --git a/sound/vehicles/clowncar_ram2.ogg b/sound/vehicles/clowncar_ram2.ogg index 88b54155853..171e0cbb285 100644 Binary files a/sound/vehicles/clowncar_ram2.ogg and b/sound/vehicles/clowncar_ram2.ogg differ diff --git a/sound/vehicles/clowncar_ram3.ogg b/sound/vehicles/clowncar_ram3.ogg index a19bda8a4c2..f4c48a47d7e 100644 Binary files a/sound/vehicles/clowncar_ram3.ogg and b/sound/vehicles/clowncar_ram3.ogg differ diff --git a/sound/vehicles/rocketlaunch.ogg b/sound/vehicles/rocketlaunch.ogg index d0ee9c72487..e671fbff156 100644 Binary files a/sound/vehicles/rocketlaunch.ogg and b/sound/vehicles/rocketlaunch.ogg differ diff --git a/sound/voice/ApproachingTG.ogg b/sound/voice/ApproachingTG.ogg index bc4b6f5f216..3f8bc1c4880 100644 Binary files a/sound/voice/ApproachingTG.ogg and b/sound/voice/ApproachingTG.ogg differ diff --git a/sound/voice/beepsky/creep.ogg b/sound/voice/beepsky/creep.ogg index 748171443eb..b59e6604ba2 100644 Binary files a/sound/voice/beepsky/creep.ogg and b/sound/voice/beepsky/creep.ogg differ diff --git a/sound/voice/beepsky/criminal.ogg b/sound/voice/beepsky/criminal.ogg index 5a3da31bcd6..2275a9f7d1e 100644 Binary files a/sound/voice/beepsky/criminal.ogg and b/sound/voice/beepsky/criminal.ogg differ diff --git a/sound/voice/beepsky/freeze.ogg b/sound/voice/beepsky/freeze.ogg index 488f429870b..f0078b74d89 100644 Binary files a/sound/voice/beepsky/freeze.ogg and b/sound/voice/beepsky/freeze.ogg differ diff --git a/sound/voice/beepsky/god.ogg b/sound/voice/beepsky/god.ogg index 66d5043de80..bf67fda9186 100644 Binary files a/sound/voice/beepsky/god.ogg and b/sound/voice/beepsky/god.ogg differ diff --git a/sound/voice/beepsky/iamthelaw.ogg b/sound/voice/beepsky/iamthelaw.ogg index 93f71d30a4a..f5d0a1f091e 100644 Binary files a/sound/voice/beepsky/iamthelaw.ogg and b/sound/voice/beepsky/iamthelaw.ogg differ diff --git a/sound/voice/beepsky/insult.ogg b/sound/voice/beepsky/insult.ogg index 449be1c53da..d1302afd5be 100644 Binary files a/sound/voice/beepsky/insult.ogg and b/sound/voice/beepsky/insult.ogg differ diff --git a/sound/voice/beepsky/justice.ogg b/sound/voice/beepsky/justice.ogg index ae998dd95bd..c45952d4c2c 100644 Binary files a/sound/voice/beepsky/justice.ogg and b/sound/voice/beepsky/justice.ogg differ diff --git a/sound/voice/beepsky/radio.ogg b/sound/voice/beepsky/radio.ogg index 2b6a7769ddf..d3bc86d64bd 100644 Binary files a/sound/voice/beepsky/radio.ogg and b/sound/voice/beepsky/radio.ogg differ diff --git a/sound/voice/beepsky/secureday.ogg b/sound/voice/beepsky/secureday.ogg index 340f6bdac17..2ad486b2ef0 100644 Binary files a/sound/voice/beepsky/secureday.ogg and b/sound/voice/beepsky/secureday.ogg differ diff --git a/sound/voice/borg_deathsound.ogg b/sound/voice/borg_deathsound.ogg index 06e847165ff..bb11022abec 100644 Binary files a/sound/voice/borg_deathsound.ogg and b/sound/voice/borg_deathsound.ogg differ diff --git a/sound/voice/complionator/asshole.ogg b/sound/voice/complionator/asshole.ogg index 73a700c0dce..a6a326abe49 100644 Binary files a/sound/voice/complionator/asshole.ogg and b/sound/voice/complionator/asshole.ogg differ diff --git a/sound/voice/complionator/bash.ogg b/sound/voice/complionator/bash.ogg index 0a147a82d1d..c14feb5b5fe 100644 Binary files a/sound/voice/complionator/bash.ogg and b/sound/voice/complionator/bash.ogg differ diff --git a/sound/voice/complionator/bobby.ogg b/sound/voice/complionator/bobby.ogg index 9f18ad95041..b4a6a890f20 100644 Binary files a/sound/voice/complionator/bobby.ogg and b/sound/voice/complionator/bobby.ogg differ diff --git a/sound/voice/complionator/compliance.ogg b/sound/voice/complionator/compliance.ogg index bd16c951ec3..231f70aa36d 100644 Binary files a/sound/voice/complionator/compliance.ogg and b/sound/voice/complionator/compliance.ogg differ diff --git a/sound/voice/complionator/dontmove.ogg b/sound/voice/complionator/dontmove.ogg index 86e3a01e5af..cb3ee03f7bc 100644 Binary files a/sound/voice/complionator/dontmove.ogg and b/sound/voice/complionator/dontmove.ogg differ diff --git a/sound/voice/complionator/dredd.ogg b/sound/voice/complionator/dredd.ogg index 8c135ae42b3..8a3010489e2 100644 Binary files a/sound/voice/complionator/dredd.ogg and b/sound/voice/complionator/dredd.ogg differ diff --git a/sound/voice/complionator/emag.ogg b/sound/voice/complionator/emag.ogg index 449be1c53da..89ec997ac94 100644 Binary files a/sound/voice/complionator/emag.ogg and b/sound/voice/complionator/emag.ogg differ diff --git a/sound/voice/complionator/floor.ogg b/sound/voice/complionator/floor.ogg index eac8a3b8fc1..0e29c78143b 100644 Binary files a/sound/voice/complionator/floor.ogg and b/sound/voice/complionator/floor.ogg differ diff --git a/sound/voice/complionator/freeze.ogg b/sound/voice/complionator/freeze.ogg index 6dfd41c00a5..1be9ba7361b 100644 Binary files a/sound/voice/complionator/freeze.ogg and b/sound/voice/complionator/freeze.ogg differ diff --git a/sound/voice/complionator/god.ogg b/sound/voice/complionator/god.ogg index 6bb3dbe0c7e..a109e2a351a 100644 Binary files a/sound/voice/complionator/god.ogg and b/sound/voice/complionator/god.ogg differ diff --git a/sound/voice/complionator/halt.ogg b/sound/voice/complionator/halt.ogg index 205520ad29d..457091f4ce5 100644 Binary files a/sound/voice/complionator/halt.ogg and b/sound/voice/complionator/halt.ogg differ diff --git a/sound/voice/complionator/harry.ogg b/sound/voice/complionator/harry.ogg index f51bb5d2a1a..2ff2acc8565 100644 Binary files a/sound/voice/complionator/harry.ogg and b/sound/voice/complionator/harry.ogg differ diff --git a/sound/voice/complionator/imperial.ogg b/sound/voice/complionator/imperial.ogg index 7327b1a0b8c..df40102de18 100644 Binary files a/sound/voice/complionator/imperial.ogg and b/sound/voice/complionator/imperial.ogg differ diff --git a/sound/voice/complionator/justice.ogg b/sound/voice/complionator/justice.ogg index 8dd0333c8c2..14409495ca0 100644 Binary files a/sound/voice/complionator/justice.ogg and b/sound/voice/complionator/justice.ogg differ diff --git a/sound/voice/complionator/robocop.ogg b/sound/voice/complionator/robocop.ogg index cc5b5e7eb5f..f7a19c78505 100644 Binary files a/sound/voice/complionator/robocop.ogg and b/sound/voice/complionator/robocop.ogg differ diff --git a/sound/voice/complionator/running.ogg b/sound/voice/complionator/running.ogg index 761d4b71eac..82d68cdf2f2 100644 Binary files a/sound/voice/complionator/running.ogg and b/sound/voice/complionator/running.ogg differ diff --git a/sound/voice/complionator/shutup.ogg b/sound/voice/complionator/shutup.ogg index b7b850fd75e..8ca70a0989d 100644 Binary files a/sound/voice/complionator/shutup.ogg and b/sound/voice/complionator/shutup.ogg differ diff --git a/sound/voice/complionator/stfu.ogg b/sound/voice/complionator/stfu.ogg index 906b8b0e12d..44c878ac119 100644 Binary files a/sound/voice/complionator/stfu.ogg and b/sound/voice/complionator/stfu.ogg differ diff --git a/sound/voice/complionator/super.ogg b/sound/voice/complionator/super.ogg index c81d70c29cd..2ec5183ae6b 100644 Binary files a/sound/voice/complionator/super.ogg and b/sound/voice/complionator/super.ogg differ diff --git a/sound/voice/credits.txt b/sound/voice/credits.txt index 7796d40ad04..dcde96fc5e5 100644 --- a/sound/voice/credits.txt +++ b/sound/voice/credits.txt @@ -1 +1,3 @@ -borg_deathsound.ogg is spliced from two clips, both of which are under the CC Attribution license. The sound at https://freesound.org/people/simmfoc/sounds/28477/ was pitched down, sped up, and repeated a few times. https://freesound.org/people/nicStage/sounds/1522/ is then attached with a fadeout effect and lowered volume. \ No newline at end of file +borg_deathsound.ogg is spliced from two clips, both of which are under the CC Attribution license. The sound at https://freesound.org/people/simmfoc/sounds/28477/ was pitched down, sped up, and repeated a few times. https://freesound.org/people/nicStage/sounds/1522/ is then attached with a fadeout effect and lowered volume. + +all complianator sounds are licensed under CC-BY-SA by Michael Haugh (supermichael) diff --git a/sound/voice/ed209_20sec.ogg b/sound/voice/ed209_20sec.ogg index d1ab901084d..aef46abb3e6 100644 Binary files a/sound/voice/ed209_20sec.ogg and b/sound/voice/ed209_20sec.ogg differ diff --git a/sound/voice/edplaceholder.ogg b/sound/voice/edplaceholder.ogg index 501f8f33c35..b5fd1170dcf 100644 Binary files a/sound/voice/edplaceholder.ogg and b/sound/voice/edplaceholder.ogg differ diff --git a/sound/voice/firebot/detected.ogg b/sound/voice/firebot/detected.ogg new file mode 100644 index 00000000000..85d554df42f Binary files /dev/null and b/sound/voice/firebot/detected.ogg differ diff --git a/sound/voice/firebot/extinguishing.ogg b/sound/voice/firebot/extinguishing.ogg new file mode 100644 index 00000000000..997210b2d3b Binary files /dev/null and b/sound/voice/firebot/extinguishing.ogg differ diff --git a/sound/voice/firebot/keepitcool.ogg b/sound/voice/firebot/keepitcool.ogg new file mode 100644 index 00000000000..794a557dcc5 Binary files /dev/null and b/sound/voice/firebot/keepitcool.ogg differ diff --git a/sound/voice/firebot/nofires.ogg b/sound/voice/firebot/nofires.ogg new file mode 100644 index 00000000000..83970a8ba70 Binary files /dev/null and b/sound/voice/firebot/nofires.ogg differ diff --git a/sound/voice/firebot/onlyyou.ogg b/sound/voice/firebot/onlyyou.ogg new file mode 100644 index 00000000000..4ca620b1178 Binary files /dev/null and b/sound/voice/firebot/onlyyou.ogg differ diff --git a/sound/voice/firebot/stopdropnroll.ogg b/sound/voice/firebot/stopdropnroll.ogg new file mode 100644 index 00000000000..1aaeb55f93e Binary files /dev/null and b/sound/voice/firebot/stopdropnroll.ogg differ diff --git a/sound/voice/firebot/tempnominal.ogg b/sound/voice/firebot/tempnominal.ogg new file mode 100644 index 00000000000..97c4b460416 Binary files /dev/null and b/sound/voice/firebot/tempnominal.ogg differ diff --git a/sound/voice/hiss1.ogg b/sound/voice/hiss1.ogg index f226d32c4a0..cf1061c1d20 100644 Binary files a/sound/voice/hiss1.ogg and b/sound/voice/hiss1.ogg differ diff --git a/sound/voice/hiss2.ogg b/sound/voice/hiss2.ogg index f518943aec2..c88ad43cebb 100644 Binary files a/sound/voice/hiss2.ogg and b/sound/voice/hiss2.ogg differ diff --git a/sound/voice/hiss3.ogg b/sound/voice/hiss3.ogg index 380f43194f8..ecc431fb9ab 100644 Binary files a/sound/voice/hiss3.ogg and b/sound/voice/hiss3.ogg differ diff --git a/sound/voice/hiss4.ogg b/sound/voice/hiss4.ogg index 7a3365610d3..e81ccc9d4e6 100644 Binary files a/sound/voice/hiss4.ogg and b/sound/voice/hiss4.ogg differ diff --git a/sound/voice/hiss5.ogg b/sound/voice/hiss5.ogg index 522ead87519..6b3a345c956 100644 Binary files a/sound/voice/hiss5.ogg and b/sound/voice/hiss5.ogg differ diff --git a/sound/voice/hiss6.ogg b/sound/voice/hiss6.ogg index af82cbd975e..ef11522f3ab 100644 Binary files a/sound/voice/hiss6.ogg and b/sound/voice/hiss6.ogg differ diff --git a/sound/voice/human/femalescream_1.ogg b/sound/voice/human/femalescream_1.ogg index 8e8b5b0e79f..c0f80a1408d 100644 Binary files a/sound/voice/human/femalescream_1.ogg and b/sound/voice/human/femalescream_1.ogg differ diff --git a/sound/voice/human/femalescream_2.ogg b/sound/voice/human/femalescream_2.ogg index cf7ec9a8101..978a236dd1f 100644 Binary files a/sound/voice/human/femalescream_2.ogg and b/sound/voice/human/femalescream_2.ogg differ diff --git a/sound/voice/human/femalescream_3.ogg b/sound/voice/human/femalescream_3.ogg index 910532fabe6..30e4150a564 100644 Binary files a/sound/voice/human/femalescream_3.ogg and b/sound/voice/human/femalescream_3.ogg differ diff --git a/sound/voice/human/femalescream_4.ogg b/sound/voice/human/femalescream_4.ogg index 5abdcb33b2f..bb73a1ef5d1 100644 Binary files a/sound/voice/human/femalescream_4.ogg and b/sound/voice/human/femalescream_4.ogg differ diff --git a/sound/voice/human/femalescream_5.ogg b/sound/voice/human/femalescream_5.ogg index 8f97929b0a3..96a08297b2b 100644 Binary files a/sound/voice/human/femalescream_5.ogg and b/sound/voice/human/femalescream_5.ogg differ diff --git a/sound/voice/human/malescream_1.ogg b/sound/voice/human/malescream_1.ogg index 2484932423e..ee9005b8922 100644 Binary files a/sound/voice/human/malescream_1.ogg and b/sound/voice/human/malescream_1.ogg differ diff --git a/sound/voice/human/malescream_2.ogg b/sound/voice/human/malescream_2.ogg index ab510b19ffb..989b612ab15 100644 Binary files a/sound/voice/human/malescream_2.ogg and b/sound/voice/human/malescream_2.ogg differ diff --git a/sound/voice/human/malescream_3.ogg b/sound/voice/human/malescream_3.ogg index 89ddf483598..902db1c132c 100644 Binary files a/sound/voice/human/malescream_3.ogg and b/sound/voice/human/malescream_3.ogg differ diff --git a/sound/voice/human/malescream_4.ogg b/sound/voice/human/malescream_4.ogg index 39f722f51cf..62f787d4a7b 100644 Binary files a/sound/voice/human/malescream_4.ogg and b/sound/voice/human/malescream_4.ogg differ diff --git a/sound/voice/human/malescream_5.ogg b/sound/voice/human/malescream_5.ogg index 68d0d78f971..2aec2c7149c 100644 Binary files a/sound/voice/human/malescream_5.ogg and b/sound/voice/human/malescream_5.ogg differ diff --git a/sound/voice/human/manlaugh1.ogg b/sound/voice/human/manlaugh1.ogg index 4033e04eac3..957d7a65291 100644 Binary files a/sound/voice/human/manlaugh1.ogg and b/sound/voice/human/manlaugh1.ogg differ diff --git a/sound/voice/human/manlaugh2.ogg b/sound/voice/human/manlaugh2.ogg index dba2e80c257..fe6c0c9b7bf 100644 Binary files a/sound/voice/human/manlaugh2.ogg and b/sound/voice/human/manlaugh2.ogg differ diff --git a/sound/voice/human/wilhelm_scream.ogg b/sound/voice/human/wilhelm_scream.ogg index e110c8bda6f..9a81c47f379 100644 Binary files a/sound/voice/human/wilhelm_scream.ogg and b/sound/voice/human/wilhelm_scream.ogg differ diff --git a/sound/voice/human/womanlaugh.ogg b/sound/voice/human/womanlaugh.ogg index 057a842adcb..1313bd445f2 100644 Binary files a/sound/voice/human/womanlaugh.ogg and b/sound/voice/human/womanlaugh.ogg differ diff --git a/sound/voice/liveagain.ogg b/sound/voice/liveagain.ogg index 9d07629ae42..20619f99fce 100644 Binary files a/sound/voice/liveagain.ogg and b/sound/voice/liveagain.ogg differ diff --git a/sound/voice/lizard/deathsound.ogg b/sound/voice/lizard/deathsound.ogg index d41310cb575..6fe30f0f1f9 100644 Binary files a/sound/voice/lizard/deathsound.ogg and b/sound/voice/lizard/deathsound.ogg differ diff --git a/sound/voice/lowHiss1.ogg b/sound/voice/lowHiss1.ogg index a9eaa90d334..1373f010f84 100644 Binary files a/sound/voice/lowHiss1.ogg and b/sound/voice/lowHiss1.ogg differ diff --git a/sound/voice/lowHiss2.ogg b/sound/voice/lowHiss2.ogg index 81fd4b1cfa2..90a91db5dda 100644 Binary files a/sound/voice/lowHiss2.ogg and b/sound/voice/lowHiss2.ogg differ diff --git a/sound/voice/lowHiss3.ogg b/sound/voice/lowHiss3.ogg index cd85bc2e454..ab1f2d5bdb7 100644 Binary files a/sound/voice/lowHiss3.ogg and b/sound/voice/lowHiss3.ogg differ diff --git a/sound/voice/lowHiss4.ogg b/sound/voice/lowHiss4.ogg index 3d06d9593b5..a5c95b02977 100644 Binary files a/sound/voice/lowHiss4.ogg and b/sound/voice/lowHiss4.ogg differ diff --git a/sound/voice/medbot/apple.ogg b/sound/voice/medbot/apple.ogg index 21e26742ca1..0cfd6705220 100644 Binary files a/sound/voice/medbot/apple.ogg and b/sound/voice/medbot/apple.ogg differ diff --git a/sound/voice/medbot/catch.ogg b/sound/voice/medbot/catch.ogg index 07b8aaab75c..fd6895a5606 100644 Binary files a/sound/voice/medbot/catch.ogg and b/sound/voice/medbot/catch.ogg differ diff --git a/sound/voice/medbot/coming.ogg b/sound/voice/medbot/coming.ogg index d3eb9e467f4..f4d863db4fe 100644 Binary files a/sound/voice/medbot/coming.ogg and b/sound/voice/medbot/coming.ogg differ diff --git a/sound/voice/medbot/delicious.ogg b/sound/voice/medbot/delicious.ogg index 5158538580e..410efbf0b03 100644 Binary files a/sound/voice/medbot/delicious.ogg and b/sound/voice/medbot/delicious.ogg differ diff --git a/sound/voice/medbot/feelbetter.ogg b/sound/voice/medbot/feelbetter.ogg index fdbe57fd2e9..adbae4ff799 100644 Binary files a/sound/voice/medbot/feelbetter.ogg and b/sound/voice/medbot/feelbetter.ogg differ diff --git a/sound/voice/medbot/flies.ogg b/sound/voice/medbot/flies.ogg index 831281ebbee..a714f8a0bc9 100644 Binary files a/sound/voice/medbot/flies.ogg and b/sound/voice/medbot/flies.ogg differ diff --git a/sound/voice/medbot/help.ogg b/sound/voice/medbot/help.ogg index 516d5db068d..9a26ee2e969 100644 Binary files a/sound/voice/medbot/help.ogg and b/sound/voice/medbot/help.ogg differ diff --git a/sound/voice/medbot/injured.ogg b/sound/voice/medbot/injured.ogg index 0e968b3980c..27b601349b3 100644 Binary files a/sound/voice/medbot/injured.ogg and b/sound/voice/medbot/injured.ogg differ diff --git a/sound/voice/medbot/insult.ogg b/sound/voice/medbot/insult.ogg index 017292977a1..91b9b1b1c61 100644 Binary files a/sound/voice/medbot/insult.ogg and b/sound/voice/medbot/insult.ogg differ diff --git a/sound/voice/medbot/live.ogg b/sound/voice/medbot/live.ogg index ceb0dec9a34..0118af0f324 100644 Binary files a/sound/voice/medbot/live.ogg and b/sound/voice/medbot/live.ogg differ diff --git a/sound/voice/medbot/lost.ogg b/sound/voice/medbot/lost.ogg index 7b332ac346a..52f570c5850 100644 Binary files a/sound/voice/medbot/lost.ogg and b/sound/voice/medbot/lost.ogg differ diff --git a/sound/voice/medbot/no.ogg b/sound/voice/medbot/no.ogg index 030e43a0109..5f94eaa7ded 100644 Binary files a/sound/voice/medbot/no.ogg and b/sound/voice/medbot/no.ogg differ diff --git a/sound/voice/medbot/patchedup.ogg b/sound/voice/medbot/patchedup.ogg index 1314f6ee471..15cd46497fe 100644 Binary files a/sound/voice/medbot/patchedup.ogg and b/sound/voice/medbot/patchedup.ogg differ diff --git a/sound/voice/medbot/radar.ogg b/sound/voice/medbot/radar.ogg index ad347a6d891..f44785740ad 100644 Binary files a/sound/voice/medbot/radar.ogg and b/sound/voice/medbot/radar.ogg differ diff --git a/sound/voice/medbot/surgeon.ogg b/sound/voice/medbot/surgeon.ogg index a300ee57ef6..de045467717 100644 Binary files a/sound/voice/medbot/surgeon.ogg and b/sound/voice/medbot/surgeon.ogg differ diff --git a/sound/voice/mook_death.ogg b/sound/voice/mook_death.ogg index 0d98701b849..6c221d24faf 100644 Binary files a/sound/voice/mook_death.ogg and b/sound/voice/mook_death.ogg differ diff --git a/sound/voice/mook_leap_yell.ogg b/sound/voice/mook_leap_yell.ogg index 6ffc76fa331..a7e3e9e58ce 100644 Binary files a/sound/voice/mook_leap_yell.ogg and b/sound/voice/mook_leap_yell.ogg differ diff --git a/sound/voice/moth/scream_moth.ogg b/sound/voice/moth/scream_moth.ogg index c94644fc17b..482086fb630 100644 Binary files a/sound/voice/moth/scream_moth.ogg and b/sound/voice/moth/scream_moth.ogg differ diff --git a/sound/weapons/armbomb.ogg b/sound/weapons/armbomb.ogg index fccf4f668dd..17b2059515f 100644 Binary files a/sound/weapons/armbomb.ogg and b/sound/weapons/armbomb.ogg differ diff --git a/sound/weapons/autoguninsert.ogg b/sound/weapons/autoguninsert.ogg index f68139968e0..3996219970f 100644 Binary files a/sound/weapons/autoguninsert.ogg and b/sound/weapons/autoguninsert.ogg differ diff --git a/sound/weapons/barragespellhit.ogg b/sound/weapons/barragespellhit.ogg index d682cc02964..a5e859a2aac 100644 Binary files a/sound/weapons/barragespellhit.ogg and b/sound/weapons/barragespellhit.ogg differ diff --git a/sound/weapons/batonextend.ogg b/sound/weapons/batonextend.ogg index ca09831fffc..fa557f1acdf 100644 Binary files a/sound/weapons/batonextend.ogg and b/sound/weapons/batonextend.ogg differ diff --git a/sound/weapons/beam_sniper.ogg b/sound/weapons/beam_sniper.ogg index 0bd7b89c8d1..f91831cddd1 100644 Binary files a/sound/weapons/beam_sniper.ogg and b/sound/weapons/beam_sniper.ogg differ diff --git a/sound/weapons/bite.ogg b/sound/weapons/bite.ogg index 596d332960f..de79cbd49e8 100644 Binary files a/sound/weapons/bite.ogg and b/sound/weapons/bite.ogg differ diff --git a/sound/weapons/blade1.ogg b/sound/weapons/blade1.ogg index 3ebc4241130..583fbf19e8c 100644 Binary files a/sound/weapons/blade1.ogg and b/sound/weapons/blade1.ogg differ diff --git a/sound/weapons/bladeslice.ogg b/sound/weapons/bladeslice.ogg index d3cd812f450..ab8154ab9bd 100644 Binary files a/sound/weapons/bladeslice.ogg and b/sound/weapons/bladeslice.ogg differ diff --git a/sound/weapons/blastcannon.ogg b/sound/weapons/blastcannon.ogg index 9b88f3ecf96..b577106ad54 100644 Binary files a/sound/weapons/blastcannon.ogg and b/sound/weapons/blastcannon.ogg differ diff --git a/sound/weapons/blaster.ogg b/sound/weapons/blaster.ogg index 9e72dcf76e9..b625da3104d 100644 Binary files a/sound/weapons/blaster.ogg and b/sound/weapons/blaster.ogg differ diff --git a/sound/weapons/bolathrow.ogg b/sound/weapons/bolathrow.ogg index 1eb3b0860b6..9a7b78fb67f 100644 Binary files a/sound/weapons/bolathrow.ogg and b/sound/weapons/bolathrow.ogg differ diff --git a/sound/weapons/bulletflyby.ogg b/sound/weapons/bulletflyby.ogg index ce9405a5776..85ab0df0ebf 100644 Binary files a/sound/weapons/bulletflyby.ogg and b/sound/weapons/bulletflyby.ogg differ diff --git a/sound/weapons/bulletflyby2.ogg b/sound/weapons/bulletflyby2.ogg index 63956534ba3..e8dfe6044a9 100644 Binary files a/sound/weapons/bulletflyby2.ogg and b/sound/weapons/bulletflyby2.ogg differ diff --git a/sound/weapons/bulletflyby3.ogg b/sound/weapons/bulletflyby3.ogg index e8afd28b06d..cf482ecf534 100644 Binary files a/sound/weapons/bulletflyby3.ogg and b/sound/weapons/bulletflyby3.ogg differ diff --git a/sound/weapons/bulletinsert.ogg b/sound/weapons/bulletinsert.ogg index 789ee15b083..5f23474f597 100644 Binary files a/sound/weapons/bulletinsert.ogg and b/sound/weapons/bulletinsert.ogg differ diff --git a/sound/weapons/bulletremove.ogg b/sound/weapons/bulletremove.ogg index 4d1ec709739..c070701052a 100644 Binary files a/sound/weapons/bulletremove.ogg and b/sound/weapons/bulletremove.ogg differ diff --git a/sound/weapons/cablecuff.ogg b/sound/weapons/cablecuff.ogg index f1d60184eb8..7762dd3b689 100644 Binary files a/sound/weapons/cablecuff.ogg and b/sound/weapons/cablecuff.ogg differ diff --git a/sound/weapons/chainhit.ogg b/sound/weapons/chainhit.ogg index 3e61c3dad76..2a2c30dc78d 100644 Binary files a/sound/weapons/chainhit.ogg and b/sound/weapons/chainhit.ogg differ diff --git a/sound/weapons/chainsawhit.ogg b/sound/weapons/chainsawhit.ogg index a8c86a67fe1..299e2c36f2c 100644 Binary files a/sound/weapons/chainsawhit.ogg and b/sound/weapons/chainsawhit.ogg differ diff --git a/sound/weapons/chunkyrack.ogg b/sound/weapons/chunkyrack.ogg index 37a23a3635c..8e27b0b9713 100644 Binary files a/sound/weapons/chunkyrack.ogg and b/sound/weapons/chunkyrack.ogg differ diff --git a/sound/weapons/circsawhit.ogg b/sound/weapons/circsawhit.ogg index 60098571dc2..78639190dc8 100644 Binary files a/sound/weapons/circsawhit.ogg and b/sound/weapons/circsawhit.ogg differ diff --git a/sound/weapons/cqchit1.ogg b/sound/weapons/cqchit1.ogg index afb5d2d16cf..2030dccca2c 100644 Binary files a/sound/weapons/cqchit1.ogg and b/sound/weapons/cqchit1.ogg differ diff --git a/sound/weapons/cqchit2.ogg b/sound/weapons/cqchit2.ogg index cbf0da0d239..e2d14029cd1 100644 Binary files a/sound/weapons/cqchit2.ogg and b/sound/weapons/cqchit2.ogg differ diff --git a/sound/weapons/draw_bow.ogg b/sound/weapons/draw_bow.ogg index 01f1393bc84..8744764011d 100644 Binary files a/sound/weapons/draw_bow.ogg and b/sound/weapons/draw_bow.ogg differ diff --git a/sound/weapons/draw_bow2.ogg b/sound/weapons/draw_bow2.ogg index 42e03000501..9fa5f7cf9fc 100644 Binary files a/sound/weapons/draw_bow2.ogg and b/sound/weapons/draw_bow2.ogg differ diff --git a/sound/weapons/drill.ogg b/sound/weapons/drill.ogg index fd7495f74fa..22473b5772a 100644 Binary files a/sound/weapons/drill.ogg and b/sound/weapons/drill.ogg differ diff --git a/sound/weapons/effects/batreflect1.ogg b/sound/weapons/effects/batreflect1.ogg index 43f19710c5f..c1ded1bf364 100644 Binary files a/sound/weapons/effects/batreflect1.ogg and b/sound/weapons/effects/batreflect1.ogg differ diff --git a/sound/weapons/effects/batreflect2.ogg b/sound/weapons/effects/batreflect2.ogg index d58e4e906cb..638a22268ff 100644 Binary files a/sound/weapons/effects/batreflect2.ogg and b/sound/weapons/effects/batreflect2.ogg differ diff --git a/sound/weapons/effects/ric1.ogg b/sound/weapons/effects/ric1.ogg index 9f228887228..b7f7bd99ca5 100644 Binary files a/sound/weapons/effects/ric1.ogg and b/sound/weapons/effects/ric1.ogg differ diff --git a/sound/weapons/effects/ric2.ogg b/sound/weapons/effects/ric2.ogg index 03d02b8c457..dcd44b07329 100644 Binary files a/sound/weapons/effects/ric2.ogg and b/sound/weapons/effects/ric2.ogg differ diff --git a/sound/weapons/effects/ric3.ogg b/sound/weapons/effects/ric3.ogg index 2d7a3ce8a06..c538a97e35a 100644 Binary files a/sound/weapons/effects/ric3.ogg and b/sound/weapons/effects/ric3.ogg differ diff --git a/sound/weapons/effects/ric4.ogg b/sound/weapons/effects/ric4.ogg index e0193a690bf..ac872734bea 100644 Binary files a/sound/weapons/effects/ric4.ogg and b/sound/weapons/effects/ric4.ogg differ diff --git a/sound/weapons/effects/ric5.ogg b/sound/weapons/effects/ric5.ogg index b1064eece15..2c946c457d6 100644 Binary files a/sound/weapons/effects/ric5.ogg and b/sound/weapons/effects/ric5.ogg differ diff --git a/sound/weapons/effects/searwall.ogg b/sound/weapons/effects/searwall.ogg index 6a29326f24b..c9b5ac96b2e 100644 Binary files a/sound/weapons/effects/searwall.ogg and b/sound/weapons/effects/searwall.ogg differ diff --git a/sound/weapons/egloves.ogg b/sound/weapons/egloves.ogg index 5df3a1498f1..3caee00eac8 100644 Binary files a/sound/weapons/egloves.ogg and b/sound/weapons/egloves.ogg differ diff --git a/sound/weapons/emitter.ogg b/sound/weapons/emitter.ogg index 4ea4d245551..46e0153dc94 100644 Binary files a/sound/weapons/emitter.ogg and b/sound/weapons/emitter.ogg differ diff --git a/sound/weapons/emitter2.ogg b/sound/weapons/emitter2.ogg index a3d8a28acda..72b6a1c5725 100644 Binary files a/sound/weapons/emitter2.ogg and b/sound/weapons/emitter2.ogg differ diff --git a/sound/weapons/empty.ogg b/sound/weapons/empty.ogg index 12ef9e5fce8..33bcaff8f83 100644 Binary files a/sound/weapons/empty.ogg and b/sound/weapons/empty.ogg differ diff --git a/sound/weapons/etherealhit.ogg b/sound/weapons/etherealhit.ogg index 37911c69c24..19da8709618 100644 Binary files a/sound/weapons/etherealhit.ogg and b/sound/weapons/etherealhit.ogg differ diff --git a/sound/weapons/etherealmiss.ogg b/sound/weapons/etherealmiss.ogg index 64f726999b2..8feb7cdc912 100644 Binary files a/sound/weapons/etherealmiss.ogg and b/sound/weapons/etherealmiss.ogg differ diff --git a/sound/weapons/flash.ogg b/sound/weapons/flash.ogg index eed2ed0d524..66f5c064dd7 100644 Binary files a/sound/weapons/flash.ogg and b/sound/weapons/flash.ogg differ diff --git a/sound/weapons/flash_ring.ogg b/sound/weapons/flash_ring.ogg index a5d2014b8a2..96b5fcf0d38 100644 Binary files a/sound/weapons/flash_ring.ogg and b/sound/weapons/flash_ring.ogg differ diff --git a/sound/weapons/flashbang.ogg b/sound/weapons/flashbang.ogg index 389aad77bc2..68829e2f855 100644 Binary files a/sound/weapons/flashbang.ogg and b/sound/weapons/flashbang.ogg differ diff --git a/sound/weapons/fwoosh.ogg b/sound/weapons/fwoosh.ogg new file mode 100644 index 00000000000..fa7e227b92d Binary files /dev/null and b/sound/weapons/fwoosh.ogg differ diff --git a/sound/weapons/fwoosh.wav b/sound/weapons/fwoosh.wav deleted file mode 100644 index 1723c4e9b86..00000000000 Binary files a/sound/weapons/fwoosh.wav and /dev/null differ diff --git a/sound/weapons/genhit.ogg b/sound/weapons/genhit.ogg index 9a354b9a00b..7dd6e7bed04 100644 Binary files a/sound/weapons/genhit.ogg and b/sound/weapons/genhit.ogg differ diff --git a/sound/weapons/genhit1.ogg b/sound/weapons/genhit1.ogg index 64c727fd4a8..65cd446c04a 100644 Binary files a/sound/weapons/genhit1.ogg and b/sound/weapons/genhit1.ogg differ diff --git a/sound/weapons/genhit2.ogg b/sound/weapons/genhit2.ogg index f275e7d322c..1e06911e20f 100644 Binary files a/sound/weapons/genhit2.ogg and b/sound/weapons/genhit2.ogg differ diff --git a/sound/weapons/genhit3.ogg b/sound/weapons/genhit3.ogg index 5093f27c01e..dd514bd1798 100644 Binary files a/sound/weapons/genhit3.ogg and b/sound/weapons/genhit3.ogg differ diff --git a/sound/weapons/grenadelaunch.ogg b/sound/weapons/grenadelaunch.ogg index 4662058f28a..14c201cc4fc 100644 Binary files a/sound/weapons/grenadelaunch.ogg and b/sound/weapons/grenadelaunch.ogg differ diff --git a/sound/weapons/gun_chamber_round.ogg b/sound/weapons/gun_chamber_round.ogg index 951b9d144d8..3d89f56866d 100644 Binary files a/sound/weapons/gun_chamber_round.ogg and b/sound/weapons/gun_chamber_round.ogg differ diff --git a/sound/weapons/gun_dry_fire.ogg b/sound/weapons/gun_dry_fire.ogg index a129f2e45e8..920b49ed08c 100644 Binary files a/sound/weapons/gun_dry_fire.ogg and b/sound/weapons/gun_dry_fire.ogg differ diff --git a/sound/weapons/gun_magazine_insert_empty_1.ogg b/sound/weapons/gun_magazine_insert_empty_1.ogg index ef34a8e358d..ee90f7b607b 100644 Binary files a/sound/weapons/gun_magazine_insert_empty_1.ogg and b/sound/weapons/gun_magazine_insert_empty_1.ogg differ diff --git a/sound/weapons/gun_magazine_insert_empty_2.ogg b/sound/weapons/gun_magazine_insert_empty_2.ogg index 44419377364..f5dcd01a590 100644 Binary files a/sound/weapons/gun_magazine_insert_empty_2.ogg and b/sound/weapons/gun_magazine_insert_empty_2.ogg differ diff --git a/sound/weapons/gun_magazine_insert_empty_3.ogg b/sound/weapons/gun_magazine_insert_empty_3.ogg index dda772be5d4..7fee38fc239 100644 Binary files a/sound/weapons/gun_magazine_insert_empty_3.ogg and b/sound/weapons/gun_magazine_insert_empty_3.ogg differ diff --git a/sound/weapons/gun_magazine_insert_empty_4.ogg b/sound/weapons/gun_magazine_insert_empty_4.ogg index 8ef39d84fb1..72289934d8e 100644 Binary files a/sound/weapons/gun_magazine_insert_empty_4.ogg and b/sound/weapons/gun_magazine_insert_empty_4.ogg differ diff --git a/sound/weapons/gun_magazine_insert_full_1.ogg b/sound/weapons/gun_magazine_insert_full_1.ogg index dbbede3f710..1deb39f86ec 100644 Binary files a/sound/weapons/gun_magazine_insert_full_1.ogg and b/sound/weapons/gun_magazine_insert_full_1.ogg differ diff --git a/sound/weapons/gun_magazine_insert_full_2.ogg b/sound/weapons/gun_magazine_insert_full_2.ogg index 7aeee89ef8f..bf8db8abbbc 100644 Binary files a/sound/weapons/gun_magazine_insert_full_2.ogg and b/sound/weapons/gun_magazine_insert_full_2.ogg differ diff --git a/sound/weapons/gun_magazine_insert_full_3.ogg b/sound/weapons/gun_magazine_insert_full_3.ogg index 95b9b891eff..2f6fc2159c8 100644 Binary files a/sound/weapons/gun_magazine_insert_full_3.ogg and b/sound/weapons/gun_magazine_insert_full_3.ogg differ diff --git a/sound/weapons/gun_magazine_insert_full_4.ogg b/sound/weapons/gun_magazine_insert_full_4.ogg index d63f0310e56..b2e5d34334f 100644 Binary files a/sound/weapons/gun_magazine_insert_full_4.ogg and b/sound/weapons/gun_magazine_insert_full_4.ogg differ diff --git a/sound/weapons/gun_magazine_insert_full_5.ogg b/sound/weapons/gun_magazine_insert_full_5.ogg index cfd61987602..1e7b0eb1b9b 100644 Binary files a/sound/weapons/gun_magazine_insert_full_5.ogg and b/sound/weapons/gun_magazine_insert_full_5.ogg differ diff --git a/sound/weapons/gun_magazine_remove_empty_1.ogg b/sound/weapons/gun_magazine_remove_empty_1.ogg index a3ae4fa2ebf..72d89eaa015 100644 Binary files a/sound/weapons/gun_magazine_remove_empty_1.ogg and b/sound/weapons/gun_magazine_remove_empty_1.ogg differ diff --git a/sound/weapons/gun_magazine_remove_empty_2.ogg b/sound/weapons/gun_magazine_remove_empty_2.ogg index da73e521732..0d3f0a14871 100644 Binary files a/sound/weapons/gun_magazine_remove_empty_2.ogg and b/sound/weapons/gun_magazine_remove_empty_2.ogg differ diff --git a/sound/weapons/gun_magazine_remove_empty_3.ogg b/sound/weapons/gun_magazine_remove_empty_3.ogg index 18689dc26b6..2e9b092694d 100644 Binary files a/sound/weapons/gun_magazine_remove_empty_3.ogg and b/sound/weapons/gun_magazine_remove_empty_3.ogg differ diff --git a/sound/weapons/gun_magazine_remove_empty_4.ogg b/sound/weapons/gun_magazine_remove_empty_4.ogg index 1012fbf5d75..b799b681e39 100644 Binary files a/sound/weapons/gun_magazine_remove_empty_4.ogg and b/sound/weapons/gun_magazine_remove_empty_4.ogg differ diff --git a/sound/weapons/gun_magazine_remove_full.ogg b/sound/weapons/gun_magazine_remove_full.ogg index 9977da3ecd5..b591d688bb2 100644 Binary files a/sound/weapons/gun_magazine_remove_full.ogg and b/sound/weapons/gun_magazine_remove_full.ogg differ diff --git a/sound/weapons/gun_slide_lock_1.ogg b/sound/weapons/gun_slide_lock_1.ogg index 65270e2b4c3..89ac40c7c47 100644 Binary files a/sound/weapons/gun_slide_lock_1.ogg and b/sound/weapons/gun_slide_lock_1.ogg differ diff --git a/sound/weapons/gun_slide_lock_2.ogg b/sound/weapons/gun_slide_lock_2.ogg index b0f0d281193..4bb846061d7 100644 Binary files a/sound/weapons/gun_slide_lock_2.ogg and b/sound/weapons/gun_slide_lock_2.ogg differ diff --git a/sound/weapons/gun_slide_lock_3.ogg b/sound/weapons/gun_slide_lock_3.ogg index b30be8ab84d..1296a05a382 100644 Binary files a/sound/weapons/gun_slide_lock_3.ogg and b/sound/weapons/gun_slide_lock_3.ogg differ diff --git a/sound/weapons/gun_slide_lock_4.ogg b/sound/weapons/gun_slide_lock_4.ogg index b10b830be7a..9c9d2724900 100644 Binary files a/sound/weapons/gun_slide_lock_4.ogg and b/sound/weapons/gun_slide_lock_4.ogg differ diff --git a/sound/weapons/gun_slide_lock_5.ogg b/sound/weapons/gun_slide_lock_5.ogg index 5a4c1fa158c..1557a88ece1 100644 Binary files a/sound/weapons/gun_slide_lock_5.ogg and b/sound/weapons/gun_slide_lock_5.ogg differ diff --git a/sound/weapons/gunshot.ogg b/sound/weapons/gunshot.ogg index 9ea1f5c5b75..2fd1edff536 100644 Binary files a/sound/weapons/gunshot.ogg and b/sound/weapons/gunshot.ogg differ diff --git a/sound/weapons/gunshot_silenced.ogg b/sound/weapons/gunshot_silenced.ogg index ef250d86aa8..04cefa2b71e 100644 Binary files a/sound/weapons/gunshot_silenced.ogg and b/sound/weapons/gunshot_silenced.ogg differ diff --git a/sound/weapons/gunshot_smg.ogg b/sound/weapons/gunshot_smg.ogg index 5c0000bb320..59d4ce9aee4 100644 Binary files a/sound/weapons/gunshot_smg.ogg and b/sound/weapons/gunshot_smg.ogg differ diff --git a/sound/weapons/handcuffs.ogg b/sound/weapons/handcuffs.ogg index 05fbf4e0d53..57af93278c7 100644 Binary files a/sound/weapons/handcuffs.ogg and b/sound/weapons/handcuffs.ogg differ diff --git a/sound/weapons/homerun.ogg b/sound/weapons/homerun.ogg index 707edd87527..74e86bd1305 100644 Binary files a/sound/weapons/homerun.ogg and b/sound/weapons/homerun.ogg differ diff --git a/sound/weapons/ionrifle.ogg b/sound/weapons/ionrifle.ogg index b808068e55f..7c1204554c3 100644 Binary files a/sound/weapons/ionrifle.ogg and b/sound/weapons/ionrifle.ogg differ diff --git a/sound/weapons/kenetic_accel.ogg b/sound/weapons/kenetic_accel.ogg index ab525baf9af..a74c4d45961 100644 Binary files a/sound/weapons/kenetic_accel.ogg and b/sound/weapons/kenetic_accel.ogg differ diff --git a/sound/weapons/kenetic_reload.ogg b/sound/weapons/kenetic_reload.ogg index 7f2c779fa62..29a91d01b77 100644 Binary files a/sound/weapons/kenetic_reload.ogg and b/sound/weapons/kenetic_reload.ogg differ diff --git a/sound/weapons/laser.ogg b/sound/weapons/laser.ogg index 0fbb611f9cd..0a758932f7c 100644 Binary files a/sound/weapons/laser.ogg and b/sound/weapons/laser.ogg differ diff --git a/sound/weapons/laser2.ogg b/sound/weapons/laser2.ogg index 24c17bbdbf1..5e22e30d4a0 100644 Binary files a/sound/weapons/laser2.ogg and b/sound/weapons/laser2.ogg differ diff --git a/sound/weapons/laser3.ogg b/sound/weapons/laser3.ogg index 134be315fc5..4169df0af91 100644 Binary files a/sound/weapons/laser3.ogg and b/sound/weapons/laser3.ogg differ diff --git a/sound/weapons/lasercannonfire.ogg b/sound/weapons/lasercannonfire.ogg index 612d608db89..87f7c25ec3e 100644 Binary files a/sound/weapons/lasercannonfire.ogg and b/sound/weapons/lasercannonfire.ogg differ diff --git a/sound/weapons/magin.ogg b/sound/weapons/magin.ogg index 8908bb2f4ff..02d2d162c6a 100644 Binary files a/sound/weapons/magin.ogg and b/sound/weapons/magin.ogg differ diff --git a/sound/weapons/magout.ogg b/sound/weapons/magout.ogg index ca91915bd47..a2cdbc4696d 100644 Binary files a/sound/weapons/magout.ogg and b/sound/weapons/magout.ogg differ diff --git a/sound/weapons/marauder.ogg b/sound/weapons/marauder.ogg index 0829aeb299b..5ef249f6ef5 100644 Binary files a/sound/weapons/marauder.ogg and b/sound/weapons/marauder.ogg differ diff --git a/sound/weapons/mortar_long_whistle.ogg b/sound/weapons/mortar_long_whistle.ogg index 51f2f4908cf..646d37d8ab6 100644 Binary files a/sound/weapons/mortar_long_whistle.ogg and b/sound/weapons/mortar_long_whistle.ogg differ diff --git a/sound/weapons/mortar_whistle.ogg b/sound/weapons/mortar_whistle.ogg index 41ea4868ce9..2d7e19d85da 100644 Binary files a/sound/weapons/mortar_whistle.ogg and b/sound/weapons/mortar_whistle.ogg differ diff --git a/sound/weapons/mosinboltin.ogg b/sound/weapons/mosinboltin.ogg index d129df25584..0a9cff6281f 100644 Binary files a/sound/weapons/mosinboltin.ogg and b/sound/weapons/mosinboltin.ogg differ diff --git a/sound/weapons/mosinboltout.ogg b/sound/weapons/mosinboltout.ogg index adbc84c46ab..2a801c9b72f 100644 Binary files a/sound/weapons/mosinboltout.ogg and b/sound/weapons/mosinboltout.ogg differ diff --git a/sound/weapons/parry.ogg b/sound/weapons/parry.ogg index 1f867163378..ff60f3c8b8f 100644 Binary files a/sound/weapons/parry.ogg and b/sound/weapons/parry.ogg differ diff --git a/sound/weapons/pierce.ogg b/sound/weapons/pierce.ogg index bc7320dccb9..d2148926324 100644 Binary files a/sound/weapons/pierce.ogg and b/sound/weapons/pierce.ogg differ diff --git a/sound/weapons/pierce_slow.ogg b/sound/weapons/pierce_slow.ogg new file mode 100644 index 00000000000..239020b8df5 Binary files /dev/null and b/sound/weapons/pierce_slow.ogg differ diff --git a/sound/weapons/pistollock.ogg b/sound/weapons/pistollock.ogg index ba4cf079243..0645c40df21 100644 Binary files a/sound/weapons/pistollock.ogg and b/sound/weapons/pistollock.ogg differ diff --git a/sound/weapons/pistolrack.ogg b/sound/weapons/pistolrack.ogg index 2233bbc84c5..410c23b19c9 100644 Binary files a/sound/weapons/pistolrack.ogg and b/sound/weapons/pistolrack.ogg differ diff --git a/sound/weapons/pistolslidedrop.ogg b/sound/weapons/pistolslidedrop.ogg index 8041414bfab..6c1329bdac6 100644 Binary files a/sound/weapons/pistolslidedrop.ogg and b/sound/weapons/pistolslidedrop.ogg differ diff --git a/sound/weapons/plasma_cutter.ogg b/sound/weapons/plasma_cutter.ogg index ba95317cc1e..70fda591a14 100644 Binary files a/sound/weapons/plasma_cutter.ogg and b/sound/weapons/plasma_cutter.ogg differ diff --git a/sound/weapons/pulse.ogg b/sound/weapons/pulse.ogg index 617b903231c..b66037a14b2 100644 Binary files a/sound/weapons/pulse.ogg and b/sound/weapons/pulse.ogg differ diff --git a/sound/weapons/pulse2.ogg b/sound/weapons/pulse2.ogg index 44c46fc7153..37308f2d543 100644 Binary files a/sound/weapons/pulse2.ogg and b/sound/weapons/pulse2.ogg differ diff --git a/sound/weapons/pulse3.ogg b/sound/weapons/pulse3.ogg index b275fba2a80..8f52287f2a2 100644 Binary files a/sound/weapons/pulse3.ogg and b/sound/weapons/pulse3.ogg differ diff --git a/sound/weapons/punch1.ogg b/sound/weapons/punch1.ogg index 3442ea33336..bf0f95fe208 100644 Binary files a/sound/weapons/punch1.ogg and b/sound/weapons/punch1.ogg differ diff --git a/sound/weapons/punch2.ogg b/sound/weapons/punch2.ogg index 21e58699144..11a7dbffd79 100644 Binary files a/sound/weapons/punch2.ogg and b/sound/weapons/punch2.ogg differ diff --git a/sound/weapons/punch3.ogg b/sound/weapons/punch3.ogg index 3ab2c500d8a..010b7a8ad31 100644 Binary files a/sound/weapons/punch3.ogg and b/sound/weapons/punch3.ogg differ diff --git a/sound/weapons/punch4.ogg b/sound/weapons/punch4.ogg index 7b7f05ce0f0..667ae685320 100644 Binary files a/sound/weapons/punch4.ogg and b/sound/weapons/punch4.ogg differ diff --git a/sound/weapons/punchmiss.ogg b/sound/weapons/punchmiss.ogg index fca95037da7..4f1e0e99b24 100644 Binary files a/sound/weapons/punchmiss.ogg and b/sound/weapons/punchmiss.ogg differ diff --git a/sound/weapons/rapierhit.ogg b/sound/weapons/rapierhit.ogg index 6e214d2821f..401fcf9677c 100644 Binary files a/sound/weapons/rapierhit.ogg and b/sound/weapons/rapierhit.ogg differ diff --git a/sound/weapons/resonator_blast.ogg b/sound/weapons/resonator_blast.ogg index 7110a716b1c..c37c9e903de 100644 Binary files a/sound/weapons/resonator_blast.ogg and b/sound/weapons/resonator_blast.ogg differ diff --git a/sound/weapons/resonator_fire.ogg b/sound/weapons/resonator_fire.ogg index 20665e5dd08..1c686bc96ff 100644 Binary files a/sound/weapons/resonator_fire.ogg and b/sound/weapons/resonator_fire.ogg differ diff --git a/sound/weapons/revolver357shot.ogg b/sound/weapons/revolver357shot.ogg index ba79b26e1c0..bfecb623cba 100644 Binary files a/sound/weapons/revolver357shot.ogg and b/sound/weapons/revolver357shot.ogg differ diff --git a/sound/weapons/revolver38shot.ogg b/sound/weapons/revolver38shot.ogg index 79d38b06fe5..0cf3d40f5c5 100644 Binary files a/sound/weapons/revolver38shot.ogg and b/sound/weapons/revolver38shot.ogg differ diff --git a/sound/weapons/revolverdry.ogg b/sound/weapons/revolverdry.ogg index 4a21c9ed85e..a24adfe7c0d 100644 Binary files a/sound/weapons/revolverdry.ogg and b/sound/weapons/revolverdry.ogg differ diff --git a/sound/weapons/revolverempty.ogg b/sound/weapons/revolverempty.ogg index c0ea45fca6b..81ddb1e2e0e 100644 Binary files a/sound/weapons/revolverempty.ogg and b/sound/weapons/revolverempty.ogg differ diff --git a/sound/weapons/revolverload.ogg b/sound/weapons/revolverload.ogg index 905aeab60e5..9978a35a725 100644 Binary files a/sound/weapons/revolverload.ogg and b/sound/weapons/revolverload.ogg differ diff --git a/sound/weapons/revolverspin1.ogg b/sound/weapons/revolverspin1.ogg index fc2fb3e6bc3..5a27ba4c32e 100644 Binary files a/sound/weapons/revolverspin1.ogg and b/sound/weapons/revolverspin1.ogg differ diff --git a/sound/weapons/revolverspin2.ogg b/sound/weapons/revolverspin2.ogg index d59915c8e75..90ea91048f2 100644 Binary files a/sound/weapons/revolverspin2.ogg and b/sound/weapons/revolverspin2.ogg differ diff --git a/sound/weapons/revolverspin3.ogg b/sound/weapons/revolverspin3.ogg index 13ba1d49dbe..cdab08fdfde 100644 Binary files a/sound/weapons/revolverspin3.ogg and b/sound/weapons/revolverspin3.ogg differ diff --git a/sound/weapons/rifleshot.ogg b/sound/weapons/rifleshot.ogg index 53716d052ff..98d38369bbc 100644 Binary files a/sound/weapons/rifleshot.ogg and b/sound/weapons/rifleshot.ogg differ diff --git a/sound/weapons/ring.ogg b/sound/weapons/ring.ogg index 2b2fe8f0727..c134a0077ac 100644 Binary files a/sound/weapons/ring.ogg and b/sound/weapons/ring.ogg differ diff --git a/sound/weapons/rocketlaunch.ogg b/sound/weapons/rocketlaunch.ogg index 6972eda044d..fe9d86a47fc 100644 Binary files a/sound/weapons/rocketlaunch.ogg and b/sound/weapons/rocketlaunch.ogg differ diff --git a/sound/weapons/saberoff.ogg b/sound/weapons/saberoff.ogg index dc93188675a..d805414bdc5 100644 Binary files a/sound/weapons/saberoff.ogg and b/sound/weapons/saberoff.ogg differ diff --git a/sound/weapons/saberon.ogg b/sound/weapons/saberon.ogg index e1f9be527f7..c5d2217edd9 100644 Binary files a/sound/weapons/saberon.ogg and b/sound/weapons/saberon.ogg differ diff --git a/sound/weapons/sawclose.ogg b/sound/weapons/sawclose.ogg index f33a06059fd..21c25013684 100644 Binary files a/sound/weapons/sawclose.ogg and b/sound/weapons/sawclose.ogg differ diff --git a/sound/weapons/sawopen.ogg b/sound/weapons/sawopen.ogg index c6da68e323e..e5cde5c7120 100644 Binary files a/sound/weapons/sawopen.ogg and b/sound/weapons/sawopen.ogg differ diff --git a/sound/weapons/sear.ogg b/sound/weapons/sear.ogg index c6d5f6846c9..8f1ebb32a79 100644 Binary files a/sound/weapons/sear.ogg and b/sound/weapons/sear.ogg differ diff --git a/sound/weapons/shotguninsert.ogg b/sound/weapons/shotguninsert.ogg index 189324493cf..5b2c6cdc500 100644 Binary files a/sound/weapons/shotguninsert.ogg and b/sound/weapons/shotguninsert.ogg differ diff --git a/sound/weapons/shotgunpump.ogg b/sound/weapons/shotgunpump.ogg index 1b9a671ffac..8c6aec60336 100644 Binary files a/sound/weapons/shotgunpump.ogg and b/sound/weapons/shotgunpump.ogg differ diff --git a/sound/weapons/shotgunshot.ogg b/sound/weapons/shotgunshot.ogg index fcb43268e95..703e693d804 100644 Binary files a/sound/weapons/shotgunshot.ogg and b/sound/weapons/shotgunshot.ogg differ diff --git a/sound/weapons/slam.ogg b/sound/weapons/slam.ogg index f533f44e56f..c8a90c2e434 100644 Binary files a/sound/weapons/slam.ogg and b/sound/weapons/slam.ogg differ diff --git a/sound/weapons/slap.ogg b/sound/weapons/slap.ogg index a1fd4ab9fb1..99a9ec788c4 100644 Binary files a/sound/weapons/slap.ogg and b/sound/weapons/slap.ogg differ diff --git a/sound/weapons/slash.ogg b/sound/weapons/slash.ogg index 87ab82dafb8..ad357891eb7 100644 Binary files a/sound/weapons/slash.ogg and b/sound/weapons/slash.ogg differ diff --git a/sound/weapons/slashmiss.ogg b/sound/weapons/slashmiss.ogg index a0eb8dd30c1..8aa19ea9ce3 100644 Binary files a/sound/weapons/slashmiss.ogg and b/sound/weapons/slashmiss.ogg differ diff --git a/sound/weapons/slice.ogg b/sound/weapons/slice.ogg index cb5e8f366d6..68cb8a761f3 100644 Binary files a/sound/weapons/slice.ogg and b/sound/weapons/slice.ogg differ diff --git a/sound/weapons/smash.ogg b/sound/weapons/smash.ogg index ee3d7a25204..0bcbfbfe2c1 100644 Binary files a/sound/weapons/smash.ogg and b/sound/weapons/smash.ogg differ diff --git a/sound/weapons/smg_empty_alarm.ogg b/sound/weapons/smg_empty_alarm.ogg index f031b4e1d88..848a9e49860 100644 Binary files a/sound/weapons/smg_empty_alarm.ogg and b/sound/weapons/smg_empty_alarm.ogg differ diff --git a/sound/weapons/smgrack.ogg b/sound/weapons/smgrack.ogg index c8d12515852..95f5a5f9c84 100644 Binary files a/sound/weapons/smgrack.ogg and b/sound/weapons/smgrack.ogg differ diff --git a/sound/weapons/smgshot.ogg b/sound/weapons/smgshot.ogg index 3e3aadba3e0..71c60bca1b2 100644 Binary files a/sound/weapons/smgshot.ogg and b/sound/weapons/smgshot.ogg differ diff --git a/sound/weapons/sniper_mag_insert.ogg b/sound/weapons/sniper_mag_insert.ogg index bf760d0eadc..53460ebf14d 100644 Binary files a/sound/weapons/sniper_mag_insert.ogg and b/sound/weapons/sniper_mag_insert.ogg differ diff --git a/sound/weapons/sniper_rack.ogg b/sound/weapons/sniper_rack.ogg index 0d1ced3855c..28c12325bc1 100644 Binary files a/sound/weapons/sniper_rack.ogg and b/sound/weapons/sniper_rack.ogg differ diff --git a/sound/weapons/sniper_shot.ogg b/sound/weapons/sniper_shot.ogg index 8c1667e8c25..b038a15bcec 100644 Binary files a/sound/weapons/sniper_shot.ogg and b/sound/weapons/sniper_shot.ogg differ diff --git a/sound/weapons/sonic_jackhammer.ogg b/sound/weapons/sonic_jackhammer.ogg index dae5762b2c4..be22f36e3eb 100644 Binary files a/sound/weapons/sonic_jackhammer.ogg and b/sound/weapons/sonic_jackhammer.ogg differ diff --git a/sound/weapons/stringsmash.ogg b/sound/weapons/stringsmash.ogg index ea96bc0b50b..1c3e8971dcc 100644 Binary files a/sound/weapons/stringsmash.ogg and b/sound/weapons/stringsmash.ogg differ diff --git a/sound/weapons/tap.ogg b/sound/weapons/tap.ogg index 4cb31e91486..711cb0ac386 100644 Binary files a/sound/weapons/tap.ogg and b/sound/weapons/tap.ogg differ diff --git a/sound/weapons/taser.ogg b/sound/weapons/taser.ogg index 8992b71f50f..b0acc742622 100644 Binary files a/sound/weapons/taser.ogg and b/sound/weapons/taser.ogg differ diff --git a/sound/weapons/taser2.ogg b/sound/weapons/taser2.ogg index 2cdab843783..b53f9db5c3d 100644 Binary files a/sound/weapons/taser2.ogg and b/sound/weapons/taser2.ogg differ diff --git a/sound/weapons/taserhit.ogg b/sound/weapons/taserhit.ogg index d3e15129400..fb8facbfffc 100644 Binary files a/sound/weapons/taserhit.ogg and b/sound/weapons/taserhit.ogg differ diff --git a/sound/weapons/throwtap.ogg b/sound/weapons/throwtap.ogg index 7806a789818..76d746b0f57 100644 Binary files a/sound/weapons/throwtap.ogg and b/sound/weapons/throwtap.ogg differ diff --git a/sound/weapons/thudswoosh.ogg b/sound/weapons/thudswoosh.ogg index 517ae042885..934ec6350f5 100644 Binary files a/sound/weapons/thudswoosh.ogg and b/sound/weapons/thudswoosh.ogg differ diff --git a/sound/weapons/wave.ogg b/sound/weapons/wave.ogg index 039996341a1..b7bf7d260fa 100644 Binary files a/sound/weapons/wave.ogg and b/sound/weapons/wave.ogg differ diff --git a/sound/weapons/whip.ogg b/sound/weapons/whip.ogg index 9bc0d456104..3c9a4aff098 100644 Binary files a/sound/weapons/whip.ogg and b/sound/weapons/whip.ogg differ diff --git a/sound/weapons/whipgrab.ogg b/sound/weapons/whipgrab.ogg index b05bdd743bb..3b17632056c 100644 Binary files a/sound/weapons/whipgrab.ogg and b/sound/weapons/whipgrab.ogg differ diff --git a/sound/weapons/zapbang.ogg b/sound/weapons/zapbang.ogg index 4e14e30a11b..53d9f9e150b 100644 Binary files a/sound/weapons/zapbang.ogg and b/sound/weapons/zapbang.ogg differ diff --git a/sound/weather/ashstorm/inside/active_end.ogg b/sound/weather/ashstorm/inside/active_end.ogg index 959bf5773eb..10976870598 100644 Binary files a/sound/weather/ashstorm/inside/active_end.ogg and b/sound/weather/ashstorm/inside/active_end.ogg differ diff --git a/sound/weather/ashstorm/inside/active_mid1.ogg b/sound/weather/ashstorm/inside/active_mid1.ogg index 95244cd2b7c..1ac40cbdc58 100644 Binary files a/sound/weather/ashstorm/inside/active_mid1.ogg and b/sound/weather/ashstorm/inside/active_mid1.ogg differ diff --git a/sound/weather/ashstorm/inside/active_mid2.ogg b/sound/weather/ashstorm/inside/active_mid2.ogg index a45584b9f31..e274d296ccf 100644 Binary files a/sound/weather/ashstorm/inside/active_mid2.ogg and b/sound/weather/ashstorm/inside/active_mid2.ogg differ diff --git a/sound/weather/ashstorm/inside/active_mid3.ogg b/sound/weather/ashstorm/inside/active_mid3.ogg index be2e672fa0e..65a00bcbe8c 100644 Binary files a/sound/weather/ashstorm/inside/active_mid3.ogg and b/sound/weather/ashstorm/inside/active_mid3.ogg differ diff --git a/sound/weather/ashstorm/inside/active_start.ogg b/sound/weather/ashstorm/inside/active_start.ogg index 3efab12ef26..e147d04cafc 100644 Binary files a/sound/weather/ashstorm/inside/active_start.ogg and b/sound/weather/ashstorm/inside/active_start.ogg differ diff --git a/sound/weather/ashstorm/inside/weak_end.ogg b/sound/weather/ashstorm/inside/weak_end.ogg index 416b75a9b84..cca41d49a9d 100644 Binary files a/sound/weather/ashstorm/inside/weak_end.ogg and b/sound/weather/ashstorm/inside/weak_end.ogg differ diff --git a/sound/weather/ashstorm/inside/weak_mid1.ogg b/sound/weather/ashstorm/inside/weak_mid1.ogg index d3211c6b5fc..e3bc15d888b 100644 Binary files a/sound/weather/ashstorm/inside/weak_mid1.ogg and b/sound/weather/ashstorm/inside/weak_mid1.ogg differ diff --git a/sound/weather/ashstorm/inside/weak_mid2.ogg b/sound/weather/ashstorm/inside/weak_mid2.ogg index b6491a7afb8..f5584ba83b1 100644 Binary files a/sound/weather/ashstorm/inside/weak_mid2.ogg and b/sound/weather/ashstorm/inside/weak_mid2.ogg differ diff --git a/sound/weather/ashstorm/inside/weak_mid3.ogg b/sound/weather/ashstorm/inside/weak_mid3.ogg index 95238c72d40..ae6c6d1911e 100644 Binary files a/sound/weather/ashstorm/inside/weak_mid3.ogg and b/sound/weather/ashstorm/inside/weak_mid3.ogg differ diff --git a/sound/weather/ashstorm/inside/weak_start.ogg b/sound/weather/ashstorm/inside/weak_start.ogg index 59abf1937dc..d1788a241cb 100644 Binary files a/sound/weather/ashstorm/inside/weak_start.ogg and b/sound/weather/ashstorm/inside/weak_start.ogg differ diff --git a/sound/weather/ashstorm/outside/active_end.ogg b/sound/weather/ashstorm/outside/active_end.ogg index 95149d846cc..3306201f86b 100644 Binary files a/sound/weather/ashstorm/outside/active_end.ogg and b/sound/weather/ashstorm/outside/active_end.ogg differ diff --git a/sound/weather/ashstorm/outside/active_mid1.ogg b/sound/weather/ashstorm/outside/active_mid1.ogg index 189528ab569..bd2ff62f70d 100644 Binary files a/sound/weather/ashstorm/outside/active_mid1.ogg and b/sound/weather/ashstorm/outside/active_mid1.ogg differ diff --git a/sound/weather/ashstorm/outside/active_mid2.ogg b/sound/weather/ashstorm/outside/active_mid2.ogg index 92317f2e0a7..661562716bc 100644 Binary files a/sound/weather/ashstorm/outside/active_mid2.ogg and b/sound/weather/ashstorm/outside/active_mid2.ogg differ diff --git a/sound/weather/ashstorm/outside/active_mid3.ogg b/sound/weather/ashstorm/outside/active_mid3.ogg index 34846bfd42c..542420f50a5 100644 Binary files a/sound/weather/ashstorm/outside/active_mid3.ogg and b/sound/weather/ashstorm/outside/active_mid3.ogg differ diff --git a/sound/weather/ashstorm/outside/active_start.ogg b/sound/weather/ashstorm/outside/active_start.ogg index 8b3acf1a153..4bd9717396e 100644 Binary files a/sound/weather/ashstorm/outside/active_start.ogg and b/sound/weather/ashstorm/outside/active_start.ogg differ diff --git a/sound/weather/ashstorm/outside/weak_end.ogg b/sound/weather/ashstorm/outside/weak_end.ogg index 55db2fc3565..6fef7a1ed8b 100644 Binary files a/sound/weather/ashstorm/outside/weak_end.ogg and b/sound/weather/ashstorm/outside/weak_end.ogg differ diff --git a/sound/weather/ashstorm/outside/weak_mid1.ogg b/sound/weather/ashstorm/outside/weak_mid1.ogg index 56faa9ad26c..3d0e4f42604 100644 Binary files a/sound/weather/ashstorm/outside/weak_mid1.ogg and b/sound/weather/ashstorm/outside/weak_mid1.ogg differ diff --git a/sound/weather/ashstorm/outside/weak_mid2.ogg b/sound/weather/ashstorm/outside/weak_mid2.ogg index 0c836ad220a..087aa765708 100644 Binary files a/sound/weather/ashstorm/outside/weak_mid2.ogg and b/sound/weather/ashstorm/outside/weak_mid2.ogg differ diff --git a/sound/weather/ashstorm/outside/weak_mid3.ogg b/sound/weather/ashstorm/outside/weak_mid3.ogg index f2cbfb0f4b9..3891ad43829 100644 Binary files a/sound/weather/ashstorm/outside/weak_mid3.ogg and b/sound/weather/ashstorm/outside/weak_mid3.ogg differ diff --git a/sound/weather/ashstorm/outside/weak_start.ogg b/sound/weather/ashstorm/outside/weak_start.ogg index 1ac59c36f05..404b968909b 100644 Binary files a/sound/weather/ashstorm/outside/weak_start.ogg and b/sound/weather/ashstorm/outside/weak_start.ogg differ diff --git a/strings/1000_most_common.txt b/strings/1000_most_common.txt new file mode 100644 index 00000000000..64e6fd2af88 --- /dev/null +++ b/strings/1000_most_common.txt @@ -0,0 +1,1035 @@ +a +able +about +above +accept +across +act +actually +add +admit +afraid +after +afternoon +again +against +age +ago +agree +ah +ahead +air +all +allow +almost +alone +along +already +alright +also +although +always +am +amaze +an +and +anger +angry +animal +annoy +another +answer +any +anymore +anyone +anything +anyway +apartment +apparently +appear +approach +are +area +arent +aren't +arm +around +arrive +as +ask +asleep +ass +at +attack +attempt +attention +aunt +avoid +away +baby +back +bad +bag +ball +band +bar +barely +bathroom +be +beat +beautiful +became +because +become +bed +bedroom +been +before +began +begin +behind +believe +bell +beside +besides +best +better +between +big +bit +bite +black +blink +block +blonde +blood +blue +blush +body +book +bore +both +bother +bottle +bottom +box +boy +boyfriend +brain +break +breakfast +breath +breathe +bright +bring +broke +broken +brother +brought +brown +brush +build +burn +burst +bus +business +busy +but +buy +by +call +calm +came +can +cant +can't +car +card +care +carefully +carry +case +cat +catch +caught +cause +cell +chair +chance +change +chase +check +cheek +chest +child +children +chuckle +city +class +clean +clear +climb +close +clothes +coffee +cold +college +color +come +comment +complete +completely +computer +concern +confuse +consider +continue +control +conversation +cool +corner +couch +could +couldnt +couldn't +counter +couple +course +cover +crack +crazy +cross +crowd +cry +cup +cut +cute +dad +damn +dance +dark +date +daughter +day +dead +deal +dear +death +decide +deep +definitely +desk +did +didnt +didn't +die +different +dinner +direction +disappear +do +doctor +does +doesnt +doesn't +dog +dont +don't +done +door +doubt +down +drag +draw +dream +dress +drink +drive +drop +drove +dry +during +each +ear +early +easily +easy +eat +edge +either +else +empty +end +enjoy +enough +enter +entire +escape +especially +even +evening +eventually +ever +every +everyone +everything +exactly +except +excite +exclaim +excuse +expect +explain +expression +eye +eyebrow +face +fact +fall +family +far +fast +father +fault +favorite +fear +feel +feet +fell +felt +few +field +fight +figure +fill +finally +find +fine +finger +finish +fire +first +fit +five +fix +flash +flip +floor +fly +focus +follow +food +foot +for +force +forget +form +forward +found +four +free +friend +from +front +frown +fuck +full +fun +funny +further +game +gasp +gave +gaze +gently +get +giggle +girl +girlfriend +give +given +glad +glance +glare +glass +go +God +gone +gonna +good +got +gotten +grab +great +green +greet +grey +grin +grip +groan +ground +group +grow +guard +guess +gun +guy +had +hadnt +hadn't +hair +half +hall +hallway +hand +handle +hang +happen +happy +hard +has +hate +have +havent +haven't +he +hed +he'd +hes +he's +head +hear +heard +heart +heavy +held +hell +hello +help +her +here +herself +hey +hi +hide +high +him +himself +his +hit +hold +home +hope +horse +hospital +hot +hour +house +how +however +hug +huge +huh +human +hundred +hung +hurry +hurt +I +Id +I'd +Ill +I'll +Im +I'm +Ive +I've +ice +idea +if +ignore +imagine +immediately +important +in +inside +instead +interest +interrupt +into +is +isnt +isn't +it +its +it's +its +jacket +jeans +jerk +job +join +joke +jump +just +keep +kept +key +kick +kid +kill +kind +kiss +kitchen +knee +knew +knock +know +known +lady +land +large +last +late +laugh +lay +lead +lean +learn +least +leave +led +left +leg +less +let +letter +lie +life +lift +light +like +line +lip +listen +little +live +lock +locker +long +look +lose +lost +lot +loud +love +low +lunch +mad +made +make +man +manage +many +mark +marry +match +matter +may +maybe +me +mean +meant +meet +memory +men +mention +met +middle +might +mind +mine +minute +mirror +miss +mom +moment +money +month +mood +more +morning +most +mother +mouth +move +movie +Mr. +Mrs. +much +mum +mumble +music +must +mutter +my +myself +name +near +nearly +neck +need +nervous +never +new +next +nice +night +no +nod +noise +none +normal +nose +not +note +nothing +notice +now +number +obviously +of +off +offer +office +often +oh +okay +old +on +once +one +only +onto +open +or +order +other +our +out +outside +over +own +pack +pain +paint +pair +pants +paper +parents +park +part +party +pass +past +pause +pay +people +perfect +perhaps +person +phone +pick +picture +piece +pink +piss +place +plan +play +please +pocket +point +police +pop +position +possible +power +practically +present +press +pretend +pretty +probably +problem +promise +pull +punch +push +put +question +quick +quickly +quiet +quietly +quite +race +rain +raise +ran +rang +rather +reach +read +ready +real +realize +really +reason +recognize +red +relationship +relax +remain +remember +remind +repeat +reply +respond +rest +return +ride +right +ring +road +rock +roll +room +rose +round +rub +run +rush +sad +safe +said +same +sat +save +saw +say +scare +school +scream +search +seat +second +see +seem +seen +self +send +sense +sent +serious +seriously +set +settle +seven +several +shadow +shake +share +she +shed +she'd +shes +she's +shift +shirt +shit +shock +shoe +shook +shop +short +shot +should +shoulder +shouldnt +shouldn't +shout +shove +show +shower +shrug +shut +sick +side +sigh +sight +sign +silence +silent +simply +since +single +sir +sister +sit +situation +six +skin +sky +slam +sleep +slightly +slip +slow +slowly +small +smell +smile +smirk +smoke +snap +so +soft +softly +some +somehow +someone +something +sometimes +somewhere +son +song +soon +sorry +sort +sound +space +speak +spend +spent +spoke +spot +stair +stand +star +stare +start +state +stay +step +stick +still +stomach +stood +stop +store +story +straight +strange +street +strong +struggle +stuck +student +study +stuff +stupid +such +suck +sudden +suddenly +suggest +summer +sun +suppose +sure +surprise +surround +sweet +table +take +taken +talk +tall +teacher +team +tear +teeth +tell +ten +than +thank +that +thats +that's +the +their +them +themselves +then +there +theres +there's +these +they +theyd +they'd +theyre +they're +thick +thing +think +third +this +those +though +thought +three +threw +throat +through +throw +tie +tight +time +tiny +tire +to +today +together +told +tomorrow +tone +tongue +tonight +too +took +top +totally +touch +toward +town +track +trail +train +tree +trip +trouble +trust +truth +try +turn +TV +twenty +two +type +uncle +under +understand +until +up +upon +us +use +usual +usually +very +visit +voice +wait +wake +walk +wall +want +warm +warn +was +wasnt +wasn't +watch +water +wave +way +we +well +we'll +were +we're +weve +we've +wear +week +weird +well +went +were +werent +weren't +wet +what +whats +what's +whatever +when +where +whether +which +while +whisper +white +who +whole +why +wide +wife +will +wind +window +wipe +wish +with +within +without +woke +woman +women +wont +won't +wonder +wood +word +wore +work +world +worry +worse +would +wouldnt +wouldn't +wow +wrap +write +wrong +yeah +year +yell +yes +yet +you +youd +you'd +youll +you'll +youre +you're +youve +you've +young +your +yourself +TRUE \ No newline at end of file diff --git a/strings/cas_black.txt b/strings/cas_black.txt index b63e33cdf21..734222d1fd1 100644 --- a/strings/cas_black.txt +++ b/strings/cas_black.txt @@ -1,13 +1,13 @@ Today, Security killed ____. Security, the clown's breaking into ____. -The Chaplain is worshiping the Church of _____. +Our last Chaplain believed in nothing but _____. What angered the gods this time? Why didn't engineering set up the singularity? What does the traitor steal this time? Cargo: There's a galaxy-wide shortage of _______. I don't care what they called me back on the station, I'm not a traitor. I'm a man of _________. The Syndicate is offering crew members _________ to defect. -Cargo ordered a crate full of _____. +What is Nanotrasen's highest-priority bounty? What is the gray tide protesting this time? If the Space Gods didn't want _________ they wouldn't have given us __________. Why was the death squad sent in? @@ -30,11 +30,10 @@ What made the nuclear operatives fluke? Why did the Chief Engineer disable comms? Every spaceman receives an internals box and ________. What brought the space orgy to a grinding halt? -Scientists are no longer allowed to make _____. +Scientists are no longer allowed to make ______. What was the clown's best joke? The HoP is now hiring assistants for __________. What happens when you emag an emag? -Our gang doesn't wear uniforms. Our gang wears ___________. No matter how many lizards you have, _____ is never acceptable. No, the AI's second law is NOT to serve _____. First CentCom came for the ________. Now they're coming for the __________. @@ -109,5 +108,12 @@ The auxiliary base was disabled after landing in the middle of _______. Xenobiologists have found slimes to be exceptionally responsive to _______. Why did the captain give me a medal? The curator's new exhibit is devoted solely to _________. -There's no ______ on the new escape shuttle, but there is plenty of _________! -What made me sell my soul to the devil? \ No newline at end of file +What made me sell my soul to the devil? +The engineers are testing an experimental supermatter setup involving _________. +I'm __________ in the streets, __________ in the sheets. +What's my family heirloom? +The Lawyer was fired for messaging the entire station a picture of ___________. +On Lavaland, it is rumored that ashwalkers roam, worshipping _________. +How did the traitor die a glorious death? +Nanotrasen's new state-of-the-art emergency shuttle was repurposed from _________ and _________. +What caused my brain trauma? \ No newline at end of file diff --git a/strings/cas_white.txt b/strings/cas_white.txt index 3a7f9456c95..b2e074ce40b 100644 --- a/strings/cas_white.txt +++ b/strings/cas_white.txt @@ -2,6 +2,7 @@ Those motherfucking carp. Having sex in the maintenance tunnels. Space 'Nam. Space lesbians. +Space NEETs. Space Hitler. Space Asshole. Ragin' mages. @@ -57,7 +58,6 @@ Defusing a syndicate bomb with another bomb. Going braindead mid-murder. A petsplosion. Meat spikes. -Collecting the crew's brains. Lopping off the Captain's johnson and shooting it out a pneumatic cannon. The secret monkey technique. Putting the pAI's doorjack where it don't belong. @@ -84,7 +84,6 @@ Paranoia. Putting the boots to him, medium style. ERP-seeking meteors. Paperwork HoPs. -A sexy clown. Rampant vending machines. The prisoner transfer center. Nations. @@ -186,7 +185,6 @@ A big, black shadowling dick. Emagging. Dead lizard storage. Dermal armor. -Energy balls. Fisting somebody until they gib. Alternate uses for defibrillator paddles. Breaking spacetime with thousands of bluespace tomatoes. @@ -197,7 +195,7 @@ Plasmaman strippers. A Quartermaster who WON'T STOP ordering guns. Space lag. Polishing the captain's laser rifle. -That one asshole double agent. +That one asshole nuke op. A surprise visit from Nanotrasen's CEO. The bleeding, dismembered, beautiful corpse of the clown. A glass of ...what? @@ -220,20 +218,18 @@ Welderbombing. Validhunting. Nar'Sie making love to Lord Singulo. Fun. -Crashing the stock market. HONK! -Enough morphine to put the entire station down. +Enough morphine to make the entire station comatose. A defective comdom. Cleanbot. A beaker of dried space carp penis. An Ian storm. -voxtest2. Nuking it from orbit. My senpAI. Harmbatonning. A Nanotrasen D-Notice. TALKING MIMES. -The lusty xenomorph maid, +The lusty xenomorph maid. Using assistants as human shields. Sentient securitrons. Piloting the station into the nearest sun. @@ -251,7 +247,7 @@ NAR'SIE HAS RISEN. Pierrot's Throat. A clown bomb. Space bees? -The entire engineering team having unprotected group sex. +Driving the clown car full speed into the engine. IC in OOC. The best cookie. The wizard with his staff inserted into his anus. @@ -276,9 +272,8 @@ Draconic. Riding borgs, cowgirl style. The Voice of God. Overpowered stuns. -Unironically reading library smut. +Unironically enjoying library smut. Spiritual journeys with BZ. -Freon. Deep-fried body parts. Suit sensor unit gas chambers. Moonlighting. @@ -293,4 +288,17 @@ A salt overdose. Mindswap. Potassium in the toilet bowls. Giving head to the heads. -A lizard wearing cat ears. \ No newline at end of file +A lizard wearing cat ears. +Precious clown gold. +Dabbing on a pile of corpses. +Tactical chairs. +The sweet, forbidden meat of the gondola. +Turning tricks for holocredits. +A captain that doesn't secure the disk. +A positive moodlet. +Hygiene. +The Oh Hi Mark shuttle. +The asteroid shuttle. +Razoring the wings off the moths. +Wiring the ethereals into the powernet. +Well-aged miasma. \ No newline at end of file diff --git a/strings/names/clown.txt b/strings/names/clown.txt index 8eec0990d0b..ca2e5715941 100644 --- a/strings/names/clown.txt +++ b/strings/names/clown.txt @@ -1,37 +1,122 @@ +Aluminium Dave +Baba Baby Cakes +Bananium LXIX +Bimbim +Bingo +Birdman From Birdland +Bizarre Bottle +Bizarro Bo Bo Sassy Bonker Bubble Buster Frown +Butters The Bean +Buttery Muffin Button Candy +Carphunter Checkers +Chuckles +Circe The Great +Congo Bongo +Cool Cooper +Crusty +Deedum Dedah +Delicious Dan +Dinkster Dinky Doodle +Doctor Greenthumb +Doink +Early Worm +Eggy +Emotional Oatmeal +Fat Fingers +Fishbreath Flop O'Honker Freckle +Fretworks +Galton Giggles Gigglesworth Goose McSunny +Grabby +Grandma +Grebble +Greedo Shotfurst +Happy Slappy +Harvey Harvey Harvey +Hedgerow Harry +Hefty Hempo +Homey Honkel the III Honker Honkerbelle +Implausible Fun +Impro +Jazzle +Jim From Accounting Jingle Jo Jo Bobo Bo +Johnny Bigshoes +King of Klowns Ladybug Honks +Laughing Man +Loopy Lazarus +Mime +Misery Marvin Miss Stockings +Mister Ostprussen +Mister Redherring +Mister Roboto +Mister Safety Hazard +Moinen Mr Shoe +Mr Weird +Ningelo Patches Pepinpop Pocket +Pogo +Polite Pablo +Post Nose Razzle Dazzle +Red April +Red Dead Redemption Two Redshirt McBeat +Rinso The Soapy +Roboflop Ronnie Pace +Rude Robert +Sandwich Sam Scootaloo +Shinturner +Shithead The Irritator +Shoe Giving Gerald Silly Willy +Sir Honks-a-Lot Skiddle +Slippo Supreme Slippy Joe +Slipsy Dipsy Sparkle Speckles Sprinkledinkle +The Amazing Farto +The Best +The Fun Uncle +The Mediocre +The Unfun Uncle +The Worst Toodles Sharperton -Ziggy Yoyo \ No newline at end of file +Tree Talker +Twisty +Uncool Ulrich +Unimaginable Nut +Valid Vincent +Weather Report +Widderwise +Yanye Kest +Yesterdays Beef +Yobbo +Ziggy Yoyo diff --git a/strings/names/first_male.txt b/strings/names/first_male.txt index b86722dbafe..5dd9cb57111 100644 --- a/strings/names/first_male.txt +++ b/strings/names/first_male.txt @@ -261,7 +261,6 @@ Gordon Grady Graeme Graham -Grandpa Grant Gratian Grayson diff --git a/strings/sillytips.txt b/strings/sillytips.txt index bcb05d3221b..2e188ef7f25 100644 --- a/strings/sillytips.txt +++ b/strings/sillytips.txt @@ -32,3 +32,5 @@ There are at least 11 ways to get through plastic flaps. How many can you name? FEED ME A STRAY CAT Did you know that tossing the clown into a singularity will either increase or decrease its size by a large amount? Most items have names longer than "soap". +Demoman takes skill. +Ask and you shall receive. diff --git a/strings/tips.txt b/strings/tips.txt index 058500d020e..b34ea826916 100644 --- a/strings/tips.txt +++ b/strings/tips.txt @@ -18,12 +18,31 @@ Maintenance is full of equipment that is randomized every round. Look around and Some roles cannot be antagonists by default, but antag selection is decided first. For instance, you can set Security Officer to High without affecting your chances of becoming an antag -- the game will just select a different role. There are many places around the station to hide contraband. A few for starters: linen boxes, toilet cisterns, body bags. Experiment to find more! You can use a machine in the vault to deposit cash or rob Cargo's department funds. +When in doubt about technicial issues, clear your cache (byond launcher > cogwheel > preferences > game prefs), update your BYOND, and relog. +Most things have special interactions with your middle mouse button, alt, shift, and control click. Experiment! +You can screwdriver any non-chemical grenade to shorten fuses from 5 seconds, to 3 seconds, to 1 second, to instant boom! Nobody ever expects this. +If you find yourself in a fistfight with another player, staying on the offensive is usually the smart move. Running away often won't accomplish much. +Different weapons have different strengths. Some weapons, such as spears, floor tiles, and throwing stars, deal more damage when thrown compared to when attacked normally. +A thrown glass of water can make a slippery tile, allowing you to slow down your pursuers in a pinch. +When dealing with security, you can often get your sentence negated entirely through cooperation and deception. +The P2P chat function found on tablet computers allows for a stealthy way to communicate with people. +Experiment with different setups of the supermatter engine to maximize output, but don't risk the crew's safety to do so! +We were all new once, be patient and guide new players in the right direction. +On most clothing items that go in the exosuit slot, you can put certain small items into your suit storage, such as a spraycan, your emergency oxygen tank, or a flashlight. +Most job-related exosuit clothing can fit job-related items into it, such as the atmospheric technician's hardsuit/winter coat holding an RPD, or labcoats holding most medicine. +If you're using hotkey mode, you can stop pulling things using H. +The station's self-destruct terminal is invincible. Go find the disk instead of trying to destroy it. +If there's something you need from another department, try asking! This game isn't singleplayer and you'd be surprised what you can get accomplished together! +You'll quickly lose your interest in the game if you play to win and kill. If you find yourself doing this, take a step back and talk to people - it's a much better experience! +Felinids get temporarily distracted by laser pointers. Use this to your advantage when being pursued by one. +Don't be afraid to ask for help, whether from your peers or from admins. As the Captain, you are one of the highest priority targets on the station. Everything from revolutions, to nuclear operatives, to traitors that need to rob you of your unique lasgun or your life are things to worry about. As the Captain, always take the nuclear disk and pinpointer with you every shift. It's a good idea to give one of these to another head you can trust with keeping it safe. As the Captain, you have absolute access and control over the station, but this does not mean that being a horrible person won't result in mutiny and a ban. -As the Captain, you can purchase a new emergency shuttle using a communications console. Some require cash, while others give you cash in exchange. Keep in mind that purchasing dangerous shuttles will incur the ire of your crew. +As the Captain, you can purchase a new emergency shuttle using a communications console. Some require cash, while others give you cash in exchange. Keep in mind that purchasing dangerous shuttles may instigate the ire of your crew. As the Chief Medical Officer, your hypospray is like a refillable instant injection syringe that can hold 30 units as opposed to the standard 15. As the Chief Medical Officer, coordinate and communicate with your doctors, chemists, and geneticists during a nuclear emergency, blob infestation, or some other crisis to keep people alive and fighting. +As the Chief Medical Officer, your hardsuit can hold an entire medkit in its suit storage! As a Medical Doctor, you can attempt to drain blood from a husk with a syringe to determine the cause. If you can extract blood, it was caused by extreme temperatures or lasers, if there is no blood to extract, you have confirmed the presence of changelings. As a Medical Doctor, while both heal toxin damage, the difference between charcoal and antitoxin is that charcoal will actively remove all other reagents from one's body, while antitoxin only removes various toxins - but can overdose. As a Medical Doctor, you can surgically implant or extract things from people's chests. This can range from putting in a bomb to pulling out an alien larva. @@ -38,7 +57,9 @@ As a Chemist, some chemicals can only be synthesized by heating up the contents As a Chemist, you will be expected to supply crew with certain chemicals. For example, clonexadone and mannitol for the cryo tubes, unstable mutagen and saltpetre for botany as well as healing pills and patches for the front desk. As a Chemist, you can make 100u bottles from plastic sheets. The ChemMaster can produce infinite 30u glass bottles as well and if researched the medical techfab can make beakers with capacity ranging from 120u to 300u. As a Chemist, you can recharge your chemical dispenser with an inducer or by replacing its cell. +As a Chemist, Water and Potassium mixed together will create an explosion, with power scaling by amount used. Don't do it. As a Geneticist, you can eject someone from cloning early by disabling power in genetics. Note that they will suffer more genetic damage and may lose vital organs from this. +As a Geneticist, T goes to A, and G goes to C. As a Geneticist, becoming a hulk makes you capable of dealing high melee damage, stunlocking people, and punching through walls. However, you can't fire guns, will lose your hulk status if you go into critical condition, and are not considered a human by the AI while you are a hulk. As the Virologist, your viruses can range from healing powers so great that you can heal out of critical status, or diseases so dangerous they can kill the entire crew with airborne spontaneous combustion. Experiment! As the Virologist, you only require small amounts of vaccine to heal a sick patient. Work with the Chemist to distribute your cures more efficiently. @@ -58,11 +79,12 @@ As a Roboticist, you can augment people with cyborg limbs. Augmented limbs can e As the AI, you can click on people's names to look at them. This only works if there are cameras that can see them, they aren't wearing agent IDs and aren't using digital camouflage as changelings. As the AI, you can quickly open and close doors by holding shift while clicking them, bolt them when holding ctrl, and even shock them while holding alt. As the AI, you can take pictures with your camera and upload them to newscasters. +As the AI, you can use CTRL + 1-9 to set a location hotkey for your camera, allowing you to save the location and jump to it at will. Tilde and zero will return you to the last spot you jumped from, and the numpad numbers act as aliases to the regular number keys. As a Cyborg, choose your module carefully, as only cutting and mending your reset wire will let you repick it. If possible, refrain from choosing a module until a situation that requires one occurs. As a Cyborg, you are immune to most forms of stunning, and excel at almost everything far better than humans. However, flashes can easily stunlock you and you cannot do any precision work as you lack hands. As a Cyborg, you are impervious to fires and heat. If you are rogue, you can release plasma fires everywhere and walk through them without a care in the world! As a Cyborg, you are extremely vulnerable to EMPs as EMPs both stun you and damage you. The ion rifle in the armory or a traitor with an EMP kit can kill you in seconds. -As a Service Cyborg, your spray can knocks people down. However, it is blocked by gas masks. +As a Service Cyborg, your spray can knocks people down. However, it is blocked by masks and glasses. As an Engineering Cyborg, you can attach air alarm/fire alarm/APC frames to walls by placing them on the floor and using a screwdriver on them. As a Medical Cyborg, you can fully perform surgery and even augment people. As a Janitor Cyborg, you are the bane of all slaughter demons and even Bubblegum himself. Cleaning up blood stains will severely gimp them. @@ -71,11 +93,12 @@ As the Chief Engineer, your hardsuit is significantly better than everybody else As the Chief Engineer, you can spy on and even forge PDA communications with the message monitor console! The key is in your office. As the Chief Engineer, your locker contains a jetpack upgrade that can be attached to hardsuits. As the Chief Engineer, the power flow control console in your office will show you APC infos and lets you control them remotely. -As an Engineer, the supermatter shard is an extremely dangerous piece of equipment: touching it will disintegrate you. +As an Engineer, the supermatter shard is an extremely dangerous piece of equipment: touching it will disintegrate you. So will touching it with telepathy. As an Engineer, you can electrify grilles by placing wire "nodes" beneath them: the big seemingly unconnected bulges from a half completed wiring job. As an Engineer, return to Engineering once in a while to check on the engine and SMES cells. It's always a good idea to make sure containment isn't compromised. -As an Engineer, you can power the station solely with the solar arrays. While uninteresting, it is a much safer alternative to regular engines. +As an Engineer, you can temporarily power the station solely with the solar arrays. They will provide just enough electricity to power the station for a while, however their output is just slightly below what is truely needed to consistently power the station. As an Engineer, you can cool the supermatter crystal by spraying it with a fire extinguisher. Only for the brave! +As an Engineer, the Particle Accelerator that powers singularity engines is also effective at killing blobs! As an Engineer, you can repair windows by using a welding tool on them while on any intent other than harm. As an Engineer, you can lock APCs, fire alarms, emitters and radiation collectors using your ID card to prevent others from disabling them. As an Engineer, you can convert tesla coils into corona analyzers by using a screwdriver on the circuit board. They will produce less power, but generate research points! @@ -84,6 +107,7 @@ As an Engineer, don't underestimate the humble P.A.C.M.A.N. generators. With upg As an Engineer, your departmental protolathe and circuit printer can manufacture the necessary circuit boards and components to build just about anything. Make extra medical machinery everywhere! Build a gibber for security! Set up an array of emitters pointing down the hall! The possibilities are endless! As an Engineer, you can pry open secure storage blast doors by disabling the engine room APC's main breaker. This is obviously a bad idea if the engine is running. As an Engineer, your RCD can be reloaded with metal, glass or plasteel sheets instead of just compressed matter cartridges. +As an Engineer, the Supermatter Monitoring Program on modular computers give you a detailed report on the Supermatter's condition, and the contents of the air inside of the chamber, allowing you to both diagnose and monitor programs from afar! As an Atmospheric Technician, you can unwrench a pipe regardless of the pressures of the gases inside, but if they're too high they can burst out and injure you! As an Atmospheric Technician, look into replacing your gas pumps with volumetric gas pumps, as those move air in flat numerical amounts, rather than percentages which leave trace gases. As an Atmospheric Technician, you are better suited to fighting fires than anyone else. As such, you have access to better firesuits, backpack firefighter tanks, and a completely heat and fire proof rigsuit. @@ -100,7 +124,7 @@ As the Warden, if a prisoner's crimes are heinous enough you can put them in per As the Warden, you can implant criminals you suspect might re-offend with devices that will track their location and allow you to remotely inject them with disabling chemicals. As the Warden, you can use handcuffs on orange prisoner shoes to turn them into cuffed shoes, forcing prisoners to walk and potentially thwarting an escape. As a Security Officer, communicate and coordinate with your fellow officers using the security channel (:s) to avoid confusion. -As a Security Officer, your sechuds or HUDsunglasses can not only see crewmates' job assignments and criminal status, but also if they are mindshield implanted. Use this to your advantage in a revolution to definitively tell who is on your side! +As a Security Officer, your sechuds or HUDsunglasses can not only see crewmates' job assignments and criminal status, but also if they are mindshield implanted. You can tell by the flashing blue outline around their job icon. Use this to your advantage in a revolution to definitively tell who is on your side! As a Security Officer, mindshield implants can only prevent someone from being turned into a cultist: unlike revolutionaries, it will not de-cult them if they have already been converted. As a Security Officer, examining someone while wearing sechuds or HUDsunglasses will let you set their arrest level, which will cause Beepsky and other security bots to chase after them. As the Detective, people leave fingerprints everywhere and on everything. With the exception of white latex, gloves will hide them. All is not lost, however, as gloves leave fibers specific to their kind such as black or nitrile, pointing to a general department. @@ -117,6 +141,8 @@ As the Clown, if you lose your banana peel, you can still slip people with your As the Clown, eating bananas heals you slightly. Honk! As the Clown, your Grail is the mineral bananium, which can be given to the Roboticist to build you a fun and robust mech beloved by everyone. As the Clown, you can use your stamp on a sheet of cardboard as the first step of making a honkbot. Fun for the whole crew! +As the Clown, spice your gimmicks up! Nobody likes a one-trick pony. +As the Clown, if you're a Traitor and get an emag on sale (or convince another traitor), you can emag your Clown Car to unlock a variety of new functions, including the Siege Mode, which will allow you to launch your passengers, preferably directly into the Supermatter! Or into space. As the Chaplain, your null rod has anti magic functions: it can destroy cultist runes by hitting them, and it makes you immune to wizard spells and cult magic. As the Chaplain, your bible is also a container that can store small items. Depending on your god, your starting bible may come with a surprise! As the Chaplain, you are much more likely to get a response by praying to the gods than most people. To boost your chances, make altars with colorful crayon runes, lit candles, and wire art. @@ -125,9 +151,11 @@ As a Botanist, you can mutate the plants growing in your hydroponics trays with As a Botanist, you should look into increasing the potency of your plants. This increases the size, amount of chemicals, points gained from grinding them in the biogenerator, and lets people know you are a proficient botanist. As a Botanist, you can combine production trait chemicals just like a Chemist. Chlorine (blumpkin) + radium and phosphorus (glowshrooms) equals unstable mutagen! As a Cook, you can load your food into snack vending machines. +As a Cook, you can create a very wide variety of food with the crafting menu. You can find it by looking for the hammer icon near your intents. As a Cook, you can rename your custom made food with a pen. As a Cook, any food you make will be much healthier than the junk food found in vendors. Having the crew routinely eating from you will provide minor buffs. As a Cook, being in the kitchen will make you remember the basics of Close Quarters Cooking. It is highly effective at removing Assistants from your workplace. +As a Cook, most non-custom foods will have a secondary effect, ranging from healing you to making you move at lightspeed. Experiment! As the Bartender, the drinks you start with only give you the basics. If you want more advanced mixtures, look into working with chemistry, hydroponics, or even mining for things to grind up and throw in! As the Bartender, you can use a circular saw on your shotgun to make it easier to store. As a Janitor, if someone steals your janicart, you can instead use your space cleaner spray, grenades, water sprayer, exact bloody revenge or order another from Cargo. @@ -187,17 +215,8 @@ As a Cultist, do not cause too much chaos before your objective is completed. If As a Cultist, your team starts off very weak, but if necessary can quickly convert everything they have into raw power. Make sure you have the numbers and equipment to support going loud, or the cult will fall flat on its face. As a Cultist, the Blood Boil rune will deal massive amounts of brute damage to non-cultists, stamina damage to Ratvarian scum, and some damage to fellow cultists of Nar'Sie nearby, but will create a fire where the rune stands on use. As a Cultist, you can create an army of manifested goons using a combination of the Manifest rune, which creates homunculi from ghosts, and the Blood Drain rune, which drains life from anyone standing on any blood drain rune. -As a Cultist or Servant, check the alert in the upper-right of your screen for all the details about your cult's current status and objective. -As a Servant, your jumpsuit functions like a chameleon suit and can take on a lot of different appearances. Use this for stealth and disguise! -As a Servant, you can unlock scripture tiers early by stockpiling large amounts of power. -As a Servant, integration cogs are your primary source of power generation, and you should use as many as possible. -As a Servant, Abscond also brings anyone you're dragging to Reebe at the cost of some extra power. -As a Servant, wraith spectacles let you see everything through walls at virtually no drawback. Just take them off if someone might see you! -As a Servant, declaring war empowers a huge amount of your tools and constructs, and makes you into a spaceproof, armored clockwork automaton. -As a Servant, converting or sabotaging Science and Genetics can make defending the Ark much easier. -As a Servant, the Clockwork Armaments scripture allows you to summon armor and/or a weapon at will. Use it whenever you unlock it! -You can deconvert Cultists of Nar'Sie and Servants of Ratvar by feeding them large amounts of holy water. Unlike revolutionaries, implanting them with mindshield implants won't do it! -Tiles sprayed with holy water will permanently block Servants of Ratvar from teleporting onto them. +As a Cultist, check the alert in the upper-right of your screen for all the details about your cult's current status and objective. +You can deconvert Cultists of Nar'Sie by feeding them large amounts of holy water. Unlike revolutionaries, implanting them with mindshield implants won't do it! The Chaplain can bless any container with water by hitting it with their bible. Holy water has a myriad of uses against both cults and large amounts of it are a great contributor to success against them. The Chaplain's holy weapon will kill clockwork marauders in two hits. As a Wizard, you can turn people to stone, then animate the resulting statue with a staff of animation to create an extremely powerful minion, for all of 5 minutes at least. @@ -210,7 +229,7 @@ As an Abductor Agent, the combat mode vest has much higher resistance to every k As an Abductor, the baton can cycle between four modes: stun, sleep, cuff and probe. As a Revenant, the Chaplain is your worst enemy, as they can damage you massively with the null rod and make large swaths of the station impassable with holy water. As a Revenant, your essence is also your health, so revealing yourself in front of humans to harvest the essence of the living is much safer if you've already stocked up on essences from poorly guarded corpses. -As a Revenant, your Defile ability removes holy water from tiles in a small radius, allowing you to reclaim the station from the chaplain if they've been covering the station in holy water. +As a Revenant, your Defile ability removes holy water from tiles in a small radius, along with salt, allowing you to reclaim the station from the chaplain if they've been covering the station in holy water. It can also be used to open morgue trays! As a Revenant, your Overload Lights ability will only shock humans with lights if the lights are still on after a brief delay. As a Revenant, your Malfunction ability in general damages machinery and mechanical objects, possibly even emagging some objects. Experiment! As a Revenant, the illness inflicted on humans by Blight can be easily cured by lying down or with holy water, making it best used on targets that have no time to lie down, such as humans in combat. diff --git a/tgstation.dme b/tgstation.dme index 591505f23f3..dbf124e6340 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -43,6 +43,7 @@ #include "code\__DEFINES\economy.dm" #include "code\__DEFINES\events.dm" #include "code\__DEFINES\exports.dm" +#include "code\__DEFINES\fantasy_affixes.dm" #include "code\__DEFINES\flags.dm" #include "code\__DEFINES\food.dm" #include "code\__DEFINES\footsteps.dm" @@ -74,6 +75,7 @@ #include "code\__DEFINES\pinpointers.dm" #include "code\__DEFINES\pipe_construction.dm" #include "code\__DEFINES\preferences.dm" +#include "code\__DEFINES\procpath.dm" #include "code\__DEFINES\profile.dm" #include "code\__DEFINES\qdel.dm" #include "code\__DEFINES\radiation.dm" @@ -171,6 +173,7 @@ #include "code\_onclick\observer.dm" #include "code\_onclick\other_mobs.dm" #include "code\_onclick\overmind.dm" +#include "code\_onclick\pai.dm" #include "code\_onclick\telekinesis.dm" #include "code\_onclick\hud\_defines.dm" #include "code\_onclick\hud\action_button.dm" @@ -192,10 +195,12 @@ #include "code\_onclick\hud\human.dm" #include "code\_onclick\hud\monkey.dm" #include "code\_onclick\hud\movable_screen_objects.dm" +#include "code\_onclick\hud\pai.dm" #include "code\_onclick\hud\parallax.dm" #include "code\_onclick\hud\picture_in_picture.dm" #include "code\_onclick\hud\plane_master.dm" #include "code\_onclick\hud\radial.dm" +#include "code\_onclick\hud\radial_persistent.dm" #include "code\_onclick\hud\revenanthud.dm" #include "code\_onclick\hud\robot.dm" #include "code\_onclick\hud\screen_objects.dm" @@ -213,6 +218,7 @@ #include "code\controllers\configuration\entries\game_options.dm" #include "code\controllers\configuration\entries\general.dm" #include "code\controllers\subsystem\acid.dm" +#include "code\controllers\subsystem\adjacent_air.dm" #include "code\controllers\subsystem\air.dm" #include "code\controllers\subsystem\assets.dm" #include "code\controllers\subsystem\atoms.dm" @@ -313,7 +319,6 @@ #include "code\datums\shuttles.dm" #include "code\datums\soullink.dm" #include "code\datums\spawners_menu.dm" -#include "code\datums\traits.dm" #include "code\datums\verbs.dm" #include "code\datums\weakrefs.dm" #include "code\datums\world_topic.dm" @@ -332,6 +337,8 @@ #include "code\datums\components\_component.dm" #include "code\datums\components\anti_magic.dm" #include "code\datums\components\armor_plate.dm" +#include "code\datums\components\bane.dm" +#include "code\datums\components\beetlejuice.dm" #include "code\datums\components\butchering.dm" #include "code\datums\components\caltrop.dm" #include "code\datums\components\chasm.dm" @@ -348,6 +355,7 @@ #include "code\datums\components\heirloom.dm" #include "code\datums\components\infective.dm" #include "code\datums\components\jousting.dm" +#include "code\datums\components\knockback.dm" #include "code\datums\components\knockoff.dm" #include "code\datums\components\lockon_aiming.dm" #include "code\datums\components\magnetic_catch.dm" @@ -366,18 +374,25 @@ #include "code\datums\components\rotation.dm" #include "code\datums\components\signal_redirect.dm" #include "code\datums\components\slippery.dm" +#include "code\datums\components\snail_crawl.dm" #include "code\datums\components\spawner.dm" #include "code\datums\components\spill.dm" #include "code\datums\components\spooky.dm" #include "code\datums\components\squeak.dm" #include "code\datums\components\stationloving.dm" #include "code\datums\components\swarming.dm" +#include "code\datums\components\tactical.dm" +#include "code\datums\components\tether.dm" #include "code\datums\components\thermite.dm" #include "code\datums\components\uplink.dm" #include "code\datums\components\waddling.dm" #include "code\datums\components\wearertargeting.dm" #include "code\datums\components\wet_floor.dm" #include "code\datums\components\decals\blood.dm" +#include "code\datums\components\fantasy\_fantasy.dm" +#include "code\datums\components\fantasy\affix.dm" +#include "code\datums\components\fantasy\prefixes.dm" +#include "code\datums\components\fantasy\suffixes.dm" #include "code\datums\components\storage\storage.dm" #include "code\datums\components\storage\concrete\_concrete.dm" #include "code\datums\components\storage\concrete\bag_of_holding.dm" @@ -394,10 +409,12 @@ #include "code\datums\diseases\brainrot.dm" #include "code\datums\diseases\cold.dm" #include "code\datums\diseases\cold9.dm" +#include "code\datums\diseases\decloning.dm" #include "code\datums\diseases\dna_spread.dm" #include "code\datums\diseases\fake_gbs.dm" #include "code\datums\diseases\flu.dm" #include "code\datums\diseases\fluspanish.dm" +#include "code\datums\diseases\gastrolisis.dm" #include "code\datums\diseases\gbs.dm" #include "code\datums\diseases\heart_failure.dm" #include "code\datums\diseases\magnitis.dm" @@ -444,7 +461,6 @@ #include "code\datums\helper_datums\getrev.dm" #include "code\datums\helper_datums\icon_snapshot.dm" #include "code\datums\helper_datums\teleport.dm" -#include "code\datums\helper_datums\topic_input.dm" #include "code\datums\looping_sounds\_looping_sound.dm" #include "code\datums\looping_sounds\item_sounds.dm" #include "code\datums\looping_sounds\machinery_sounds.dm" @@ -584,6 +600,7 @@ #include "code\game\machinery\doppler_array.dm" #include "code\game\machinery\droneDispenser.dm" #include "code\game\machinery\exp_cloner.dm" +#include "code\game\machinery\fat_sucker.dm" #include "code\game\machinery\firealarm.dm" #include "code\game\machinery\flasher.dm" #include "code\game\machinery\gulag_item_reclaimer.dm" @@ -610,6 +627,7 @@ #include "code\game\machinery\Sleeper.dm" #include "code\game\machinery\slotmachine.dm" #include "code\game\machinery\spaceheater.dm" +#include "code\game\machinery\stasis.dm" #include "code\game\machinery\status_display.dm" #include "code\game\machinery\suit_storage_unit.dm" #include "code\game\machinery\syndicatebeacon.dm" @@ -647,7 +665,6 @@ #include "code\game\machinery\computer\robot.dm" #include "code\game\machinery\computer\security.dm" #include "code\game\machinery\computer\station_alert.dm" -#include "code\game\machinery\computer\telecrystalconsoles.dm" #include "code\game\machinery\computer\teleporter.dm" #include "code\game\machinery\doors\airlock.dm" #include "code\game\machinery\doors\airlock_electronics.dm" @@ -792,6 +809,7 @@ #include "code\game\objects\items\control_wand.dm" #include "code\game\objects\items\cosmetics.dm" #include "code\game\objects\items\courtroom.dm" +#include "code\game\objects\items\crab17.dm" #include "code\game\objects\items\crayons.dm" #include "code\game\objects\items\credit_holochip.dm" #include "code\game\objects\items\defib.dm" @@ -980,6 +998,7 @@ #include "code\game\objects\structures\fireplace.dm" #include "code\game\objects\structures\flora.dm" #include "code\game\objects\structures\fluff.dm" +#include "code\game\objects\structures\fugitive_role_spawners.dm" #include "code\game\objects\structures\ghost_role_spawners.dm" #include "code\game\objects\structures\girders.dm" #include "code\game\objects\structures\grille.dm" @@ -1171,16 +1190,33 @@ #include "code\modules\antagonists\abductor\machinery\experiment.dm" #include "code\modules\antagonists\abductor\machinery\pad.dm" #include "code\modules\antagonists\blob\blob.dm" -#include "code\modules\antagonists\blob\blob\blob_report.dm" -#include "code\modules\antagonists\blob\blob\overmind.dm" -#include "code\modules\antagonists\blob\blob\powers.dm" -#include "code\modules\antagonists\blob\blob\theblob.dm" -#include "code\modules\antagonists\blob\blob\blobs\blob_mobs.dm" -#include "code\modules\antagonists\blob\blob\blobs\core.dm" -#include "code\modules\antagonists\blob\blob\blobs\factory.dm" -#include "code\modules\antagonists\blob\blob\blobs\node.dm" -#include "code\modules\antagonists\blob\blob\blobs\resource.dm" -#include "code\modules\antagonists\blob\blob\blobs\shield.dm" +#include "code\modules\antagonists\blob\blob_mobs.dm" +#include "code\modules\antagonists\blob\blob_report.dm" +#include "code\modules\antagonists\blob\overmind.dm" +#include "code\modules\antagonists\blob\powers.dm" +#include "code\modules\antagonists\blob\blobstrains\_blobstrain.dm" +#include "code\modules\antagonists\blob\blobstrains\_reagent.dm" +#include "code\modules\antagonists\blob\blobstrains\blazing_oil.dm" +#include "code\modules\antagonists\blob\blobstrains\cryogenic_poison.dm" +#include "code\modules\antagonists\blob\blobstrains\debris_devourer.dm" +#include "code\modules\antagonists\blob\blobstrains\electromagnetic_web.dm" +#include "code\modules\antagonists\blob\blobstrains\energized_jelly.dm" +#include "code\modules\antagonists\blob\blobstrains\explosive_lattice.dm" +#include "code\modules\antagonists\blob\blobstrains\multiplex.dm" +#include "code\modules\antagonists\blob\blobstrains\networked_fibers.dm" +#include "code\modules\antagonists\blob\blobstrains\pressurized_slime.dm" +#include "code\modules\antagonists\blob\blobstrains\reactive_spines.dm" +#include "code\modules\antagonists\blob\blobstrains\regenerative_materia.dm" +#include "code\modules\antagonists\blob\blobstrains\replicating_foam.dm" +#include "code\modules\antagonists\blob\blobstrains\shifting_fragments.dm" +#include "code\modules\antagonists\blob\blobstrains\synchronous_mesh.dm" +#include "code\modules\antagonists\blob\blobstrains\zombifying_pods.dm" +#include "code\modules\antagonists\blob\structures\_blob.dm" +#include "code\modules\antagonists\blob\structures\core.dm" +#include "code\modules\antagonists\blob\structures\factory.dm" +#include "code\modules\antagonists\blob\structures\node.dm" +#include "code\modules\antagonists\blob\structures\resource.dm" +#include "code\modules\antagonists\blob\structures\shield.dm" #include "code\modules\antagonists\blood_contract\blood_contract.dm" #include "code\modules\antagonists\brainwashing\brainwashing.dm" #include "code\modules\antagonists\brother\brother.dm" @@ -1285,9 +1321,15 @@ #include "code\modules\antagonists\disease\disease_event.dm" #include "code\modules\antagonists\disease\disease_mob.dm" #include "code\modules\antagonists\ert\ert.dm" +#include "code\modules\antagonists\fugitive\fugitive.dm" +#include "code\modules\antagonists\fugitive\fugitive_outfits.dm" +#include "code\modules\antagonists\fugitive\fugitive_ship.dm" +#include "code\modules\antagonists\fugitive\hunter.dm" +#include "code\modules\antagonists\fugitive\old_god.dm" #include "code\modules\antagonists\greentext\greentext.dm" #include "code\modules\antagonists\highlander\highlander.dm" #include "code\modules\antagonists\hivemind\hivemind.dm" +#include "code\modules\antagonists\hivemind\vessel.dm" #include "code\modules\antagonists\magic_servant\servant.dm" #include "code\modules\antagonists\monkey\monkey.dm" #include "code\modules\antagonists\morph\morph.dm" @@ -1408,7 +1450,6 @@ #include "code\modules\awaymissions\mission_code\caves.dm" #include "code\modules\awaymissions\mission_code\centcomAway.dm" #include "code\modules\awaymissions\mission_code\challenge.dm" -#include "code\modules\awaymissions\mission_code\mining.dm" #include "code\modules\awaymissions\mission_code\moonoutpost19.dm" #include "code\modules\awaymissions\mission_code\murderdome.dm" #include "code\modules\awaymissions\mission_code\research.dm" @@ -1472,6 +1513,7 @@ #include "code\modules\client\client_colour.dm" #include "code\modules\client\client_defines.dm" #include "code\modules\client\client_procs.dm" +#include "code\modules\client\darkmode.dm" #include "code\modules\client\message.dm" #include "code\modules\client\player_details.dm" #include "code\modules\client\preferences.dm" @@ -1510,6 +1552,7 @@ #include "code\modules\clothing\neck\_neck.dm" #include "code\modules\clothing\outfits\ert.dm" #include "code\modules\clothing\outfits\event.dm" +#include "code\modules\clothing\outfits\plasmaman.dm" #include "code\modules\clothing\outfits\standard.dm" #include "code\modules\clothing\outfits\vr.dm" #include "code\modules\clothing\outfits\vv_outfit.dm" @@ -1527,6 +1570,7 @@ #include "code\modules\clothing\suits\_suits.dm" #include "code\modules\clothing\suits\armor.dm" #include "code\modules\clothing\suits\bio.dm" +#include "code\modules\clothing\suits\chaplainsuits.dm" #include "code\modules\clothing\suits\cloaks.dm" #include "code\modules\clothing\suits\jobs.dm" #include "code\modules\clothing\suits\labcoat.dm" @@ -1547,6 +1591,10 @@ #include "code\modules\clothing\under\jobs\engineering.dm" #include "code\modules\clothing\under\jobs\medsci.dm" #include "code\modules\clothing\under\jobs\security.dm" +#include "code\modules\clothing\under\jobs\Plasmaman\civilian_service.dm" +#include "code\modules\clothing\under\jobs\Plasmaman\engineering.dm" +#include "code\modules\clothing\under\jobs\Plasmaman\medsci.dm" +#include "code\modules\clothing\under\jobs\Plasmaman\security.dm" #include "code\modules\crafting\craft.dm" #include "code\modules\crafting\guncrafting.dm" #include "code\modules\crafting\recipes.dm" @@ -1584,6 +1632,7 @@ #include "code\modules\events\dust.dm" #include "code\modules\events\electrical_storm.dm" #include "code\modules\events\false_alarm.dm" +#include "code\modules\events\fugitive_spawning.dm" #include "code\modules\events\ghost_role.dm" #include "code\modules\events\grid_check.dm" #include "code\modules\events\heart_attack.dm" @@ -1725,6 +1774,7 @@ #include "code\modules\hydroponics\grown\cotton.dm" #include "code\modules\hydroponics\grown\eggplant.dm" #include "code\modules\hydroponics\grown\flowers.dm" +#include "code\modules\hydroponics\grown\garlic.dm" #include "code\modules\hydroponics\grown\grass_carpet.dm" #include "code\modules\hydroponics\grown\kudzu.dm" #include "code\modules\hydroponics\grown\melon.dm" @@ -2003,6 +2053,7 @@ #include "code\modules\mob\living\carbon\human\species_types\podpeople.dm" #include "code\modules\mob\living\carbon\human\species_types\shadowpeople.dm" #include "code\modules\mob\living\carbon\human\species_types\skeletons.dm" +#include "code\modules\mob\living\carbon\human\species_types\snail.dm" #include "code\modules\mob\living\carbon\human\species_types\synths.dm" #include "code\modules\mob\living\carbon\human\species_types\vampire.dm" #include "code\modules\mob\living\carbon\human\species_types\zombies.dm" @@ -2069,6 +2120,7 @@ #include "code\modules\mob\living\simple_animal\bot\cleanbot.dm" #include "code\modules\mob\living\simple_animal\bot\construction.dm" #include "code\modules\mob\living\simple_animal\bot\ed209bot.dm" +#include "code\modules\mob\living\simple_animal\bot\firebot.dm" #include "code\modules\mob\living\simple_animal\bot\floorbot.dm" #include "code\modules\mob\living\simple_animal\bot\honkbot.dm" #include "code\modules\mob\living\simple_animal\bot\medbot.dm" @@ -2104,6 +2156,7 @@ #include "code\modules\mob\living\simple_animal\guardian\types\dextrous.dm" #include "code\modules\mob\living\simple_animal\guardian\types\explosive.dm" #include "code\modules\mob\living\simple_animal\guardian\types\fire.dm" +#include "code\modules\mob\living\simple_animal\guardian\types\gravitokinetic.dm" #include "code\modules\mob\living\simple_animal\guardian\types\lightning.dm" #include "code\modules\mob\living\simple_animal\guardian\types\protector.dm" #include "code\modules\mob\living\simple_animal\guardian\types\ranged.dm" @@ -2117,6 +2170,7 @@ #include "code\modules\mob\living\simple_animal\hostile\eyeballs.dm" #include "code\modules\mob\living\simple_animal\hostile\faithless.dm" #include "code\modules\mob\living\simple_animal\hostile\giant_spider.dm" +#include "code\modules\mob\living\simple_animal\hostile\goose.dm" #include "code\modules\mob\living\simple_animal\hostile\headcrab.dm" #include "code\modules\mob\living\simple_animal\hostile\hivebot.dm" #include "code\modules\mob\living\simple_animal\hostile\hostile.dm" @@ -2375,6 +2429,7 @@ #include "code\modules\projectiles\guns\ballistic\rifle.dm" #include "code\modules\projectiles\guns\ballistic\shotgun.dm" #include "code\modules\projectiles\guns\ballistic\toy.dm" +#include "code\modules\projectiles\guns\energy\dueling.dm" #include "code\modules\projectiles\guns\energy\energy_gun.dm" #include "code\modules\projectiles\guns\energy\kinetic_accelerator.dm" #include "code\modules\projectiles\guns\energy\laser.dm" @@ -2442,7 +2497,6 @@ #include "code\modules\reagents\chemistry\machinery\reagentgrinder.dm" #include "code\modules\reagents\chemistry\machinery\smoke_machine.dm" #include "code\modules\reagents\chemistry\reagents\alcohol_reagents.dm" -#include "code\modules\reagents\chemistry\reagents\blob_reagents.dm" #include "code\modules\reagents\chemistry\reagents\drink_reagents.dm" #include "code\modules\reagents\chemistry\reagents\drug_reagents.dm" #include "code\modules\reagents\chemistry\reagents\food_reagents.dm" @@ -2610,7 +2664,6 @@ #include "code\modules\spells\spell_types\curse.dm" #include "code\modules\spells\spell_types\devil.dm" #include "code\modules\spells\spell_types\devil_boons.dm" -#include "code\modules\spells\spell_types\dumbfire.dm" #include "code\modules\spells\spell_types\emplosion.dm" #include "code\modules\spells\spell_types\ethereal_jaunt.dm" #include "code\modules\spells\spell_types\explosion.dm" @@ -2701,7 +2754,6 @@ #include "code\modules\surgery\organs\tails.dm" #include "code\modules\surgery\organs\tongue.dm" #include "code\modules\surgery\organs\vocal_cords.dm" -#include "code\modules\tgs\event_handler.dm" #include "code\modules\tgs\includes.dm" #include "code\modules\tgui\external.dm" #include "code\modules\tgui\states.dm" @@ -2762,6 +2814,7 @@ #include "code\modules\vending\medical.dm" #include "code\modules\vending\medical_wall.dm" #include "code\modules\vending\megaseed.dm" +#include "code\modules\vending\modularpc.dm" #include "code\modules\vending\nutrimax.dm" #include "code\modules\vending\plasmaresearch.dm" #include "code\modules\vending\robotics.dm" @@ -2772,8 +2825,6 @@ #include "code\modules\vending\toys.dm" #include "code\modules\vending\wardrobes.dm" #include "code\modules\vending\youtool.dm" -#include "code\modules\VR\vr_human.dm" -#include "code\modules\VR\vr_sleeper.dm" #include "code\modules\zombie\items.dm" #include "code\modules\zombie\organs.dm" #include "interface\interface.dm" diff --git a/tgui/assets/tgui.css b/tgui/assets/tgui.css index c73fc2adfac..7eb8cda5d2e 100644 --- a/tgui/assets/tgui.css +++ b/tgui/assets/tgui.css @@ -1 +1 @@ -@charset "utf-8";body,html{box-sizing:border-box;height:100%;margin:0}html{overflow:hidden;cursor:default}body{overflow:auto;font-family:Verdana,Geneva,sans-serif;font-size:12px;color:#fff;background-color:#2a2a2a;background-image:linear-gradient(180deg,#2a2a2a 0,#202020);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff2a2a2a",endColorstr="#ff202020",GradientType=0)}*,:after,:before{box-sizing:inherit}h1,h2,h3,h4{display:inline-block;margin:0;padding:6px 0}h1{font-size:18px}h2{font-size:16px}h3{font-size:14px}h4{font-size:12px}body.clockwork{background:linear-gradient(180deg,#b18b25 0,#5f380e);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffb18b25",endColorstr="#ff5f380e",GradientType=0)}body.clockwork .normal{color:#b18b25}body.clockwork .good{color:#cfba47}body.clockwork .average{color:#896b19}body.clockwork .bad{color:#5f380e}body.clockwork .highlight{color:#b18b25}body.clockwork main{display:block;margin-top:32px;padding:2px 6px 0}body.clockwork hr{height:2px;background-color:#b18b25;border:none}body.clockwork .hidden{display:none}body.clockwork .bar .barText,body.clockwork span.button{color:#b18b25;font-size:12px;font-weight:400;font-style:normal;text-decoration:none}body.clockwork .bold{font-weight:700}body.clockwork .italic{font-style:italic}body.clockwork [unselectable=on]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.clockwork div[data-tooltip],body.clockwork span[data-tooltip]{position:relative}body.clockwork div[data-tooltip]:after,body.clockwork span[data-tooltip]:after{position:absolute;display:block;z-index:2;width:250px;padding:10px;-ms-transform:translateX(-50%);transform:translateX(-50%);visibility:hidden;opacity:0;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";white-space:normal;text-align:left;content:attr(data-tooltip);transition:all .5s;border:1px solid #170800;background-color:#2d1400}body.clockwork div[data-tooltip]:hover:after,body.clockwork span[data-tooltip]:hover:after{visibility:visible;opacity:1;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"}body.clockwork div[data-tooltip].tooltip-top:after,body.clockwork span[data-tooltip].tooltip-top:after{bottom:100%;left:50%;-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.clockwork div[data-tooltip].tooltip-top:hover:after,body.clockwork span[data-tooltip].tooltip-top:hover:after{-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.clockwork div[data-tooltip].tooltip-bottom:after,body.clockwork span[data-tooltip].tooltip-bottom:after{top:100%;left:50%;-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.clockwork div[data-tooltip].tooltip-bottom:hover:after,body.clockwork span[data-tooltip].tooltip-bottom:hover:after{-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.clockwork div[data-tooltip].tooltip-left:after,body.clockwork span[data-tooltip].tooltip-left:after{top:50%;right:100%;-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.clockwork div[data-tooltip].tooltip-left:hover:after,body.clockwork span[data-tooltip].tooltip-left:hover:after{-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.clockwork div[data-tooltip].tooltip-right:after,body.clockwork span[data-tooltip].tooltip-right:after{top:50%;left:100%;-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.clockwork div[data-tooltip].tooltip-right:hover:after,body.clockwork span[data-tooltip].tooltip-right:hover:after{-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.clockwork .bar{display:inline-block;position:relative;vertical-align:middle;width:100%;height:20px;line-height:17px;padding:1px;border:1px solid #170800;background:#2d1400}body.clockwork .bar .barText{position:absolute;top:0;right:3px}body.clockwork .bar .barFill{display:block;height:100%;transition:background-color 1s;background-color:#b18b25}body.clockwork .bar .barFill.good{background-color:#cfba47}body.clockwork .bar .barFill.average{background-color:#896b19}body.clockwork .bar .barFill.bad{background-color:#5f380e}body.clockwork span.button{display:inline-block;vertical-align:middle;min-height:20px;line-height:17px;padding:0 5px;white-space:nowrap;border:1px solid #170800}body.clockwork span.button .fa{padding-right:2px}body.clockwork span.button.normal{transition:background-color .5s;background-color:#5f380e}body.clockwork span.button.normal.active:focus,body.clockwork span.button.normal.active:hover{transition:background-color .25s;background-color:#704211;outline:0}body.clockwork span.button.disabled{transition:background-color .5s;background-color:#2d1400}body.clockwork span.button.disabled.active:focus,body.clockwork span.button.disabled.active:hover{transition:background-color .25s;background-color:#441e00;outline:0}body.clockwork span.button.selected{transition:background-color .5s;background-color:#cfba47}body.clockwork span.button.selected.active:focus,body.clockwork span.button.selected.active:hover{transition:background-color .25s;background-color:#d1bd50;outline:0}body.clockwork span.button.toggle{transition:background-color .5s;background-color:#cfba47}body.clockwork span.button.toggle.active:focus,body.clockwork span.button.toggle.active:hover{transition:background-color .25s;background-color:#d1bd50;outline:0}body.clockwork span.button.caution{transition:background-color .5s;background-color:#be6209}body.clockwork span.button.caution.active:focus,body.clockwork span.button.caution.active:hover{transition:background-color .25s;background-color:#cd6a0a;outline:0}body.clockwork span.button.danger{transition:background-color .5s;background-color:#9a9d00}body.clockwork span.button.danger.active:focus,body.clockwork span.button.danger.active:hover{transition:background-color .25s;background-color:#abaf00;outline:0}body.clockwork span.button.gridable{width:125px;margin:2px 0}body.clockwork span.button.gridable.center{text-align:center;width:75px}body.clockwork span.button+span:not(.button),body.clockwork span:not(.button)+span.button{margin-left:5px}body.clockwork div.display{width:100%;padding:4px;margin:6px 0;background-color:#2d1400;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#e62d1400,endColorStr=#e62d1400)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#e62d1400,endColorStr=#e62d1400);background-color:rgba(45,20,0,.9);box-shadow:inset 0 0 5px rgba(0,0,0,.3)}body.clockwork div.display.tabular{padding:0;margin:0}body.clockwork div.display header,body.clockwork div.subdisplay header{display:block;position:relative;width:100%;padding:0 4px;margin-bottom:6px;color:#cfba47;border-bottom:2px solid #b18b25}body.clockwork div.display header .buttonRight,body.clockwork div.subdisplay header .buttonRight{position:absolute;bottom:6px;right:4px}body.clockwork div.display article,body.clockwork div.subdisplay article{display:table;width:100%;border-collapse:collapse}body.clockwork input{display:inline-block;vertical-align:middle;height:20px;line-height:17px;padding:0 5px;white-space:nowrap;color:#b18b25;background-color:#cfba47;border:1px solid #272727}body.clockwork input.number{width:35px}body.clockwork input:-ms-input-placeholder{color:#999}body.clockwork input::placeholder{color:#999}body.clockwork input::-ms-clear{display:none}body.clockwork svg.linegraph{overflow:hidden}body.clockwork div.notice{margin:8px 0;padding:4px;box-shadow:none;color:#2d1400;font-weight:700;font-style:italic;background-color:#000;background-image:repeating-linear-gradient(-45deg,#000,#000 10px,#170800 0,#170800 20px)}body.clockwork div.notice .label{color:#2d1400}body.clockwork div.notice .content:only-of-type{padding:0}body.clockwork div.notice hr{background-color:#896b19}body.clockwork div.resize{position:fixed;bottom:0;right:0;width:0;height:0;border-style:solid;border-width:0 0 45px 45px;border-color:transparent transparent #5f380e;-ms-transform:rotate(1turn);transform:rotate(1turn)}body.clockwork section .cell,body.clockwork section .content,body.clockwork section .label,body.clockwork section .line,body.nanotrasen section .cell,body.nanotrasen section .content,body.nanotrasen section .label,body.nanotrasen section .line,body.syndicate section .cell,body.syndicate section .content,body.syndicate section .label,body.syndicate section .line{display:table-cell;margin:0;text-align:left;vertical-align:middle;padding:3px 2px}body.clockwork section{display:table-row;width:100%}body.clockwork section:not(:first-child){padding-top:4px}body.clockwork section.candystripe:nth-child(2n){background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000);background-color:rgba(0,0,0,.2)}body.clockwork section .label{width:1%;padding-right:32px;white-space:nowrap;color:#b18b25}body.clockwork section .content:not(:last-child){padding-right:16px}body.clockwork section .line{width:100%}body.clockwork section .cell:not(:first-child){text-align:center;padding-top:0}body.clockwork section .cell span.button{width:75px}body.clockwork section:not(:last-child){padding-right:4px}body.clockwork div.subdisplay{width:100%;margin:0}body.clockwork header.titlebar .close,body.clockwork header.titlebar .minimize{display:inline-block;position:relative;padding:7px;margin:-7px;color:#cfba47}body.clockwork header.titlebar .close:hover,body.clockwork header.titlebar .minimize:hover{color:#d1bd50}body.clockwork header.titlebar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px;background-color:#5f380e;border-bottom:1px solid #170800;box-shadow:0 3px 3px rgba(0,0,0,.1)}body.clockwork header.titlebar .statusicon{position:absolute;top:4px;left:12px;transition:color .5s}body.clockwork header.titlebar .title{position:absolute;top:6px;left:46px;color:#cfba47;font-size:16px;white-space:nowrap}body.clockwork header.titlebar .minimize{position:absolute;top:6px;right:46px}body.clockwork header.titlebar .close{position:absolute;top:4px;right:12px}body.nanotrasen{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjAiIHZpZXdCb3g9IjAgMCA0MjUgMjAwIiBvcGFjaXR5PSIuMzMiPgogIDxwYXRoIGQ9Im0gMTc4LjAwMzk5LDAuMDM4NjkgLTcxLjIwMzkzLDAgYSA2Ljc2MTM0MjIsNi4wMjU1NDk1IDAgMCAwIC02Ljc2MTM0LDYuMDI1NTUgbCAwLDE4Ny44NzE0NyBhIDYuNzYxMzQyMiw2LjAyNTU0OTUgMCAwIDAgNi43NjEzNCw2LjAyNTU0IGwgNTMuMTA3MiwwIGEgNi43NjEzNDIyLDYuMDI1NTQ5NSAwIDAgMCA2Ljc2MTM1LC02LjAyNTU0IGwgMCwtMTAxLjU0NDAxOCA3Mi4yMTYyOCwxMDQuNjk5Mzk4IGEgNi43NjEzNDIyLDYuMDI1NTQ5NSAwIDAgMCA1Ljc2MDE1LDIuODcwMTYgbCA3My41NTQ4NywwIGEgNi43NjEzNDIyLDYuMDI1NTQ5NSAwIDAgMCA2Ljc2MTM1LC02LjAyNTU0IGwgMCwtMTg3Ljg3MTQ3IGEgNi43NjEzNDIyLDYuMDI1NTQ5NSAwIDAgMCAtNi43NjEzNSwtNi4wMjU1NSBsIC01NC43MTY0NCwwIGEgNi43NjEzNDIyLDYuMDI1NTQ5NSAwIDAgMCAtNi43NjEzMyw2LjAyNTU1IGwgMCwxMDIuNjE5MzUgTCAxODMuNzY0MTMsMi45MDg4NiBhIDYuNzYxMzQyMiw2LjAyNTU0OTUgMCAwIDAgLTUuNzYwMTQsLTIuODcwMTcgeiIgLz4KICA8cGF0aCBkPSJNIDQuODQ0NjMzMywyMi4xMDg3NSBBIDEzLjQxMjAzOSwxMi41MDE4NDIgMCAwIDEgMTMuNDc3NTg4LDAuMDM5MjQgbCA2Ni4xMTgzMTUsMCBhIDUuMzY0ODE1OCw1LjAwMDczNyAwIDAgMSA1LjM2NDgyMyw1LjAwMDczIGwgMCw3OS44NzkzMSB6IiAvPgogIDxwYXRoIGQ9Im0gNDIwLjE1NTM1LDE3Ny44OTExOSBhIDEzLjQxMjAzOCwxMi41MDE4NDIgMCAwIDEgLTguNjMyOTUsMjIuMDY5NTEgbCAtNjYuMTE4MzIsMCBhIDUuMzY0ODE1Miw1LjAwMDczNyAwIDAgMSAtNS4zNjQ4MiwtNS4wMDA3NCBsIDAsLTc5Ljg3OTMxIHoiIC8+Cjwvc3ZnPgo8IS0tIFRoaXMgd29yayBpcyBsaWNlbnNlZCB1bmRlciBhIENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24tU2hhcmVBbGlrZSA0LjAgSW50ZXJuYXRpb25hbCBMaWNlbnNlLiAtLT4KPCEtLSBodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1zYS80LjAvIC0tPgo=") no-repeat fixed 50%/70% 70%,linear-gradient(180deg,#2a2a2a 0,#202020);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff2a2a2a",endColorstr="#ff202020",GradientType=0)}body.nanotrasen .normal{color:#40628a}body.nanotrasen .good{color:#537d29}body.nanotrasen .average{color:#be6209}body.nanotrasen .bad{color:#b00e0e}body.nanotrasen .highlight{color:#8ba5c4}body.nanotrasen main{display:block;margin-top:32px;padding:2px 6px 0}body.nanotrasen hr{height:2px;background-color:#40628a;border:none}body.nanotrasen .hidden{display:none}body.nanotrasen .bar .barText,body.nanotrasen span.button{color:#fff;font-size:12px;font-weight:400;font-style:normal;text-decoration:none}body.nanotrasen .bold{font-weight:700}body.nanotrasen .italic{font-style:italic}body.nanotrasen [unselectable=on]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.nanotrasen div[data-tooltip],body.nanotrasen span[data-tooltip]{position:relative}body.nanotrasen div[data-tooltip]:after,body.nanotrasen span[data-tooltip]:after{position:absolute;display:block;z-index:2;width:250px;padding:10px;-ms-transform:translateX(-50%);transform:translateX(-50%);visibility:hidden;opacity:0;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";white-space:normal;text-align:left;content:attr(data-tooltip);transition:all .5s;border:1px solid #272727;background-color:#363636}body.nanotrasen div[data-tooltip]:hover:after,body.nanotrasen span[data-tooltip]:hover:after{visibility:visible;opacity:1;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"}body.nanotrasen div[data-tooltip].tooltip-top:after,body.nanotrasen span[data-tooltip].tooltip-top:after{bottom:100%;left:50%;-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.nanotrasen div[data-tooltip].tooltip-top:hover:after,body.nanotrasen span[data-tooltip].tooltip-top:hover:after{-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.nanotrasen div[data-tooltip].tooltip-bottom:after,body.nanotrasen span[data-tooltip].tooltip-bottom:after{top:100%;left:50%;-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.nanotrasen div[data-tooltip].tooltip-bottom:hover:after,body.nanotrasen span[data-tooltip].tooltip-bottom:hover:after{-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.nanotrasen div[data-tooltip].tooltip-left:after,body.nanotrasen span[data-tooltip].tooltip-left:after{top:50%;right:100%;-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.nanotrasen div[data-tooltip].tooltip-left:hover:after,body.nanotrasen span[data-tooltip].tooltip-left:hover:after{-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.nanotrasen div[data-tooltip].tooltip-right:after,body.nanotrasen span[data-tooltip].tooltip-right:after{top:50%;left:100%;-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.nanotrasen div[data-tooltip].tooltip-right:hover:after,body.nanotrasen span[data-tooltip].tooltip-right:hover:after{-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.nanotrasen .bar{display:inline-block;position:relative;vertical-align:middle;width:100%;height:20px;line-height:17px;padding:1px;border:1px solid #40628a;background:#272727}body.nanotrasen .bar .barText{position:absolute;top:0;right:3px}body.nanotrasen .bar .barFill{display:block;height:100%;transition:background-color 1s;background-color:#40628a}body.nanotrasen .bar .barFill.good{background-color:#537d29}body.nanotrasen .bar .barFill.average{background-color:#be6209}body.nanotrasen .bar .barFill.bad{background-color:#b00e0e}body.nanotrasen span.button{display:inline-block;vertical-align:middle;min-height:20px;line-height:17px;padding:0 5px;white-space:nowrap;border:1px solid #272727}body.nanotrasen span.button .fa{padding-right:2px}body.nanotrasen span.button.normal{transition:background-color .5s;background-color:#40628a}body.nanotrasen span.button.normal.active:focus,body.nanotrasen span.button.normal.active:hover{transition:background-color .25s;background-color:#4f78aa;outline:0}body.nanotrasen span.button.disabled{transition:background-color .5s;background-color:#999}body.nanotrasen span.button.disabled.active:focus,body.nanotrasen span.button.disabled.active:hover{transition:background-color .25s;background-color:#a8a8a8;outline:0}body.nanotrasen span.button.selected{transition:background-color .5s;background-color:#2f943c}body.nanotrasen span.button.selected.active:focus,body.nanotrasen span.button.selected.active:hover{transition:background-color .25s;background-color:#3ab84b;outline:0}body.nanotrasen span.button.toggle{transition:background-color .5s;background-color:#2f943c}body.nanotrasen span.button.toggle.active:focus,body.nanotrasen span.button.toggle.active:hover{transition:background-color .25s;background-color:#3ab84b;outline:0}body.nanotrasen span.button.caution{transition:background-color .5s;background-color:#9a9d00}body.nanotrasen span.button.caution.active:focus,body.nanotrasen span.button.caution.active:hover{transition:background-color .25s;background-color:#ced200;outline:0}body.nanotrasen span.button.danger{transition:background-color .5s;background-color:#9d0808}body.nanotrasen span.button.danger.active:focus,body.nanotrasen span.button.danger.active:hover{transition:background-color .25s;background-color:#ce0b0b;outline:0}body.nanotrasen span.button.gridable{width:125px;margin:2px 0}body.nanotrasen span.button.gridable.center{text-align:center;width:75px}body.nanotrasen span.button+span:not(.button),body.nanotrasen span:not(.button)+span.button{margin-left:5px}body.nanotrasen div.display{width:100%;padding:4px;margin:6px 0;background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#54000000,endColorStr=#54000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#54000000,endColorStr=#54000000);background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5)}body.nanotrasen div.display.tabular{padding:0;margin:0}body.nanotrasen div.display header,body.nanotrasen div.subdisplay header{display:block;position:relative;width:100%;padding:0 4px;margin-bottom:6px;color:#fff;border-bottom:2px solid #40628a}body.nanotrasen div.display header .buttonRight,body.nanotrasen div.subdisplay header .buttonRight{position:absolute;bottom:6px;right:4px}body.nanotrasen div.display article,body.nanotrasen div.subdisplay article{display:table;width:100%;border-collapse:collapse}body.nanotrasen input{display:inline-block;vertical-align:middle;height:20px;line-height:17px;padding:0 5px;white-space:nowrap;color:#000;background-color:#fff;border:1px solid #272727}body.nanotrasen input.number{width:35px}body.nanotrasen input:-ms-input-placeholder{color:#999}body.nanotrasen input::placeholder{color:#999}body.nanotrasen input::-ms-clear{display:none}body.nanotrasen svg.linegraph{overflow:hidden}body.nanotrasen div.notice{margin:8px 0;padding:4px;box-shadow:none;color:#000;font-weight:700;font-style:italic;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,#bb9b68,#bb9b68 10px,#b1905d 0,#b1905d 20px)}body.nanotrasen div.notice .label{color:#000}body.nanotrasen div.notice .content:only-of-type{padding:0}body.nanotrasen div.notice hr{background-color:#272727}body.nanotrasen div.resize{position:fixed;bottom:0;right:0;width:0;height:0;border-style:solid;border-width:0 0 45px 45px;border-color:transparent transparent #363636;-ms-transform:rotate(1turn);transform:rotate(1turn)}body.nanotrasen section .cell,body.nanotrasen section .content,body.nanotrasen section .label,body.nanotrasen section .line,body.syndicate section .cell,body.syndicate section .content,body.syndicate section .label,body.syndicate section .line{display:table-cell;margin:0;text-align:left;vertical-align:middle;padding:3px 2px}body.nanotrasen section{display:table-row;width:100%}body.nanotrasen section:not(:first-child){padding-top:4px}body.nanotrasen section.candystripe:nth-child(2n){background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000);background-color:rgba(0,0,0,.2)}body.nanotrasen section .label{width:1%;padding-right:32px;white-space:nowrap;color:#8ba5c4}body.nanotrasen section .content:not(:last-child){padding-right:16px}body.nanotrasen section .line{width:100%}body.nanotrasen section .cell:not(:first-child){text-align:center;padding-top:0}body.nanotrasen section .cell span.button{width:75px}body.nanotrasen section:not(:last-child){padding-right:4px}body.nanotrasen div.subdisplay{width:100%;margin:0}body.nanotrasen header.titlebar .close,body.nanotrasen header.titlebar .minimize{display:inline-block;position:relative;padding:7px;margin:-7px;color:#8ba5c4}body.nanotrasen header.titlebar .close:hover,body.nanotrasen header.titlebar .minimize:hover{color:#9cb2cd}body.nanotrasen header.titlebar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px;background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 3px 3px rgba(0,0,0,.1)}body.nanotrasen header.titlebar .statusicon{position:absolute;top:4px;left:12px;transition:color .5s}body.nanotrasen header.titlebar .title{position:absolute;top:6px;left:46px;color:#8ba5c4;font-size:16px;white-space:nowrap}body.nanotrasen header.titlebar .minimize{position:absolute;top:6px;right:46px}body.nanotrasen header.titlebar .close{position:absolute;top:4px;right:12px}body.syndicate{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2ZXJzaW9uPSIxLjAiIHZpZXdCb3g9IjAgMCAyMDAgMjg5Ljc0MiIgb3BhY2l0eT0iLjMzIj4KICA8cGF0aCBkPSJtIDkzLjUzNzY3NywwIGMgLTE4LjExMzEyNSwwIC0zNC4yMjAxMzMsMy4xMTE2NCAtNDguMzIzNDg0LDkuMzM0MzcgLTEzLjk2NTA5Miw2LjIyMTY3IC0yNC42MTI0NDIsMTUuMDcxMTQgLTMxLjk0MDY1MSwyNi41NDcxIC03LjE4OTkzOTgsMTEuMzM3ODkgLTEwLjMwMTIyNjYsMjQuNzQ5MTEgLTEwLjMwMTIyNjYsNDAuMjM0NzggMCwxMC42NDY2MiAyLjcyNTAwMjYsMjAuNDY0NjUgOC4xNzUxMTE2LDI5LjQ1MjU4IDUuNjE1Mjc3LDguOTg2ODYgMTQuMDM4Mjc3LDE3LjM1MjA0IDI1LjI2ODgyMSwyNS4wOTQzNiAxMS4yMzA1NDQsNy42MDUzMSAyNi41MDc0MjEsMTUuNDE4MzUgNDUuODMwNTE0LDIzLjQzNzgyIDE5Ljk4Mzc0OCw4LjI5NTU3IDM0Ljg0ODg0OCwxNS41NTQ3MSA0NC41OTI5OTgsMjEuNzc2MzggOS43NDQxNCw2LjIyMjczIDE2Ljc2MTcsMTIuODU4NSAyMS4wNTU3MiwxOS45MDk1MSA0LjI5NDA0LDcuMDUyMDggNi40NDE5MywxNS43NjQwOCA2LjQ0MTkzLDI2LjEzNDU5IDAsMTYuMTc3MDIgLTUuMjAxOTYsMjguNDgyMjIgLTE1LjYwNjczLDM2LjkxNjgyIC0xMC4yMzk2LDguNDM0NyAtMjUuMDIyMDMsMTIuNjUyMyAtNDQuMzQ1MTY5LDEyLjY1MjMgLTE0LjAzODE3MSwwIC0yNS41MTUyNDcsLTEuNjU5NCAtMzQuNDMzNjE4LC00Ljk3NzcgLTguOTE4MzcsLTMuNDU2NiAtMTYuMTg1NTcyLC04LjcxMTMgLTIxLjgwMDgzOSwtMTUuNzYzMyAtNS42MTUyNzcsLTcuMDUyMSAtMTAuMDc0Nzk1LC0xNi42NjA4OCAtMTMuMzc3ODk5LC0yOC44MjgxMiBsIC0yNC43NzMxNjI2MjkzOTQ1LDAgMCw1Ni44MjYzMiBDIDMzLjg1Njc2OSwyODYuMDc2MDEgNjMuNzQ5MDQsMjg5Ljc0MjAxIDg5LjY3ODM4MywyODkuNzQyMDEgYyAxNi4wMjAwMjcsMCAzMC43MTk3ODcsLTEuMzgyNyA0NC4wOTczMzcsLTQuMTQ3OSAxMy41NDI3MiwtMi45MDQzIDI1LjEwNDEsLTcuNDY3NiAzNC42ODMwOSwtMTMuNjg5MyA5Ljc0NDEzLC02LjM1OTcgMTcuMzQwNDIsLTE0LjUxOTUgMjIuNzkwNTIsLTI0LjQ3NDggNS40NTAxLC0xMC4wOTMzMiA4LjE3NTExLC0yMi4zOTk1OSA4LjE3NTExLC0zNi45MTY4MiAwLC0xMi45OTc2NCAtMy4zMDIxLC0yNC4zMzUzOSAtOS45MDgyOSwtMzQuMDE0NiAtNi40NDEwNSwtOS44MTcyNSAtMTUuNTI1NDUsLTE4LjUyNzA3IC0yNy4yNTE0NiwtMjYuMTMxMzMgLTExLjU2MDg1LC03LjYwNDI3IC0yNy45MTA4MywtMTUuODMxNDIgLTQ5LjA1MDY2LC0yNC42ODAyMiAtMTcuNTA2NDQsLTcuMTkwMTIgLTMwLjcxOTY2OCwtMTMuNjg5NDggLTM5LjYzODAzOCwtMTkuNDk3MDEgLTguOTE4MzcxLC01LjgwNzUyIC0xOC42MDc0NzQsLTEyLjQzNDA5IC0yNC4wOTY1MjQsLTE4Ljg3NDE3IC01LjQyNjA0MywtNi4zNjYxNiAtOS42NTg4MjYsLTE1LjA3MDAzIC05LjY1ODgyNiwtMjQuODg3MjkgMCwtOS4yNjQwMSAyLjA3NTQxNCwtMTcuMjEzNDUgNi4yMjM0NTQsLTIzLjg1MDMzIDExLjA5ODI5OCwtMTQuMzk3NDggNDEuMjg2NjM4LC0xLjc5NTA3IDQ1LjA3NTYwOSwyNC4zNDc2MiA0LjgzOTM5Miw2Ljc3NDkxIDguODQ5MzUsMTYuMjQ3MjkgMTIuMDI5NTE1LDI4LjQxNTYgbCAyMC41MzIzNCwwIDAsLTU1Ljk5OTY3IGMgLTQuNDc4MjUsLTUuOTI0NDggLTkuOTU0ODgsLTEwLjYzMjIyIC0xNS45MDgzNywtMTQuMzc0MTEgMS42NDA1NSwwLjQ3OTA1IDMuMTkwMzksMS4wMjM3NiA0LjYzODY1LDEuNjQwMjQgNi40OTg2MSwyLjYyNjA3IDEyLjE2NzkzLDcuMzI3NDcgMTcuMDA3MywxNC4xMDM0NSA0LjgzOTM5LDYuNzc0OTEgOC44NDkzNSwxNi4yNDU2NyAxMi4wMjk1MiwyOC40MTM5NyAwLDAgOC40ODEyOCwtMC4xMjg5NCA4LjQ4OTc4LC0wLjAwMiAwLjQxNzc2LDYuNDE0OTQgLTEuNzUzMzksOS40NTI4NiAtNC4xMjM0MiwxMi41NjEwNCAtMi40MTc0LDMuMTY5NzggLTUuMTQ0ODYsNi43ODk3MyAtNC4wMDI3OCwxMy4wMDI5IDEuNTA3ODYsOC4yMDMxOCAxMC4xODM1NCwxMC41OTY0MiAxNC42MjE5NCw5LjMxMTU0IC0zLjMxODQyLC0wLjQ5OTExIC01LjMxODU1LC0xLjc0OTQ4IC01LjMxODU1LC0xLjc0OTQ4IDAsMCAxLjg3NjQ2LDAuOTk4NjggNS42NTExNywtMS4zNTk4MSAtMy4yNzY5NSwwLjk1NTcxIC0xMC43MDUyOSwtMC43OTczOCAtMTEuODAxMjUsLTYuNzYzMTMgLTAuOTU3NTIsLTUuMjA4NjEgMC45NDY1NCwtNy4yOTUxNCAzLjQwMTEzLC0xMC41MTQ4MiAyLjQ1NDYyLC0zLjIxOTY4IDUuMjg0MjYsLTYuOTU4MzEgNC42ODQzLC0xNC40ODgyNCBsIDAuMDAzLDAuMDAyIDguOTI2NzYsMCAwLC01NS45OTk2NyBjIC0xNS4wNzEyNSwtMy44NzE2OCAtMjcuNjUzMTQsLTYuMzYwNDIgLTM3Ljc0NjcxLC03LjQ2NTg2IC05Ljk1NTMxLC0xLjEwNzU1IC0yMC4xODgyMywtMS42NTk4MSAtMzAuNjk2NjEzLC0xLjY1OTgxIHogbSA3MC4zMjE2MDMsMTcuMzA4OTMgMC4yMzgwNSw0MC4zMDQ5IGMgMS4zMTgwOCwxLjIyNjY2IDIuNDM5NjUsMi4yNzgxNSAzLjM0MDgxLDMuMTA2MDIgNC44MzkzOSw2Ljc3NDkxIDguODQ5MzQsMTYuMjQ1NjYgMTIuMDI5NTEsMjguNDEzOTcgbCAyMC41MzIzNCwwIDAsLTU1Ljk5OTY3IGMgLTYuNjc3MzEsLTQuNTkzODEgLTE5LjgzNjQzLC0xMC40NzMwOSAtMzYuMTQwNzEsLTE1LjgyNTIyIHogbSAtMjguMTIwNDksNS42MDU1MSA4LjU2NDc5LDE3LjcxNjU1IGMgLTExLjk3MDM3LC02LjQ2Njk3IC0xMy44NDY3OCwtOS43MTcyNiAtOC41NjQ3OSwtMTcuNzE2NTUgeiBtIDIyLjc5NzA1LDAgYyAyLjc3MTUsNy45OTkyOSAxLjc4NzQxLDExLjI0OTU4IC00LjQ5MzU0LDE3LjcxNjU1IGwgNC40OTM1NCwtMTcuNzE2NTUgeiBtIDE1LjIyMTk1LDI0LjAwODQ4IDguNTY0NzksMTcuNzE2NTUgYyAtMTEuOTcwMzgsLTYuNDY2OTcgLTEzLjg0Njc5LC05LjcxNzI2IC04LjU2NDc5LC0xNy43MTY1NSB6IG0gMjIuNzk3MDQsMCBjIDIuNzcxNSw3Ljk5OTI5IDEuNzg3NDEsMTEuMjQ5NTggLTQuNDkzNTQsMTcuNzE2NTUgbCA0LjQ5MzU0LC0xNy43MTY1NSB6IG0gLTk5LjExMzg0LDIuMjA3NjQgOC41NjQ3OSwxNy43MTY1NSBjIC0xMS45NzAzODIsLTYuNDY2OTcgLTEzLjg0Njc4MiwtOS43MTcyNiAtOC41NjQ3OSwtMTcuNzE2NTUgeiBtIDIyLjc5NTQyLDAgYyAyLjc3MTUsNy45OTkyOSAxLjc4NzQxLDExLjI0OTU4IC00LjQ5MzU0LDE3LjcxNjU1IGwgNC40OTM1NCwtMTcuNzE2NTUgeiIgLz4KPC9zdmc+CjwhLS0gVGhpcyB3b3JrIGlzIGxpY2Vuc2VkIHVuZGVyIGEgQ3JlYXRpdmUgQ29tbW9ucyBBdHRyaWJ1dGlvbi1TaGFyZUFsaWtlIDQuMCBJbnRlcm5hdGlvbmFsIExpY2Vuc2UuIC0tPgo8IS0tIGh0dHA6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LXNhLzQuMC8gLS0+Cg==") no-repeat fixed 50%/70% 70%,linear-gradient(180deg,#750000 0,#340404);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff750000",endColorstr="#ff340404",GradientType=0)}body.syndicate .normal{color:#40628a}body.syndicate .good{color:#73e573}body.syndicate .average{color:#be6209}body.syndicate .bad{color:#b00e0e}body.syndicate .highlight{color:#000}body.syndicate main{display:block;margin-top:32px;padding:2px 6px 0}body.syndicate hr{height:2px;background-color:#272727;border:none}body.syndicate .hidden{display:none}body.syndicate .bar .barText,body.syndicate span.button{color:#fff;font-size:12px;font-weight:400;font-style:normal;text-decoration:none}body.syndicate .bold{font-weight:700}body.syndicate .italic{font-style:italic}body.syndicate [unselectable=on]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.syndicate div[data-tooltip],body.syndicate span[data-tooltip]{position:relative}body.syndicate div[data-tooltip]:after,body.syndicate span[data-tooltip]:after{position:absolute;display:block;z-index:2;width:250px;padding:10px;-ms-transform:translateX(-50%);transform:translateX(-50%);visibility:hidden;opacity:0;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";white-space:normal;text-align:left;content:attr(data-tooltip);transition:all .5s;border:1px solid #272727;background-color:#363636}body.syndicate div[data-tooltip]:hover:after,body.syndicate span[data-tooltip]:hover:after{visibility:visible;opacity:1;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"}body.syndicate div[data-tooltip].tooltip-top:after,body.syndicate span[data-tooltip].tooltip-top:after{bottom:100%;left:50%;-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.syndicate div[data-tooltip].tooltip-top:hover:after,body.syndicate span[data-tooltip].tooltip-top:hover:after{-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.syndicate div[data-tooltip].tooltip-bottom:after,body.syndicate span[data-tooltip].tooltip-bottom:after{top:100%;left:50%;-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.syndicate div[data-tooltip].tooltip-bottom:hover:after,body.syndicate span[data-tooltip].tooltip-bottom:hover:after{-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.syndicate div[data-tooltip].tooltip-left:after,body.syndicate span[data-tooltip].tooltip-left:after{top:50%;right:100%;-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.syndicate div[data-tooltip].tooltip-left:hover:after,body.syndicate span[data-tooltip].tooltip-left:hover:after{-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.syndicate div[data-tooltip].tooltip-right:after,body.syndicate span[data-tooltip].tooltip-right:after{top:50%;left:100%;-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.syndicate div[data-tooltip].tooltip-right:hover:after,body.syndicate span[data-tooltip].tooltip-right:hover:after{-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.syndicate .bar{display:inline-block;position:relative;vertical-align:middle;width:100%;height:20px;line-height:17px;padding:1px;border:1px solid #000;background:#272727}body.syndicate .bar .barText{position:absolute;top:0;right:3px}body.syndicate .bar .barFill{display:block;height:100%;transition:background-color 1s;background-color:#000}body.syndicate .bar .barFill.good{background-color:#73e573}body.syndicate .bar .barFill.average{background-color:#be6209}body.syndicate .bar .barFill.bad{background-color:#b00e0e}body.syndicate span.button{display:inline-block;vertical-align:middle;min-height:20px;line-height:17px;padding:0 5px;white-space:nowrap;border:1px solid #272727}body.syndicate span.button .fa{padding-right:2px}body.syndicate span.button.normal{transition:background-color .5s;background-color:#397439}body.syndicate span.button.normal.active:focus,body.syndicate span.button.normal.active:hover{transition:background-color .25s;background-color:#4a964a;outline:0}body.syndicate span.button.disabled{transition:background-color .5s;background-color:#363636}body.syndicate span.button.disabled.active:focus,body.syndicate span.button.disabled.active:hover{transition:background-color .25s;background-color:#545454;outline:0}body.syndicate span.button.selected{transition:background-color .5s;background-color:#9d0808}body.syndicate span.button.selected.active:focus,body.syndicate span.button.selected.active:hover{transition:background-color .25s;background-color:#ce0b0b;outline:0}body.syndicate span.button.toggle{transition:background-color .5s;background-color:#9d0808}body.syndicate span.button.toggle.active:focus,body.syndicate span.button.toggle.active:hover{transition:background-color .25s;background-color:#ce0b0b;outline:0}body.syndicate span.button.caution{transition:background-color .5s;background-color:#be6209}body.syndicate span.button.caution.active:focus,body.syndicate span.button.caution.active:hover{transition:background-color .25s;background-color:#eb790b;outline:0}body.syndicate span.button.danger{transition:background-color .5s;background-color:#9a9d00}body.syndicate span.button.danger.active:focus,body.syndicate span.button.danger.active:hover{transition:background-color .25s;background-color:#ced200;outline:0}body.syndicate span.button.gridable{width:125px;margin:2px 0}body.syndicate span.button.gridable.center{text-align:center;width:75px}body.syndicate span.button+span:not(.button),body.syndicate span:not(.button)+span.button{margin-left:5px}body.syndicate div.display{width:100%;padding:4px;margin:6px 0;background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#80000000,endColorStr=#80000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#80000000,endColorStr=#80000000);background-color:rgba(0,0,0,.5);box-shadow:inset 0 0 5px rgba(0,0,0,.75)}body.syndicate div.display.tabular{padding:0;margin:0}body.syndicate div.display header,body.syndicate div.subdisplay header{display:block;position:relative;width:100%;padding:0 4px;margin-bottom:6px;color:#fff;border-bottom:2px solid #272727}body.syndicate div.display header .buttonRight,body.syndicate div.subdisplay header .buttonRight{position:absolute;bottom:6px;right:4px}body.syndicate div.display article,body.syndicate div.subdisplay article{display:table;width:100%;border-collapse:collapse}body.syndicate input{display:inline-block;vertical-align:middle;height:20px;line-height:17px;padding:0 5px;white-space:nowrap;color:#fff;background-color:#9d0808;border:1px solid #272727}body.syndicate input.number{width:35px}body.syndicate input:-ms-input-placeholder{color:#999}body.syndicate input::placeholder{color:#999}body.syndicate input::-ms-clear{display:none}body.syndicate svg.linegraph{overflow:hidden}body.syndicate div.notice{margin:8px 0;padding:4px;box-shadow:none;color:#000;font-weight:700;font-style:italic;background-color:#750000;background-image:repeating-linear-gradient(-45deg,#750000,#750000 10px,#910101 0,#910101 20px)}body.syndicate div.notice .label{color:#000}body.syndicate div.notice .content:only-of-type{padding:0}body.syndicate div.notice hr{background-color:#272727}body.syndicate div.resize{position:fixed;bottom:0;right:0;width:0;height:0;border-style:solid;border-width:0 0 45px 45px;border-color:transparent transparent #363636;-ms-transform:rotate(1turn);transform:rotate(1turn)}body.syndicate section .cell,body.syndicate section .content,body.syndicate section .label,body.syndicate section .line{display:table-cell;margin:0;text-align:left;vertical-align:middle;padding:3px 2px}body.syndicate section{display:table-row;width:100%}body.syndicate section:not(:first-child){padding-top:4px}body.syndicate section.candystripe:nth-child(2n){background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000);background-color:rgba(0,0,0,.2)}body.syndicate section .label{width:1%;padding-right:32px;white-space:nowrap;color:#fff}body.syndicate section .content:not(:last-child){padding-right:16px}body.syndicate section .line{width:100%}body.syndicate section .cell:not(:first-child){text-align:center;padding-top:0}body.syndicate section .cell span.button{width:75px}body.syndicate section:not(:last-child){padding-right:4px}body.syndicate div.subdisplay{width:100%;margin:0}body.syndicate header.titlebar .close,body.syndicate header.titlebar .minimize{display:inline-block;position:relative;padding:7px;margin:-7px;color:#e74242}body.syndicate header.titlebar .close:hover,body.syndicate header.titlebar .minimize:hover{color:#eb5e5e}body.syndicate header.titlebar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px;background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 3px 3px rgba(0,0,0,.1)}body.syndicate header.titlebar .statusicon{position:absolute;top:4px;left:12px;transition:color .5s}body.syndicate header.titlebar .title{position:absolute;top:6px;left:46px;color:#e74242;font-size:16px;white-space:nowrap}body.syndicate header.titlebar .minimize{position:absolute;top:6px;right:46px}body.syndicate header.titlebar .close{position:absolute;top:4px;right:12px}.no-icons header.titlebar .statusicon{font-size:20px}.no-icons header.titlebar .statusicon:after{content:"O"}.no-icons header.titlebar .minimize{top:-2px;font-size:20px}.no-icons header.titlebar .minimize:after{content:"—"}.no-icons header.titlebar .close{font-size:20px}.no-icons header.titlebar .close:after{content:"X"} \ No newline at end of file +@charset "utf-8";body,html{box-sizing:border-box;height:100%;margin:0}html{overflow:hidden;cursor:default}body{overflow:auto;font-family:Verdana,Geneva,sans-serif;font-size:12px;color:#fff;background-color:#2a2a2a;background-image:linear-gradient(180deg,#2a2a2a 0,#202020);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff2a2a2a",endColorstr="#ff202020",GradientType=0)}*,:after,:before{box-sizing:inherit}h1,h2,h3,h4{display:inline-block;margin:0;padding:6px 0}h1{font-size:18px}h2{font-size:16px}h3{font-size:14px}h4{font-size:12px}body.clockwork{background:linear-gradient(180deg,#b18b25 0,#5f380e);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffb18b25",endColorstr="#ff5f380e",GradientType=0)}body.clockwork .normal{color:#b18b25}body.clockwork .good{color:#cfba47}body.clockwork .average{color:#896b19}body.clockwork .bad{color:#5f380e}body.clockwork .highlight{color:#b18b25}body.clockwork main{display:block;margin-top:32px;padding:2px 6px 0}body.clockwork hr{height:2px;background-color:#b18b25;border:none}body.clockwork .hidden{display:none}body.clockwork .bar .barText,body.clockwork span.button{color:#b18b25;font-size:12px;font-weight:400;font-style:normal;text-decoration:none}body.clockwork .bold{font-weight:700}body.clockwork .italic{font-style:italic}body.clockwork [unselectable=on]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.clockwork div[data-tooltip],body.clockwork span[data-tooltip]{position:relative}body.clockwork div[data-tooltip]:after,body.clockwork span[data-tooltip]:after{position:absolute;display:block;z-index:2;width:250px;padding:10px;-ms-transform:translateX(-50%);transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";white-space:normal;text-align:left;content:attr(data-tooltip);transition:all .5s;border:1px solid #170800;background-color:#2d1400}body.clockwork div[data-tooltip]:hover:after,body.clockwork span[data-tooltip]:hover:after{pointer-events:none;visibility:visible;opacity:1;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"}body.clockwork div[data-tooltip].tooltip-top:after,body.clockwork span[data-tooltip].tooltip-top:after{bottom:100%;left:50%;-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.clockwork div[data-tooltip].tooltip-top:hover:after,body.clockwork span[data-tooltip].tooltip-top:hover:after{-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.clockwork div[data-tooltip].tooltip-bottom:after,body.clockwork span[data-tooltip].tooltip-bottom:after{top:100%;left:50%;-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.clockwork div[data-tooltip].tooltip-bottom:hover:after,body.clockwork span[data-tooltip].tooltip-bottom:hover:after{-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.clockwork div[data-tooltip].tooltip-left:after,body.clockwork span[data-tooltip].tooltip-left:after{top:50%;right:100%;-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.clockwork div[data-tooltip].tooltip-left:hover:after,body.clockwork span[data-tooltip].tooltip-left:hover:after{-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.clockwork div[data-tooltip].tooltip-right:after,body.clockwork span[data-tooltip].tooltip-right:after{top:50%;left:100%;-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.clockwork div[data-tooltip].tooltip-right:hover:after,body.clockwork span[data-tooltip].tooltip-right:hover:after{-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.clockwork .bar{display:inline-block;position:relative;vertical-align:middle;width:100%;height:20px;line-height:17px;padding:1px;border:1px solid #170800;background:#2d1400}body.clockwork .bar .barText{position:absolute;top:0;right:3px}body.clockwork .bar .barFill{display:block;height:100%;transition:background-color 1s;background-color:#b18b25}body.clockwork .bar .barFill.good{background-color:#cfba47}body.clockwork .bar .barFill.average{background-color:#896b19}body.clockwork .bar .barFill.bad{background-color:#5f380e}body.clockwork span.button{display:inline-block;vertical-align:middle;min-height:20px;line-height:17px;padding:0 5px;white-space:nowrap;border:1px solid #170800}body.clockwork span.button .fa{padding-right:2px}body.clockwork span.button.normal{transition:background-color .5s;background-color:#5f380e}body.clockwork span.button.normal.active:focus,body.clockwork span.button.normal.active:hover{transition:background-color .25s;background-color:#704211;outline:0}body.clockwork span.button.normal:not(.active){background-image:repeating-linear-gradient(-45deg,#5f380e,#5f380e 1px,#2d1400 0,#2d1400 2px)}body.clockwork span.button.disabled{transition:background-color .5s;background-color:#2d1400}body.clockwork span.button.disabled.active:focus,body.clockwork span.button.disabled.active:hover{transition:background-color .25s;background-color:#441e00;outline:0}body.clockwork span.button.selected{transition:background-color .5s;background-color:#cfba47}body.clockwork span.button.selected.active:focus,body.clockwork span.button.selected.active:hover{transition:background-color .25s;background-color:#d1bd50;outline:0}body.clockwork span.button.selected:not(.active){background-image:repeating-linear-gradient(-45deg,#cfba47,#cfba47 1px,#2d1400 0,#2d1400 2px)}body.clockwork span.button.toggle{transition:background-color .5s;background-color:#cfba47}body.clockwork span.button.toggle.active:focus,body.clockwork span.button.toggle.active:hover{transition:background-color .25s;background-color:#d1bd50;outline:0}body.clockwork span.button.toggle:not(.active){background-image:repeating-linear-gradient(-45deg,#cfba47,#cfba47 1px,#2d1400 0,#2d1400 2px)}body.clockwork span.button.caution{transition:background-color .5s;background-color:#be6209}body.clockwork span.button.caution.active:focus,body.clockwork span.button.caution.active:hover{transition:background-color .25s;background-color:#cd6a0a;outline:0}body.clockwork span.button.caution:not(.active){background-image:repeating-linear-gradient(-45deg,#be6209,#be6209 1px,#2d1400 0,#2d1400 2px)}body.clockwork span.button.danger{transition:background-color .5s;background-color:#9a9d00}body.clockwork span.button.danger.active:focus,body.clockwork span.button.danger.active:hover{transition:background-color .25s;background-color:#abaf00;outline:0}body.clockwork span.button.danger:not(.active){background-image:repeating-linear-gradient(-45deg,#9a9d00,#9a9d00 1px,#2d1400 0,#2d1400 2px)}body.clockwork span.button.gridable{width:125px;margin:2px 0}body.clockwork span.button.gridable.center{text-align:center;width:75px}body.clockwork span.button+span:not(.button),body.clockwork span:not(.button)+span.button{margin-left:5px}body.clockwork div.display{width:100%;padding:4px;margin:6px 0;background-color:#2d1400;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#e62d1400,endColorStr=#e62d1400)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#e62d1400,endColorStr=#e62d1400);background-color:rgba(45,20,0,.9);box-shadow:inset 0 0 5px rgba(0,0,0,.3)}body.clockwork div.display.tabular{padding:0;margin:0}body.clockwork div.display header,body.clockwork div.subdisplay header{display:block;position:relative;width:100%;padding:0 4px;margin-bottom:6px;color:#cfba47;border-bottom:2px solid #b18b25}body.clockwork div.display header .buttonRight,body.clockwork div.subdisplay header .buttonRight{position:absolute;bottom:6px;right:4px}body.clockwork div.display article,body.clockwork div.subdisplay article{display:table;width:100%;border-collapse:collapse}body.clockwork input{display:inline-block;vertical-align:middle;height:20px;line-height:17px;padding:0 5px;white-space:nowrap;color:#b18b25;background-color:#cfba47;border:1px solid #272727}body.clockwork input.number{width:35px}body.clockwork input:-ms-input-placeholder{color:#999}body.clockwork input::placeholder{color:#999}body.clockwork input::-ms-clear{display:none}body.clockwork svg.linegraph{overflow:hidden}body.clockwork div.notice{margin:8px 0;padding:4px;box-shadow:none;color:#2d1400;font-weight:700;font-style:italic;background-color:#000;background-image:repeating-linear-gradient(-45deg,#000,#000 10px,#170800 0,#170800 20px)}body.clockwork div.notice .label{color:#2d1400}body.clockwork div.notice .content:only-of-type{padding:0}body.clockwork div.notice hr{background-color:#896b19}body.clockwork div.resize{position:fixed;bottom:0;right:0;width:0;height:0;border-style:solid;border-width:0 0 45px 45px;border-color:transparent transparent #5f380e;-ms-transform:rotate(1turn);transform:rotate(1turn)}body.clockwork section .cell,body.clockwork section .content,body.clockwork section .label,body.clockwork section .line,body.nanotrasen section .cell,body.nanotrasen section .content,body.nanotrasen section .label,body.nanotrasen section .line,body.syndicate section .cell,body.syndicate section .content,body.syndicate section .label,body.syndicate section .line{display:table-cell;margin:0;text-align:left;vertical-align:middle;padding:3px 2px}body.clockwork section{display:table-row;width:100%}body.clockwork section:not(:first-child){padding-top:4px}body.clockwork section.candystripe:nth-child(2n){background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000);background-color:rgba(0,0,0,.2)}body.clockwork section .label{width:1%;padding-right:32px;white-space:nowrap;color:#b18b25}body.clockwork section .content:not(:last-child){padding-right:16px}body.clockwork section .line{width:100%}body.clockwork section .cell:not(:first-child){text-align:center;padding-top:0}body.clockwork section .cell span.button{width:75px}body.clockwork section:not(:last-child){padding-right:4px}body.clockwork div.subdisplay{width:100%;margin:0}body.clockwork header.titlebar .close,body.clockwork header.titlebar .minimize{display:inline-block;position:relative;padding:7px;margin:-7px;color:#cfba47}body.clockwork header.titlebar .close:hover,body.clockwork header.titlebar .minimize:hover{color:#d1bd50}body.clockwork header.titlebar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px;background-color:#5f380e;border-bottom:1px solid #170800;box-shadow:0 3px 3px rgba(0,0,0,.1)}body.clockwork header.titlebar .statusicon{position:absolute;top:4px;left:12px;transition:color .5s}body.clockwork header.titlebar .title{position:absolute;top:6px;left:46px;color:#cfba47;font-size:16px;white-space:nowrap}body.clockwork header.titlebar .minimize{position:absolute;top:6px;right:46px}body.clockwork header.titlebar .close{position:absolute;top:4px;right:12px}body.nanotrasen{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+DQo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4wIiB2aWV3Qm94PSIwIDAgNDI1IDIwMCIgb3BhY2l0eT0iLjMzIj4NCiAgPHBhdGggZD0ibSAxNzguMDAzOTksMC4wMzg2OSAtNzEuMjAzOTMsMCBhIDYuNzYxMzQyMiw2LjAyNTU0OTUgMCAwIDAgLTYuNzYxMzQsNi4wMjU1NSBsIDAsMTg3Ljg3MTQ3IGEgNi43NjEzNDIyLDYuMDI1NTQ5NSAwIDAgMCA2Ljc2MTM0LDYuMDI1NTQgbCA1My4xMDcyLDAgYSA2Ljc2MTM0MjIsNi4wMjU1NDk1IDAgMCAwIDYuNzYxMzUsLTYuMDI1NTQgbCAwLC0xMDEuNTQ0MDE4IDcyLjIxNjI4LDEwNC42OTkzOTggYSA2Ljc2MTM0MjIsNi4wMjU1NDk1IDAgMCAwIDUuNzYwMTUsMi44NzAxNiBsIDczLjU1NDg3LDAgYSA2Ljc2MTM0MjIsNi4wMjU1NDk1IDAgMCAwIDYuNzYxMzUsLTYuMDI1NTQgbCAwLC0xODcuODcxNDcgYSA2Ljc2MTM0MjIsNi4wMjU1NDk1IDAgMCAwIC02Ljc2MTM1LC02LjAyNTU1IGwgLTU0LjcxNjQ0LDAgYSA2Ljc2MTM0MjIsNi4wMjU1NDk1IDAgMCAwIC02Ljc2MTMzLDYuMDI1NTUgbCAwLDEwMi42MTkzNSBMIDE4My43NjQxMywyLjkwODg2IGEgNi43NjEzNDIyLDYuMDI1NTQ5NSAwIDAgMCAtNS43NjAxNCwtMi44NzAxNyB6IiAvPg0KICA8cGF0aCBkPSJNIDQuODQ0NjMzMywyMi4xMDg3NSBBIDEzLjQxMjAzOSwxMi41MDE4NDIgMCAwIDEgMTMuNDc3NTg4LDAuMDM5MjQgbCA2Ni4xMTgzMTUsMCBhIDUuMzY0ODE1OCw1LjAwMDczNyAwIDAgMSA1LjM2NDgyMyw1LjAwMDczIGwgMCw3OS44NzkzMSB6IiAvPg0KICA8cGF0aCBkPSJtIDQyMC4xNTUzNSwxNzcuODkxMTkgYSAxMy40MTIwMzgsMTIuNTAxODQyIDAgMCAxIC04LjYzMjk1LDIyLjA2OTUxIGwgLTY2LjExODMyLDAgYSA1LjM2NDgxNTIsNS4wMDA3MzcgMCAwIDEgLTUuMzY0ODIsLTUuMDAwNzQgbCAwLC03OS44NzkzMSB6IiAvPg0KPC9zdmc+DQo8IS0tIFRoaXMgd29yayBpcyBsaWNlbnNlZCB1bmRlciBhIENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24tU2hhcmVBbGlrZSA0LjAgSW50ZXJuYXRpb25hbCBMaWNlbnNlLiAtLT4NCjwhLS0gaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnktc2EvNC4wLyAtLT4NCg==") no-repeat fixed 50%/70% 70%,linear-gradient(180deg,#2a2a2a 0,#202020);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff2a2a2a",endColorstr="#ff202020",GradientType=0)}body.nanotrasen .normal{color:#40628a}body.nanotrasen .good{color:#537d29}body.nanotrasen .average{color:#be6209}body.nanotrasen .bad{color:#b00e0e}body.nanotrasen .highlight{color:#8ba5c4}body.nanotrasen main{display:block;margin-top:32px;padding:2px 6px 0}body.nanotrasen hr{height:2px;background-color:#40628a;border:none}body.nanotrasen .hidden{display:none}body.nanotrasen .bar .barText,body.nanotrasen span.button{color:#fff;font-size:12px;font-weight:400;font-style:normal;text-decoration:none}body.nanotrasen .bold{font-weight:700}body.nanotrasen .italic{font-style:italic}body.nanotrasen [unselectable=on]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.nanotrasen div[data-tooltip],body.nanotrasen span[data-tooltip]{position:relative}body.nanotrasen div[data-tooltip]:after,body.nanotrasen span[data-tooltip]:after{position:absolute;display:block;z-index:2;width:250px;padding:10px;-ms-transform:translateX(-50%);transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";white-space:normal;text-align:left;content:attr(data-tooltip);transition:all .5s;border:1px solid #272727;background-color:#363636}body.nanotrasen div[data-tooltip]:hover:after,body.nanotrasen span[data-tooltip]:hover:after{pointer-events:none;visibility:visible;opacity:1;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"}body.nanotrasen div[data-tooltip].tooltip-top:after,body.nanotrasen span[data-tooltip].tooltip-top:after{bottom:100%;left:50%;-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.nanotrasen div[data-tooltip].tooltip-top:hover:after,body.nanotrasen span[data-tooltip].tooltip-top:hover:after{-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.nanotrasen div[data-tooltip].tooltip-bottom:after,body.nanotrasen span[data-tooltip].tooltip-bottom:after{top:100%;left:50%;-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.nanotrasen div[data-tooltip].tooltip-bottom:hover:after,body.nanotrasen span[data-tooltip].tooltip-bottom:hover:after{-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.nanotrasen div[data-tooltip].tooltip-left:after,body.nanotrasen span[data-tooltip].tooltip-left:after{top:50%;right:100%;-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.nanotrasen div[data-tooltip].tooltip-left:hover:after,body.nanotrasen span[data-tooltip].tooltip-left:hover:after{-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.nanotrasen div[data-tooltip].tooltip-right:after,body.nanotrasen span[data-tooltip].tooltip-right:after{top:50%;left:100%;-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.nanotrasen div[data-tooltip].tooltip-right:hover:after,body.nanotrasen span[data-tooltip].tooltip-right:hover:after{-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.nanotrasen .bar{display:inline-block;position:relative;vertical-align:middle;width:100%;height:20px;line-height:17px;padding:1px;border:1px solid #40628a;background:#272727}body.nanotrasen .bar .barText{position:absolute;top:0;right:3px}body.nanotrasen .bar .barFill{display:block;height:100%;transition:background-color 1s;background-color:#40628a}body.nanotrasen .bar .barFill.good{background-color:#537d29}body.nanotrasen .bar .barFill.average{background-color:#be6209}body.nanotrasen .bar .barFill.bad{background-color:#b00e0e}body.nanotrasen span.button{display:inline-block;vertical-align:middle;min-height:20px;line-height:17px;padding:0 5px;white-space:nowrap;border:1px solid #272727}body.nanotrasen span.button .fa{padding-right:2px}body.nanotrasen span.button.normal{transition:background-color .5s;background-color:#40628a}body.nanotrasen span.button.normal.active:focus,body.nanotrasen span.button.normal.active:hover{transition:background-color .25s;background-color:#4f78aa;outline:0}body.nanotrasen span.button.normal:not(.active){background-image:repeating-linear-gradient(-45deg,#40628a,#40628a 1px,#999 0,#999 2px)}body.nanotrasen span.button.disabled{transition:background-color .5s;background-color:#999}body.nanotrasen span.button.disabled.active:focus,body.nanotrasen span.button.disabled.active:hover{transition:background-color .25s;background-color:#a8a8a8;outline:0}body.nanotrasen span.button.selected{transition:background-color .5s;background-color:#2f943c}body.nanotrasen span.button.selected.active:focus,body.nanotrasen span.button.selected.active:hover{transition:background-color .25s;background-color:#3ab84b;outline:0}body.nanotrasen span.button.selected:not(.active){background-image:repeating-linear-gradient(-45deg,#2f943c,#2f943c 1px,#999 0,#999 2px)}body.nanotrasen span.button.toggle{transition:background-color .5s;background-color:#2f943c}body.nanotrasen span.button.toggle.active:focus,body.nanotrasen span.button.toggle.active:hover{transition:background-color .25s;background-color:#3ab84b;outline:0}body.nanotrasen span.button.toggle:not(.active){background-image:repeating-linear-gradient(-45deg,#2f943c,#2f943c 1px,#999 0,#999 2px)}body.nanotrasen span.button.caution{transition:background-color .5s;background-color:#9a9d00}body.nanotrasen span.button.caution.active:focus,body.nanotrasen span.button.caution.active:hover{transition:background-color .25s;background-color:#ced200;outline:0}body.nanotrasen span.button.caution:not(.active){background-image:repeating-linear-gradient(-45deg,#9a9d00,#9a9d00 1px,#999 0,#999 2px)}body.nanotrasen span.button.danger{transition:background-color .5s;background-color:#9d0808}body.nanotrasen span.button.danger.active:focus,body.nanotrasen span.button.danger.active:hover{transition:background-color .25s;background-color:#ce0b0b;outline:0}body.nanotrasen span.button.danger:not(.active){background-image:repeating-linear-gradient(-45deg,#9d0808,#9d0808 1px,#999 0,#999 2px)}body.nanotrasen span.button.gridable{width:125px;margin:2px 0}body.nanotrasen span.button.gridable.center{text-align:center;width:75px}body.nanotrasen span.button+span:not(.button),body.nanotrasen span:not(.button)+span.button{margin-left:5px}body.nanotrasen div.display{width:100%;padding:4px;margin:6px 0;background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#54000000,endColorStr=#54000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#54000000,endColorStr=#54000000);background-color:rgba(0,0,0,.33);box-shadow:inset 0 0 5px rgba(0,0,0,.5)}body.nanotrasen div.display.tabular{padding:0;margin:0}body.nanotrasen div.display header,body.nanotrasen div.subdisplay header{display:block;position:relative;width:100%;padding:0 4px;margin-bottom:6px;color:#fff;border-bottom:2px solid #40628a}body.nanotrasen div.display header .buttonRight,body.nanotrasen div.subdisplay header .buttonRight{position:absolute;bottom:6px;right:4px}body.nanotrasen div.display article,body.nanotrasen div.subdisplay article{display:table;width:100%;border-collapse:collapse}body.nanotrasen input{display:inline-block;vertical-align:middle;height:20px;line-height:17px;padding:0 5px;white-space:nowrap;color:#000;background-color:#fff;border:1px solid #272727}body.nanotrasen input.number{width:35px}body.nanotrasen input:-ms-input-placeholder{color:#999}body.nanotrasen input::placeholder{color:#999}body.nanotrasen input::-ms-clear{display:none}body.nanotrasen svg.linegraph{overflow:hidden}body.nanotrasen div.notice{margin:8px 0;padding:4px;box-shadow:none;color:#000;font-weight:700;font-style:italic;background-color:#bb9b68;background-image:repeating-linear-gradient(-45deg,#bb9b68,#bb9b68 10px,#b1905d 0,#b1905d 20px)}body.nanotrasen div.notice .label{color:#000}body.nanotrasen div.notice .content:only-of-type{padding:0}body.nanotrasen div.notice hr{background-color:#272727}body.nanotrasen div.resize{position:fixed;bottom:0;right:0;width:0;height:0;border-style:solid;border-width:0 0 45px 45px;border-color:transparent transparent #363636;-ms-transform:rotate(1turn);transform:rotate(1turn)}body.nanotrasen section .cell,body.nanotrasen section .content,body.nanotrasen section .label,body.nanotrasen section .line,body.syndicate section .cell,body.syndicate section .content,body.syndicate section .label,body.syndicate section .line{display:table-cell;margin:0;text-align:left;vertical-align:middle;padding:3px 2px}body.nanotrasen section{display:table-row;width:100%}body.nanotrasen section:not(:first-child){padding-top:4px}body.nanotrasen section.candystripe:nth-child(2n){background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000);background-color:rgba(0,0,0,.2)}body.nanotrasen section .label{width:1%;padding-right:32px;white-space:nowrap;color:#8ba5c4}body.nanotrasen section .content:not(:last-child){padding-right:16px}body.nanotrasen section .line{width:100%}body.nanotrasen section .cell:not(:first-child){text-align:center;padding-top:0}body.nanotrasen section .cell span.button{width:75px}body.nanotrasen section:not(:last-child){padding-right:4px}body.nanotrasen div.subdisplay{width:100%;margin:0}body.nanotrasen header.titlebar .close,body.nanotrasen header.titlebar .minimize{display:inline-block;position:relative;padding:7px;margin:-7px;color:#8ba5c4}body.nanotrasen header.titlebar .close:hover,body.nanotrasen header.titlebar .minimize:hover{color:#9cb2cd}body.nanotrasen header.titlebar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px;background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 3px 3px rgba(0,0,0,.1)}body.nanotrasen header.titlebar .statusicon{position:absolute;top:4px;left:12px;transition:color .5s}body.nanotrasen header.titlebar .title{position:absolute;top:6px;left:46px;color:#8ba5c4;font-size:16px;white-space:nowrap}body.nanotrasen header.titlebar .minimize{position:absolute;top:6px;right:46px}body.nanotrasen header.titlebar .close{position:absolute;top:4px;right:12px}body.syndicate{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+DQo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4wIiB2aWV3Qm94PSIwIDAgMjAwIDI4OS43NDIiIG9wYWNpdHk9Ii4zMyI+DQogIDxwYXRoIGQ9Im0gOTMuNTM3Njc3LDAgYyAtMTguMTEzMTI1LDAgLTM0LjIyMDEzMywzLjExMTY0IC00OC4zMjM0ODQsOS4zMzQzNyAtMTMuOTY1MDkyLDYuMjIxNjcgLTI0LjYxMjQ0MiwxNS4wNzExNCAtMzEuOTQwNjUxLDI2LjU0NzEgLTcuMTg5OTM5OCwxMS4zMzc4OSAtMTAuMzAxMjI2NiwyNC43NDkxMSAtMTAuMzAxMjI2Niw0MC4yMzQ3OCAwLDEwLjY0NjYyIDIuNzI1MDAyNiwyMC40NjQ2NSA4LjE3NTExMTYsMjkuNDUyNTggNS42MTUyNzcsOC45ODY4NiAxNC4wMzgyNzcsMTcuMzUyMDQgMjUuMjY4ODIxLDI1LjA5NDM2IDExLjIzMDU0NCw3LjYwNTMxIDI2LjUwNzQyMSwxNS40MTgzNSA0NS44MzA1MTQsMjMuNDM3ODIgMTkuOTgzNzQ4LDguMjk1NTcgMzQuODQ4ODQ4LDE1LjU1NDcxIDQ0LjU5Mjk5OCwyMS43NzYzOCA5Ljc0NDE0LDYuMjIyNzMgMTYuNzYxNywxMi44NTg1IDIxLjA1NTcyLDE5LjkwOTUxIDQuMjk0MDQsNy4wNTIwOCA2LjQ0MTkzLDE1Ljc2NDA4IDYuNDQxOTMsMjYuMTM0NTkgMCwxNi4xNzcwMiAtNS4yMDE5NiwyOC40ODIyMiAtMTUuNjA2NzMsMzYuOTE2ODIgLTEwLjIzOTYsOC40MzQ3IC0yNS4wMjIwMywxMi42NTIzIC00NC4zNDUxNjksMTIuNjUyMyAtMTQuMDM4MTcxLDAgLTI1LjUxNTI0NywtMS42NTk0IC0zNC40MzM2MTgsLTQuOTc3NyAtOC45MTgzNywtMy40NTY2IC0xNi4xODU1NzIsLTguNzExMyAtMjEuODAwODM5LC0xNS43NjMzIC01LjYxNTI3NywtNy4wNTIxIC0xMC4wNzQ3OTUsLTE2LjY2MDg4IC0xMy4zNzc4OTksLTI4LjgyODEyIGwgLTI0Ljc3MzE2MjYyOTM5NDUsMCAwLDU2LjgyNjMyIEMgMzMuODU2NzY5LDI4Ni4wNzYwMSA2My43NDkwNCwyODkuNzQyMDEgODkuNjc4MzgzLDI4OS43NDIwMSBjIDE2LjAyMDAyNywwIDMwLjcxOTc4NywtMS4zODI3IDQ0LjA5NzMzNywtNC4xNDc5IDEzLjU0MjcyLC0yLjkwNDMgMjUuMTA0MSwtNy40Njc2IDM0LjY4MzA5LC0xMy42ODkzIDkuNzQ0MTMsLTYuMzU5NyAxNy4zNDA0MiwtMTQuNTE5NSAyMi43OTA1MiwtMjQuNDc0OCA1LjQ1MDEsLTEwLjA5MzMyIDguMTc1MTEsLTIyLjM5OTU5IDguMTc1MTEsLTM2LjkxNjgyIDAsLTEyLjk5NzY0IC0zLjMwMjEsLTI0LjMzNTM5IC05LjkwODI5LC0zNC4wMTQ2IC02LjQ0MTA1LC05LjgxNzI1IC0xNS41MjU0NSwtMTguNTI3MDcgLTI3LjI1MTQ2LC0yNi4xMzEzMyAtMTEuNTYwODUsLTcuNjA0MjcgLTI3LjkxMDgzLC0xNS44MzE0MiAtNDkuMDUwNjYsLTI0LjY4MDIyIC0xNy41MDY0NCwtNy4xOTAxMiAtMzAuNzE5NjY4LC0xMy42ODk0OCAtMzkuNjM4MDM4LC0xOS40OTcwMSAtOC45MTgzNzEsLTUuODA3NTIgLTE4LjYwNzQ3NCwtMTIuNDM0MDkgLTI0LjA5NjUyNCwtMTguODc0MTcgLTUuNDI2MDQzLC02LjM2NjE2IC05LjY1ODgyNiwtMTUuMDcwMDMgLTkuNjU4ODI2LC0yNC44ODcyOSAwLC05LjI2NDAxIDIuMDc1NDE0LC0xNy4yMTM0NSA2LjIyMzQ1NCwtMjMuODUwMzMgMTEuMDk4Mjk4LC0xNC4zOTc0OCA0MS4yODY2MzgsLTEuNzk1MDcgNDUuMDc1NjA5LDI0LjM0NzYyIDQuODM5MzkyLDYuNzc0OTEgOC44NDkzNSwxNi4yNDcyOSAxMi4wMjk1MTUsMjguNDE1NiBsIDIwLjUzMjM0LDAgMCwtNTUuOTk5NjcgYyAtNC40NzgyNSwtNS45MjQ0OCAtOS45NTQ4OCwtMTAuNjMyMjIgLTE1LjkwODM3LC0xNC4zNzQxMSAxLjY0MDU1LDAuNDc5MDUgMy4xOTAzOSwxLjAyMzc2IDQuNjM4NjUsMS42NDAyNCA2LjQ5ODYxLDIuNjI2MDcgMTIuMTY3OTMsNy4zMjc0NyAxNy4wMDczLDE0LjEwMzQ1IDQuODM5MzksNi43NzQ5MSA4Ljg0OTM1LDE2LjI0NTY3IDEyLjAyOTUyLDI4LjQxMzk3IDAsMCA4LjQ4MTI4LC0wLjEyODk0IDguNDg5NzgsLTAuMDAyIDAuNDE3NzYsNi40MTQ5NCAtMS43NTMzOSw5LjQ1Mjg2IC00LjEyMzQyLDEyLjU2MTA0IC0yLjQxNzQsMy4xNjk3OCAtNS4xNDQ4Niw2Ljc4OTczIC00LjAwMjc4LDEzLjAwMjkgMS41MDc4Niw4LjIwMzE4IDEwLjE4MzU0LDEwLjU5NjQyIDE0LjYyMTk0LDkuMzExNTQgLTMuMzE4NDIsLTAuNDk5MTEgLTUuMzE4NTUsLTEuNzQ5NDggLTUuMzE4NTUsLTEuNzQ5NDggMCwwIDEuODc2NDYsMC45OTg2OCA1LjY1MTE3LC0xLjM1OTgxIC0zLjI3Njk1LDAuOTU1NzEgLTEwLjcwNTI5LC0wLjc5NzM4IC0xMS44MDEyNSwtNi43NjMxMyAtMC45NTc1MiwtNS4yMDg2MSAwLjk0NjU0LC03LjI5NTE0IDMuNDAxMTMsLTEwLjUxNDgyIDIuNDU0NjIsLTMuMjE5NjggNS4yODQyNiwtNi45NTgzMSA0LjY4NDMsLTE0LjQ4ODI0IGwgMC4wMDMsMC4wMDIgOC45MjY3NiwwIDAsLTU1Ljk5OTY3IGMgLTE1LjA3MTI1LC0zLjg3MTY4IC0yNy42NTMxNCwtNi4zNjA0MiAtMzcuNzQ2NzEsLTcuNDY1ODYgLTkuOTU1MzEsLTEuMTA3NTUgLTIwLjE4ODIzLC0xLjY1OTgxIC0zMC42OTY2MTMsLTEuNjU5ODEgeiBtIDcwLjMyMTYwMywxNy4zMDg5MyAwLjIzODA1LDQwLjMwNDkgYyAxLjMxODA4LDEuMjI2NjYgMi40Mzk2NSwyLjI3ODE1IDMuMzQwODEsMy4xMDYwMiA0LjgzOTM5LDYuNzc0OTEgOC44NDkzNCwxNi4yNDU2NiAxMi4wMjk1MSwyOC40MTM5NyBsIDIwLjUzMjM0LDAgMCwtNTUuOTk5NjcgYyAtNi42NzczMSwtNC41OTM4MSAtMTkuODM2NDMsLTEwLjQ3MzA5IC0zNi4xNDA3MSwtMTUuODI1MjIgeiBtIC0yOC4xMjA0OSw1LjYwNTUxIDguNTY0NzksMTcuNzE2NTUgYyAtMTEuOTcwMzcsLTYuNDY2OTcgLTEzLjg0Njc4LC05LjcxNzI2IC04LjU2NDc5LC0xNy43MTY1NSB6IG0gMjIuNzk3MDUsMCBjIDIuNzcxNSw3Ljk5OTI5IDEuNzg3NDEsMTEuMjQ5NTggLTQuNDkzNTQsMTcuNzE2NTUgbCA0LjQ5MzU0LC0xNy43MTY1NSB6IG0gMTUuMjIxOTUsMjQuMDA4NDggOC41NjQ3OSwxNy43MTY1NSBjIC0xMS45NzAzOCwtNi40NjY5NyAtMTMuODQ2NzksLTkuNzE3MjYgLTguNTY0NzksLTE3LjcxNjU1IHogbSAyMi43OTcwNCwwIGMgMi43NzE1LDcuOTk5MjkgMS43ODc0MSwxMS4yNDk1OCAtNC40OTM1NCwxNy43MTY1NSBsIDQuNDkzNTQsLTE3LjcxNjU1IHogbSAtOTkuMTEzODQsMi4yMDc2NCA4LjU2NDc5LDE3LjcxNjU1IGMgLTExLjk3MDM4MiwtNi40NjY5NyAtMTMuODQ2NzgyLC05LjcxNzI2IC04LjU2NDc5LC0xNy43MTY1NSB6IG0gMjIuNzk1NDIsMCBjIDIuNzcxNSw3Ljk5OTI5IDEuNzg3NDEsMTEuMjQ5NTggLTQuNDkzNTQsMTcuNzE2NTUgbCA0LjQ5MzU0LC0xNy43MTY1NSB6IiAvPg0KPC9zdmc+DQo8IS0tIFRoaXMgd29yayBpcyBsaWNlbnNlZCB1bmRlciBhIENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24tU2hhcmVBbGlrZSA0LjAgSW50ZXJuYXRpb25hbCBMaWNlbnNlLiAtLT4NCjwhLS0gaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbGljZW5zZXMvYnktc2EvNC4wLyAtLT4NCg==") no-repeat fixed 50%/70% 70%,linear-gradient(180deg,#750000 0,#340404);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#ff750000",endColorstr="#ff340404",GradientType=0)}body.syndicate .normal{color:#40628a}body.syndicate .good{color:#73e573}body.syndicate .average{color:#be6209}body.syndicate .bad{color:#b00e0e}body.syndicate .highlight{color:#000}body.syndicate main{display:block;margin-top:32px;padding:2px 6px 0}body.syndicate hr{height:2px;background-color:#272727;border:none}body.syndicate .hidden{display:none}body.syndicate .bar .barText,body.syndicate span.button{color:#fff;font-size:12px;font-weight:400;font-style:normal;text-decoration:none}body.syndicate .bold{font-weight:700}body.syndicate .italic{font-style:italic}body.syndicate [unselectable=on]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body.syndicate div[data-tooltip],body.syndicate span[data-tooltip]{position:relative}body.syndicate div[data-tooltip]:after,body.syndicate span[data-tooltip]:after{position:absolute;display:block;z-index:2;width:250px;padding:10px;-ms-transform:translateX(-50%);transform:translateX(-50%);pointer-events:none;visibility:hidden;opacity:0;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";white-space:normal;text-align:left;content:attr(data-tooltip);transition:all .5s;border:1px solid #272727;background-color:#363636}body.syndicate div[data-tooltip]:hover:after,body.syndicate span[data-tooltip]:hover:after{pointer-events:none;visibility:visible;opacity:1;-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"}body.syndicate div[data-tooltip].tooltip-top:after,body.syndicate span[data-tooltip].tooltip-top:after{bottom:100%;left:50%;-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.syndicate div[data-tooltip].tooltip-top:hover:after,body.syndicate span[data-tooltip].tooltip-top:hover:after{-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.syndicate div[data-tooltip].tooltip-bottom:after,body.syndicate span[data-tooltip].tooltip-bottom:after{top:100%;left:50%;-ms-transform:translateX(-50%) translateY(-8px);transform:translateX(-50%) translateY(-8px)}body.syndicate div[data-tooltip].tooltip-bottom:hover:after,body.syndicate span[data-tooltip].tooltip-bottom:hover:after{-ms-transform:translateX(-50%) translateY(8px);transform:translateX(-50%) translateY(8px)}body.syndicate div[data-tooltip].tooltip-left:after,body.syndicate span[data-tooltip].tooltip-left:after{top:50%;right:100%;-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.syndicate div[data-tooltip].tooltip-left:hover:after,body.syndicate span[data-tooltip].tooltip-left:hover:after{-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.syndicate div[data-tooltip].tooltip-right:after,body.syndicate span[data-tooltip].tooltip-right:after{top:50%;left:100%;-ms-transform:translateX(-8px) translateY(-50%);transform:translateX(-8px) translateY(-50%)}body.syndicate div[data-tooltip].tooltip-right:hover:after,body.syndicate span[data-tooltip].tooltip-right:hover:after{-ms-transform:translateX(8px) translateY(-50%);transform:translateX(8px) translateY(-50%)}body.syndicate .bar{display:inline-block;position:relative;vertical-align:middle;width:100%;height:20px;line-height:17px;padding:1px;border:1px solid #000;background:#272727}body.syndicate .bar .barText{position:absolute;top:0;right:3px}body.syndicate .bar .barFill{display:block;height:100%;transition:background-color 1s;background-color:#000}body.syndicate .bar .barFill.good{background-color:#73e573}body.syndicate .bar .barFill.average{background-color:#be6209}body.syndicate .bar .barFill.bad{background-color:#b00e0e}body.syndicate span.button{display:inline-block;vertical-align:middle;min-height:20px;line-height:17px;padding:0 5px;white-space:nowrap;border:1px solid #272727}body.syndicate span.button .fa{padding-right:2px}body.syndicate span.button.normal{transition:background-color .5s;background-color:#397439}body.syndicate span.button.normal.active:focus,body.syndicate span.button.normal.active:hover{transition:background-color .25s;background-color:#4a964a;outline:0}body.syndicate span.button.normal:not(.active){background-image:repeating-linear-gradient(-45deg,#397439,#397439 1px,#363636 0,#363636 2px)}body.syndicate span.button.disabled{transition:background-color .5s;background-color:#363636}body.syndicate span.button.disabled.active:focus,body.syndicate span.button.disabled.active:hover{transition:background-color .25s;background-color:#545454;outline:0}body.syndicate span.button.selected{transition:background-color .5s;background-color:#9d0808}body.syndicate span.button.selected.active:focus,body.syndicate span.button.selected.active:hover{transition:background-color .25s;background-color:#ce0b0b;outline:0}body.syndicate span.button.selected:not(.active){background-image:repeating-linear-gradient(-45deg,#9d0808,#9d0808 1px,#363636 0,#363636 2px)}body.syndicate span.button.toggle{transition:background-color .5s;background-color:#9d0808}body.syndicate span.button.toggle.active:focus,body.syndicate span.button.toggle.active:hover{transition:background-color .25s;background-color:#ce0b0b;outline:0}body.syndicate span.button.toggle:not(.active){background-image:repeating-linear-gradient(-45deg,#9d0808,#9d0808 1px,#363636 0,#363636 2px)}body.syndicate span.button.caution{transition:background-color .5s;background-color:#be6209}body.syndicate span.button.caution.active:focus,body.syndicate span.button.caution.active:hover{transition:background-color .25s;background-color:#eb790b;outline:0}body.syndicate span.button.caution:not(.active){background-image:repeating-linear-gradient(-45deg,#be6209,#be6209 1px,#363636 0,#363636 2px)}body.syndicate span.button.danger{transition:background-color .5s;background-color:#9a9d00}body.syndicate span.button.danger.active:focus,body.syndicate span.button.danger.active:hover{transition:background-color .25s;background-color:#ced200;outline:0}body.syndicate span.button.danger:not(.active){background-image:repeating-linear-gradient(-45deg,#9a9d00,#9a9d00 1px,#363636 0,#363636 2px)}body.syndicate span.button.gridable{width:125px;margin:2px 0}body.syndicate span.button.gridable.center{text-align:center;width:75px}body.syndicate span.button+span:not(.button),body.syndicate span:not(.button)+span.button{margin-left:5px}body.syndicate div.display{width:100%;padding:4px;margin:6px 0;background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#80000000,endColorStr=#80000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#80000000,endColorStr=#80000000);background-color:rgba(0,0,0,.5);box-shadow:inset 0 0 5px rgba(0,0,0,.75)}body.syndicate div.display.tabular{padding:0;margin:0}body.syndicate div.display header,body.syndicate div.subdisplay header{display:block;position:relative;width:100%;padding:0 4px;margin-bottom:6px;color:#fff;border-bottom:2px solid #272727}body.syndicate div.display header .buttonRight,body.syndicate div.subdisplay header .buttonRight{position:absolute;bottom:6px;right:4px}body.syndicate div.display article,body.syndicate div.subdisplay article{display:table;width:100%;border-collapse:collapse}body.syndicate input{display:inline-block;vertical-align:middle;height:20px;line-height:17px;padding:0 5px;white-space:nowrap;color:#fff;background-color:#9d0808;border:1px solid #272727}body.syndicate input.number{width:35px}body.syndicate input:-ms-input-placeholder{color:#999}body.syndicate input::placeholder{color:#999}body.syndicate input::-ms-clear{display:none}body.syndicate svg.linegraph{overflow:hidden}body.syndicate div.notice{margin:8px 0;padding:4px;box-shadow:none;color:#000;font-weight:700;font-style:italic;background-color:#750000;background-image:repeating-linear-gradient(-45deg,#750000,#750000 10px,#910101 0,#910101 20px)}body.syndicate div.notice .label{color:#000}body.syndicate div.notice .content:only-of-type{padding:0}body.syndicate div.notice hr{background-color:#272727}body.syndicate div.resize{position:fixed;bottom:0;right:0;width:0;height:0;border-style:solid;border-width:0 0 45px 45px;border-color:transparent transparent #363636;-ms-transform:rotate(1turn);transform:rotate(1turn)}body.syndicate section .cell,body.syndicate section .content,body.syndicate section .label,body.syndicate section .line{display:table-cell;margin:0;text-align:left;vertical-align:middle;padding:3px 2px}body.syndicate section{display:table-row;width:100%}body.syndicate section:not(:first-child){padding-top:4px}body.syndicate section.candystripe:nth-child(2n){background-color:#000;-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000)";filter:progid:DXImageTransform.Microsoft.gradient(startColorStr=#33000000,endColorStr=#33000000);background-color:rgba(0,0,0,.2)}body.syndicate section .label{width:1%;padding-right:32px;white-space:nowrap;color:#fff}body.syndicate section .content:not(:last-child){padding-right:16px}body.syndicate section .line{width:100%}body.syndicate section .cell:not(:first-child){text-align:center;padding-top:0}body.syndicate section .cell span.button{width:75px}body.syndicate section:not(:last-child){padding-right:4px}body.syndicate div.subdisplay{width:100%;margin:0}body.syndicate header.titlebar .close,body.syndicate header.titlebar .minimize{display:inline-block;position:relative;padding:7px;margin:-7px;color:#e74242}body.syndicate header.titlebar .close:hover,body.syndicate header.titlebar .minimize:hover{color:#eb5e5e}body.syndicate header.titlebar{position:fixed;z-index:1;top:0;left:0;width:100%;height:32px;background-color:#363636;border-bottom:1px solid #161616;box-shadow:0 3px 3px rgba(0,0,0,.1)}body.syndicate header.titlebar .statusicon{position:absolute;top:4px;left:12px;transition:color .5s}body.syndicate header.titlebar .title{position:absolute;top:6px;left:46px;color:#e74242;font-size:16px;white-space:nowrap}body.syndicate header.titlebar .minimize{position:absolute;top:6px;right:46px}body.syndicate header.titlebar .close{position:absolute;top:4px;right:12px}.no-icons header.titlebar .statusicon{font-size:20px}.no-icons header.titlebar .statusicon:after{content:"O"}.no-icons header.titlebar .minimize{top:-2px;font-size:20px}.no-icons header.titlebar .minimize:after{content:"—"}.no-icons header.titlebar .close{font-size:20px}.no-icons header.titlebar .close:after{content:"X"} \ No newline at end of file diff --git a/tgui/assets/tgui.js b/tgui/assets/tgui.js index 7a49735343d..642df3307c9 100644 --- a/tgui/assets/tgui.js +++ b/tgui/assets/tgui.js @@ -1,21 +1,21 @@ -require=function(){function t(e,n,a){function r(o,s){if(!n[o]){if(!e[o]){var p="function"==typeof require&&require;if(!s&&p)return p(o,!0);if(i)return i(o,!0);var u=Error("Cannot find module '"+o+"'");throw u.code="MODULE_NOT_FOUND",u}var c=n[o]={exports:{}};e[o][0].call(c.exports,function(t){var n=e[o][1][t];return r(n||t)},c,c.exports,t,e,n,a)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o=0;--a){var r=this.tryEntries[a],i=r.completion;if("root"===r.tryLoc)return e("end");if(r.tryLoc<=this.prev){var o=b.call(r,"catchLoc"),s=b.call(r,"finallyLoc");if(o&&s){if(this.prev=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&b.call(a,"finallyLoc")&&this.prev=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),d(n),O}},"catch":function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var a=n.completion;if("throw"===a.type){var r=a.arg;d(n)}return r}}throw Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:h(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=g),O}}}("object"==typeof t?t:"object"==typeof window?window:"object"==typeof self?self:this)}).call(this,void 0!==t?t:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],3:[function(t,e,n){t(129),e.exports=t(24).RegExp.escape},{129:129,24:24}],4:[function(t,e,n){e.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},{}],5:[function(t,e,n){var a=t(19);e.exports=function(t,e){if("number"!=typeof t&&"Number"!=a(t))throw TypeError(e);return+t}},{19:19}],6:[function(t,e,n){var a=t(127)("unscopables"),r=Array.prototype;void 0==r[a]&&t(43)(r,a,{}),e.exports=function(t){r[a][t]=!0}},{127:127,43:43}],7:[function(t,e,n){e.exports=function(t,e,n,a){if(!(t instanceof e)||void 0!==a&&a in t)throw TypeError(n+": incorrect invocation!");return t}},{}],8:[function(t,e,n){var a=t(52);e.exports=function(t){if(!a(t))throw TypeError(t+" is not an object!");return t}},{52:52}],9:[function(t,e,n){"use strict";var a=t(117),r=t(112),i=t(116);e.exports=[].copyWithin||function(t,e){var n=a(this),o=i(n.length),s=r(t,o),p=r(e,o),u=arguments.length>2?arguments[2]:void 0,c=Math.min((void 0===u?o:r(u,o))-p,o-s),l=1;for(s>p&&p+c>s&&(l=-1,p+=c-1,s+=c-1);c-- >0;)p in n?n[s]=n[p]:delete n[s],s+=l,p+=l;return n}},{112:112,116:116,117:117}],10:[function(t,e,n){"use strict";var a=t(117),r=t(112),i=t(116);e.exports=function(t){for(var e=a(this),n=i(e.length),o=arguments.length,s=r(o>1?arguments[1]:void 0,n),p=o>2?arguments[2]:void 0,u=void 0===p?n:r(p,n);u>s;)e[s++]=t;return e}},{112:112,116:116,117:117}],11:[function(t,e,n){var a=t(40);e.exports=function(t,e){var n=[];return a(t,!1,n.push,n,e),n}},{40:40}],12:[function(t,e,n){var a=t(115),r=t(116),i=t(112);e.exports=function(t){return function(e,n,o){var s,p=a(e),u=r(p.length),c=i(o,u);if(t&&n!=n){for(;u>c;)if(s=p[c++],s!=s)return!0}else for(;u>c;c++)if((t||c in p)&&p[c]===n)return t||c||0;return!t&&-1}}},{112:112,115:115,116:116}],13:[function(t,e,n){var a=t(26),r=t(48),i=t(117),o=t(116),s=t(16);e.exports=function(t,e){var n=1==t,p=2==t,u=3==t,c=4==t,l=6==t,d=5==t||l,f=e||s;return function(e,s,h){for(var m,g,v=i(e),b=r(v),y=a(s,h,3),_=o(b.length),x=0,w=n?f(e,_):p?f(e,0):void 0;_>x;x++)if((d||x in b)&&(m=b[x],g=y(m,x,v),t))if(n)w[x]=g;else if(g)switch(t){case 3:return!0;case 5:return m;case 6:return x;case 2:w.push(m)}else if(c)return!1;return l?-1:u||c?c:w}}},{116:116,117:117,16:16,26:26,48:48}],14:[function(t,e,n){var a=t(4),r=t(117),i=t(48),o=t(116);e.exports=function(t,e,n,s,p){a(e);var u=r(t),c=i(u),l=o(u.length),d=p?l-1:0,f=p?-1:1;if(2>n)for(;;){if(d in c){s=c[d],d+=f;break}if(d+=f,p?0>d:d>=l)throw TypeError("Reduce of empty array with no initial value")}for(;p?d>=0:l>d;d+=f)d in c&&(s=e(s,c[d],d,u));return s}},{116:116,117:117,4:4,48:48}],15:[function(t,e,n){var a=t(52),r=t(50),i=t(127)("species");e.exports=function(t){var e;return r(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!r(e.prototype)||(e=void 0),a(e)&&(e=e[i],null===e&&(e=void 0))),void 0===e?Array:e}},{127:127,50:50,52:52}],16:[function(t,e,n){var a=t(15);e.exports=function(t,e){return new(a(t))(e)}},{15:15}],17:[function(t,e,n){"use strict";var a=t(4),r=t(52),i=t(47),o=[].slice,s={},p=function(t,e,n){if(!(e in s)){for(var a=[],r=0;e>r;r++)a[r]="a["+r+"]";s[e]=Function("F,a","return new F("+a.join(",")+")")}return s[e](t,n)};e.exports=Function.bind||function(t){var e=a(this),n=o.call(arguments,1),s=function(){var a=n.concat(o.call(arguments));return this instanceof s?p(e,a.length,a):i(e,a,t)};return r(e.prototype)&&(s.prototype=e.prototype),s}},{4:4,47:47,52:52}],18:[function(t,e,n){var a=t(19),r=t(127)("toStringTag"),i="Arguments"==a(function(){return arguments}()),o=function(t,e){try{return t[e]}catch(n){}};e.exports=function(t){var e,n,s;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=o(e=Object(t),r))?n:i?a(e):"Object"==(s=a(e))&&"function"==typeof e.callee?"Arguments":s}},{127:127,19:19}],19:[function(t,e,n){var a={}.toString;e.exports=function(t){return a.call(t).slice(8,-1)}},{}],20:[function(t,e,n){"use strict";var a=t(72).f,r=t(71),i=t(91),o=t(26),s=t(7),p=t(40),u=t(56),c=t(58),l=t(98),d=t(30),f=t(66).fastKey,h=t(124),m=d?"_s":"size",g=function(t,e){var n,a=f(e);if("F"!==a)return t._i[a];for(n=t._f;n;n=n.n)if(n.k==e)return n};e.exports={getConstructor:function(t,e,n,u){var c=t(function(t,a){s(t,c,e,"_i"),t._t=e,t._i=r(null),t._f=void 0,t._l=void 0,t[m]=0,void 0!=a&&p(a,n,t[u],t)});return i(c.prototype,{clear:function(){for(var t=h(this,e),n=t._i,a=t._f;a;a=a.n)a.r=!0,a.p&&(a.p=a.p.n=void 0),delete n[a.i];t._f=t._l=void 0,t[m]=0},"delete":function(t){var n=h(this,e),a=g(n,t);if(a){var r=a.n,i=a.p;delete n._i[a.i],a.r=!0,i&&(i.n=r),r&&(r.p=i),n._f==a&&(n._f=r),n._l==a&&(n._l=i),n[m]--}return!!a},forEach:function(t){h(this,e);for(var n,a=o(t,arguments.length>1?arguments[1]:void 0,3);n=n?n.n:this._f;)for(a(n.v,n.k,this);n&&n.r;)n=n.p},has:function(t){return!!g(h(this,e),t)}}),d&&a(c.prototype,"size",{get:function(){return h(this,e)[m]}}),c},def:function(t,e,n){var a,r,i=g(t,e);return i?i.v=n:(t._l=i={i:r=f(e,!0),k:e,v:n,p:a=t._l,n:void 0,r:!1},t._f||(t._f=i),a&&(a.n=i),t[m]++,"F"!==r&&(t._i[r]=i)),t},getEntry:g,setStrong:function(t,e,n){u(t,e,function(t,n){this._t=h(t,e),this._k=n,this._l=void 0},function(){for(var t=this,e=t._k,n=t._l;n&&n.r;)n=n.p;return t._t&&(t._l=n=n?n.n:t._t._f)?"keys"==e?c(0,n.k):"values"==e?c(0,n.v):c(0,[n.k,n.v]):(t._t=void 0,c(1))},n?"entries":"values",!n,!0),l(e)}}},{124:124,26:26,30:30,40:40,56:56,58:58,66:66,7:7,71:71,72:72,91:91,98:98}],21:[function(t,e,n){var a=t(18),r=t(11);e.exports=function(t){return function(){if(a(this)!=t)throw TypeError(t+"#toJSON isn't generic");return r(this)}}},{11:11,18:18}],22:[function(t,e,n){"use strict";var a=t(91),r=t(66).getWeak,i=t(8),o=t(52),s=t(7),p=t(40),u=t(13),c=t(42),l=t(124),d=u(5),f=u(6),h=0,m=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},v=function(t,e){return d(t.a,function(t){return t[0]===e})};g.prototype={get:function(t){var e=v(this,t);return e?e[1]:void 0},has:function(t){return!!v(this,t)},set:function(t,e){var n=v(this,t);n?n[1]=e:this.a.push([t,e])},"delete":function(t){var e=f(this.a,function(e){return e[0]===t});return~e&&this.a.splice(e,1),!!~e}},e.exports={getConstructor:function(t,e,n,i){var u=t(function(t,a){s(t,u,e,"_i"),t._t=e,t._i=h++,t._l=void 0,void 0!=a&&p(a,n,t[i],t)});return a(u.prototype,{"delete":function(t){if(!o(t))return!1;var n=r(t);return n===!0?m(l(this,e))["delete"](t):n&&c(n,this._i)&&delete n[this._i]},has:function(t){if(!o(t))return!1;var n=r(t);return n===!0?m(l(this,e)).has(t):n&&c(n,this._i)}}),u},def:function(t,e,n){var a=r(i(e),!0);return a===!0?m(t).set(e,n):a[t._i]=n,t},ufstore:m}},{124:124,13:13,40:40,42:42,52:52,66:66,7:7,8:8,91:91}],23:[function(t,e,n){"use strict";var a=t(41),r=t(34),i=t(92),o=t(91),s=t(66),p=t(40),u=t(7),c=t(52),l=t(36),d=t(57),f=t(99),h=t(46);e.exports=function(t,e,n,m,g,v){var b=a[t],y=b,_=g?"set":"add",x=y&&y.prototype,w={},k=function(t){var e=x[t];i(x,t,"delete"==t?function(t){return v&&!c(t)?!1:e.call(this,0===t?0:t)}:"has"==t?function(t){return v&&!c(t)?!1:e.call(this,0===t?0:t)}:"get"==t?function(t){return v&&!c(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,n){return e.call(this,0===t?0:t,n),this})};if("function"==typeof y&&(v||x.forEach&&!l(function(){(new y).entries().next()}))){var S=new y,E=S[_](v?{}:-0,1)!=S,C=l(function(){S.has(1)}),P=d(function(t){new y(t)}),A=!v&&l(function(){for(var t=new y,e=5;e--;)t[_](e,e);return!t.has(-0)});P||(y=e(function(e,n){u(e,y,t);var a=h(new b,e,y);return void 0!=n&&p(n,g,a[_],a),a}),y.prototype=x,x.constructor=y),(C||A)&&(k("delete"),k("has"),g&&k("get")),(A||E)&&k(_),v&&x.clear&&delete x.clear}else y=m.getConstructor(e,t,g,_),o(y.prototype,n),s.NEED=!0;return f(y,t),w[t]=y,r(r.G+r.W+r.F*(y!=b),w),v||m.setStrong(y,t,g),y}},{34:34,36:36,40:40,41:41,46:46,52:52,57:57,66:66,7:7,91:91,92:92,99:99}],24:[function(t,e,n){var a=e.exports={version:"2.5.6"};"number"==typeof __e&&(__e=a)},{}],25:[function(t,e,n){"use strict";var a=t(72),r=t(90);e.exports=function(t,e,n){e in t?a.f(t,e,r(0,n)):t[e]=n}},{72:72,90:90}],26:[function(t,e,n){var a=t(4);e.exports=function(t,e,n){if(a(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,a){return t.call(e,n,a)};case 3:return function(n,a,r){return t.call(e,n,a,r)}}return function(){return t.apply(e,arguments)}}},{4:4}],27:[function(t,e,n){"use strict";var a=t(36),r=Date.prototype.getTime,i=Date.prototype.toISOString,o=function(t){return t>9?t:"0"+t};e.exports=a(function(){return"0385-07-25T07:06:39.999Z"!=i.call(new Date(-5e13-1))})||!a(function(){i.call(new Date(NaN))})?function(){if(!isFinite(r.call(this)))throw RangeError("Invalid time value");var t=this,e=t.getUTCFullYear(),n=t.getUTCMilliseconds(),a=0>e?"-":e>9999?"+":"";return a+("00000"+Math.abs(e)).slice(a?-6:-4)+"-"+o(t.getUTCMonth()+1)+"-"+o(t.getUTCDate())+"T"+o(t.getUTCHours())+":"+o(t.getUTCMinutes())+":"+o(t.getUTCSeconds())+"."+(n>99?n:"0"+o(n))+"Z"}:i},{36:36}],28:[function(t,e,n){"use strict";var a=t(8),r=t(118),i="number";e.exports=function(t){if("string"!==t&&t!==i&&"default"!==t)throw TypeError("Incorrect hint");return r(a(this),t!=i)}},{118:118,8:8}],29:[function(t,e,n){e.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},{}],30:[function(t,e,n){e.exports=!t(36)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{36:36}],31:[function(t,e,n){var a=t(52),r=t(41).document,i=a(r)&&a(r.createElement);e.exports=function(t){return i?r.createElement(t):{}}},{41:41,52:52}],32:[function(t,e,n){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},{}],33:[function(t,e,n){var a=t(81),r=t(78),i=t(82);e.exports=function(t){var e=a(t),n=r.f;if(n)for(var o,s=n(t),p=i.f,u=0;s.length>u;)p.call(t,o=s[u++])&&e.push(o);return e}},{78:78,81:81,82:82}],34:[function(t,e,n){var a=t(41),r=t(24),i=t(43),o=t(92),s=t(26),p="prototype",u=function(t,e,n){var c,l,d,f,h=t&u.F,m=t&u.G,g=t&u.S,v=t&u.P,b=t&u.B,y=m?a:g?a[e]||(a[e]={}):(a[e]||{})[p],_=m?r:r[e]||(r[e]={}),x=_[p]||(_[p]={});m&&(n=e);for(c in n)l=!h&&y&&void 0!==y[c],d=(l?y:n)[c],f=b&&l?s(d,a):v&&"function"==typeof d?s(Function.call,d):d,y&&o(y,c,d,t&u.U),_[c]!=d&&i(_,c,f),v&&x[c]!=d&&(x[c]=d)};a.core=r,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,e.exports=u},{24:24,26:26,41:41,43:43,92:92}],35:[function(t,e,n){var a=t(127)("match");e.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[a]=!1,!"/./"[t](e)}catch(r){}}return!0}},{127:127}],36:[function(t,e,n){e.exports=function(t){try{return!!t()}catch(e){return!0}}},{}],37:[function(t,e,n){"use strict";var a=t(43),r=t(92),i=t(36),o=t(29),s=t(127);e.exports=function(t,e,n){var p=s(t),u=n(o,p,""[t]),c=u[0],l=u[1];i(function(){var e={};return e[p]=function(){return 7},7!=""[t](e)})&&(r(String.prototype,t,c),a(RegExp.prototype,p,2==e?function(t,e){return l.call(t,this,e)}:function(t){return l.call(t,this)}))}},{127:127,29:29,36:36,43:43,92:92}],38:[function(t,e,n){"use strict";var a=t(8);e.exports=function(){var t=a(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},{8:8}],39:[function(t,e,n){"use strict";function a(t,e,n,u,c,l,d,f){for(var h,m,g=c,v=0,b=d?s(d,f,3):!1;u>v;){if(v in n){if(h=b?b(n[v],v,e):n[v],m=!1,i(h)&&(m=h[p],m=void 0!==m?!!m:r(h)),m&&l>0)g=a(t,e,h,o(h.length),g,l-1)-1;else{if(g>=9007199254740991)throw TypeError();t[g]=h}g++}v++}return g}var r=t(50),i=t(52),o=t(116),s=t(26),p=t(127)("isConcatSpreadable");e.exports=a},{116:116,127:127,26:26,50:50,52:52}],40:[function(t,e,n){var a=t(26),r=t(54),i=t(49),o=t(8),s=t(116),p=t(128),u={},c={},n=e.exports=function(t,e,n,l,d){var f,h,m,g,v=d?function(){return t}:p(t),b=a(n,l,e?2:1),y=0;if("function"!=typeof v)throw TypeError(t+" is not iterable!");if(i(v)){for(f=s(t.length);f>y;y++)if(g=e?b(o(h=t[y])[0],h[1]):b(t[y]),g===u||g===c)return g}else for(m=v.call(t);!(h=m.next()).done;)if(g=r(m,b,h.value,e),g===u||g===c)return g};n.BREAK=u,n.RETURN=c},{116:116,128:128,26:26,49:49,54:54,8:8}],41:[function(t,e,n){var a=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=a)},{}],42:[function(t,e,n){var a={}.hasOwnProperty;e.exports=function(t,e){return a.call(t,e)}},{}],43:[function(t,e,n){var a=t(72),r=t(90);e.exports=t(30)?function(t,e,n){return a.f(t,e,r(1,n))}:function(t,e,n){return t[e]=n,t}},{30:30,72:72,90:90}],44:[function(t,e,n){var a=t(41).document;e.exports=a&&a.documentElement},{41:41}],45:[function(t,e,n){e.exports=!t(30)&&!t(36)(function(){return 7!=Object.defineProperty(t(31)("div"),"a",{get:function(){return 7}}).a})},{30:30,31:31,36:36}],46:[function(t,e,n){var a=t(52),r=t(97).set;e.exports=function(t,e,n){var i,o=e.constructor;return o!==n&&"function"==typeof o&&(i=o.prototype)!==n.prototype&&a(i)&&r&&r(t,i),t}},{52:52,97:97}],47:[function(t,e,n){e.exports=function(t,e,n){var a=void 0===n;switch(e.length){case 0:return a?t():t.call(n);case 1:return a?t(e[0]):t.call(n,e[0]);case 2:return a?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return a?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return a?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},{}],48:[function(t,e,n){var a=t(19);e.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==a(t)?t.split(""):Object(t)}},{19:19}],49:[function(t,e,n){var a=t(59),r=t(127)("iterator"),i=Array.prototype;e.exports=function(t){return void 0!==t&&(a.Array===t||i[r]===t)}},{127:127,59:59}],50:[function(t,e,n){var a=t(19);e.exports=Array.isArray||function(t){return"Array"==a(t)}},{19:19}],51:[function(t,e,n){var a=t(52),r=Math.floor;e.exports=function(t){return!a(t)&&isFinite(t)&&r(t)===t}},{52:52}],52:[function(t,e,n){e.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},{}],53:[function(t,e,n){var a=t(52),r=t(19),i=t(127)("match");e.exports=function(t){var e;return a(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==r(t))}},{127:127,19:19,52:52}],54:[function(t,e,n){var a=t(8);e.exports=function(t,e,n,r){try{return r?e(a(n)[0],n[1]):e(n)}catch(i){var o=t["return"];throw void 0!==o&&a(o.call(t)),i}}},{8:8}],55:[function(t,e,n){"use strict";var a=t(71),r=t(90),i=t(99),o={};t(43)(o,t(127)("iterator"),function(){return this}),e.exports=function(t,e,n){t.prototype=a(o,{next:r(1,n)}),i(t,e+" Iterator")}},{127:127,43:43,71:71,90:90,99:99}],56:[function(t,e,n){"use strict";var a=t(60),r=t(34),i=t(92),o=t(43),s=t(59),p=t(55),u=t(99),c=t(79),l=t(127)("iterator"),d=!([].keys&&"next"in[].keys()),f="@@iterator",h="keys",m="values",g=function(){return this};e.exports=function(t,e,n,v,b,y,_){p(n,e,v);var x,w,k,S=function(t){if(!d&&t in A)return A[t];switch(t){case h:return function(){return new n(this,t)};case m:return function(){return new n(this,t)}}return function(){return new n(this,t)}},E=e+" Iterator",C=b==m,P=!1,A=t.prototype,O=A[l]||A[f]||b&&A[b],T=O||S(b),R=b?C?S("entries"):T:void 0,M="Array"==e?A.entries||O:O;if(M&&(k=c(M.call(new t)),k!==Object.prototype&&k.next&&(u(k,E,!0),a||"function"==typeof k[l]||o(k,l,g))),C&&O&&O.name!==m&&(P=!0,T=function(){return O.call(this)}),a&&!_||!d&&!P&&A[l]||o(A,l,T),s[e]=T,s[E]=g,b)if(x={values:C?T:S(m),keys:y?T:S(h),entries:R},_)for(w in x)w in A||i(A,w,x[w]);else r(r.P+r.F*(d||P),e,x);return x}},{127:127,34:34,43:43,55:55,59:59,60:60,79:79,92:92,99:99}],57:[function(t,e,n){var a=t(127)("iterator"),r=!1;try{var i=[7][a]();i["return"]=function(){r=!0},Array.from(i,function(){throw 2})}catch(o){}e.exports=function(t,e){if(!e&&!r)return!1;var n=!1;try{var i=[7],o=i[a]();o.next=function(){return{done:n=!0}},i[a]=function(){return o},t(i)}catch(s){}return n}},{127:127}],58:[function(t,e,n){e.exports=function(t,e){return{value:e,done:!!t}}},{}],59:[function(t,e,n){e.exports={}},{}],60:[function(t,e,n){e.exports=!1},{}],61:[function(t,e,n){var a=Math.expm1;e.exports=!a||a(10)>22025.465794806718||a(10)<22025.465794806718||-2e-17!=a(-2e-17)?function(t){return 0==(t=+t)?t:t>-1e-6&&1e-6>t?t+t*t/2:Math.exp(t)-1}:a},{}],62:[function(t,e,n){var a=t(65),r=Math.pow,i=r(2,-52),o=r(2,-23),s=r(2,127)*(2-o),p=r(2,-126),u=function(t){return t+1/i-1/i};e.exports=Math.fround||function(t){var e,n,r=Math.abs(t),c=a(t);return p>r?c*u(r/p/o)*p*o:(e=(1+o/i)*r,n=e-(e-r),n>s||n!=n?c*(1/0):c*n)}},{65:65}],63:[function(t,e,n){e.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&1e-8>t?t-t*t/2:Math.log(1+t)}},{}],64:[function(t,e,n){e.exports=Math.scale||function(t,e,n,a,r){return 0===arguments.length||t!=t||e!=e||n!=n||a!=a||r!=r?NaN:t===1/0||t===-(1/0)?t:(t-e)*(r-a)/(n-e)+a}},{}],65:[function(t,e,n){e.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:0>t?-1:1}},{}],66:[function(t,e,n){var a=t(122)("meta"),r=t(52),i=t(42),o=t(72).f,s=0,p=Object.isExtensible||function(){return!0},u=!t(36)(function(){return p(Object.preventExtensions({}))}),c=function(t){o(t,a,{value:{i:"O"+ ++s,w:{}}})},l=function(t,e){if(!r(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,a)){if(!p(t))return"F";if(!e)return"E";c(t)}return t[a].i},d=function(t,e){if(!i(t,a)){if(!p(t))return!0;if(!e)return!1;c(t)}return t[a].w},f=function(t){return u&&h.NEED&&p(t)&&!i(t,a)&&c(t),t},h=e.exports={KEY:a,NEED:!1,fastKey:l,getWeak:d,onFreeze:f}},{122:122,36:36,42:42,52:52,72:72}],67:[function(t,e,n){var a=t(159),r=t(34),i=t(101)("metadata"),o=i.store||(i.store=new(t(265))),s=function(t,e,n){var r=o.get(t);if(!r){if(!n)return;o.set(t,r=new a)}var i=r.get(e);if(!i){if(!n)return;r.set(e,i=new a)}return i},p=function(t,e,n){var a=s(e,n,!1);return void 0===a?!1:a.has(t)},u=function(t,e,n){var a=s(e,n,!1);return void 0===a?void 0:a.get(t)},c=function(t,e,n,a){s(n,a,!0).set(t,e)},l=function(t,e){var n=s(t,e,!1),a=[];return n&&n.forEach(function(t,e){a.push(e)}),a},d=function(t){return void 0===t||"symbol"==typeof t?t:t+""},f=function(t){r(r.S,"Reflect",t)};e.exports={store:o,map:s,has:p,get:u,set:c,keys:l,key:d,exp:f}},{101:101,159:159,265:265,34:34}],68:[function(t,e,n){var a=t(41),r=t(111).set,i=a.MutationObserver||a.WebKitMutationObserver,o=a.process,s=a.Promise,p="process"==t(19)(o);e.exports=function(){var t,e,n,u=function(){var a,r;for(p&&(a=o.domain)&&a.exit();t;){r=t.fn,t=t.next;try{r()}catch(i){throw t?n():e=void 0,i}}e=void 0,a&&a.enter()};if(p)n=function(){o.nextTick(u)};else if(!i||a.navigator&&a.navigator.standalone)if(s&&s.resolve){var c=s.resolve(void 0);n=function(){c.then(u)}}else n=function(){r.call(a,u)};else{var l=!0,d=document.createTextNode("");new i(u).observe(d,{characterData:!0}),n=function(){d.data=l=!l}}return function(a){var r={fn:a,next:void 0};e&&(e.next=r),t||(t=r,n()),e=r}}},{111:111,19:19,41:41}],69:[function(t,e,n){"use strict";function a(t){var e,n;this.promise=new t(function(t,a){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=a}),this.resolve=r(e),this.reject=r(n)}var r=t(4);e.exports.f=function(t){return new a(t)}},{4:4}],70:[function(t,e,n){"use strict";var a=t(81),r=t(78),i=t(82),o=t(117),s=t(48),p=Object.assign;e.exports=!p||t(36)(function(){var t={},e={},n=Symbol(),a="abcdefghijklmnopqrst";return t[n]=7,a.split("").forEach(function(t){e[t]=t}),7!=p({},t)[n]||Object.keys(p({},e)).join("")!=a})?function(t,e){for(var n=o(t),p=arguments.length,u=1,c=r.f,l=i.f;p>u;)for(var d,f=s(arguments[u++]),h=c?a(f).concat(c(f)):a(f),m=h.length,g=0;m>g;)l.call(f,d=h[g++])&&(n[d]=f[d]);return n}:p},{117:117,36:36,48:48,78:78,81:81,82:82}],71:[function(t,e,n){var a=t(8),r=t(73),i=t(32),o=t(100)("IE_PROTO"),s=function(){},p="prototype",u=function(){var e,n=t(31)("iframe"),a=i.length,r="<",o=">";for(n.style.display="none",t(44).appendChild(n),n.src="javascript:",e=n.contentWindow.document,e.open(),e.write(r+"script"+o+"document.F=Object"+r+"/script"+o),e.close(),u=e.F;a--;)delete u[p][i[a]];return u()};e.exports=Object.create||function(t,e){var n;return null!==t?(s[p]=a(t),n=new s,s[p]=null,n[o]=t):n=u(),void 0===e?n:r(n,e)}},{100:100,31:31,32:32,44:44,73:73,8:8}],72:[function(t,e,n){var a=t(8),r=t(45),i=t(118),o=Object.defineProperty;n.f=t(30)?Object.defineProperty:function(t,e,n){if(a(t),e=i(e,!0),a(n),r)try{return o(t,e,n)}catch(s){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},{118:118,30:30,45:45,8:8}],73:[function(t,e,n){var a=t(72),r=t(8),i=t(81);e.exports=t(30)?Object.defineProperties:function(t,e){r(t);for(var n,o=i(e),s=o.length,p=0;s>p;)a.f(t,n=o[p++],e[n]);return t}},{30:30,72:72,8:8,81:81}],74:[function(t,e,n){"use strict";e.exports=t(60)||!t(36)(function(){var e=Math.random();__defineSetter__.call(null,e,function(){}),delete t(41)[e]})},{36:36,41:41,60:60}],75:[function(t,e,n){var a=t(82),r=t(90),i=t(115),o=t(118),s=t(42),p=t(45),u=Object.getOwnPropertyDescriptor;n.f=t(30)?u:function(t,e){if(t=i(t),e=o(e,!0),p)try{return u(t,e)}catch(n){}return s(t,e)?r(!a.f.call(t,e),t[e]):void 0}},{115:115,118:118,30:30,42:42,45:45,82:82,90:90}],76:[function(t,e,n){var a=t(115),r=t(77).f,i={}.toString,o="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],s=function(t){try{return r(t)}catch(e){return o.slice()}};e.exports.f=function(t){return o&&"[object Window]"==i.call(t)?s(t):r(a(t))}},{115:115,77:77}],77:[function(t,e,n){var a=t(80),r=t(32).concat("length","prototype");n.f=Object.getOwnPropertyNames||function(t){return a(t,r)}},{32:32,80:80}],78:[function(t,e,n){n.f=Object.getOwnPropertySymbols},{}],79:[function(t,e,n){var a=t(42),r=t(117),i=t(100)("IE_PROTO"),o=Object.prototype;e.exports=Object.getPrototypeOf||function(t){return t=r(t),a(t,i)?t[i]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?o:null}},{100:100,117:117,42:42}],80:[function(t,e,n){var a=t(42),r=t(115),i=t(12)(!1),o=t(100)("IE_PROTO");e.exports=function(t,e){var n,s=r(t),p=0,u=[];for(n in s)n!=o&&a(s,n)&&u.push(n);for(;e.length>p;)a(s,n=e[p++])&&(~i(u,n)||u.push(n));return u}},{100:100,115:115,12:12,42:42}],81:[function(t,e,n){var a=t(80),r=t(32);e.exports=Object.keys||function(t){return a(t,r)}},{32:32,80:80}],82:[function(t,e,n){n.f={}.propertyIsEnumerable},{}],83:[function(t,e,n){var a=t(34),r=t(24),i=t(36);e.exports=function(t,e){var n=(r.Object||{})[t]||Object[t],o={};o[t]=e(n),a(a.S+a.F*i(function(){n(1)}),"Object",o)}},{24:24,34:34,36:36}],84:[function(t,e,n){var a=t(81),r=t(115),i=t(82).f;e.exports=function(t){return function(e){for(var n,o=r(e),s=a(o),p=s.length,u=0,c=[];p>u;)i.call(o,n=s[u++])&&c.push(t?[n,o[n]]:o[n]);return c}}},{115:115,81:81,82:82}],85:[function(t,e,n){var a=t(77),r=t(78),i=t(8),o=t(41).Reflect;e.exports=o&&o.ownKeys||function(t){var e=a.f(i(t)),n=r.f;return n?e.concat(n(t)):e}},{41:41,77:77,78:78,8:8}],86:[function(t,e,n){var a=t(41).parseFloat,r=t(109).trim;e.exports=1/a(t(110)+"-0")!==-(1/0)?function(t){var e=r(t+"",3),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},{109:109,110:110,41:41}],87:[function(t,e,n){var a=t(41).parseInt,r=t(109).trim,i=t(110),o=/^[-+]?0[xX]/;e.exports=8!==a(i+"08")||22!==a(i+"0x16")?function(t,e){var n=r(t+"",3);return a(n,e>>>0||(o.test(n)?16:10))}:a},{109:109,110:110,41:41}],88:[function(t,e,n){e.exports=function(t){try{return{e:!1,v:t()}}catch(e){return{e:!0,v:e}}}},{}],89:[function(t,e,n){var a=t(8),r=t(52),i=t(69);e.exports=function(t,e){if(a(t),r(e)&&e.constructor===t)return e;var n=i.f(t),o=n.resolve;return o(e),n.promise}},{52:52,69:69,8:8}],90:[function(t,e,n){e.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},{}],91:[function(t,e,n){var a=t(92);e.exports=function(t,e,n){for(var r in e)a(t,r,e[r],n);return t}},{92:92}],92:[function(t,e,n){var a=t(41),r=t(43),i=t(42),o=t(122)("src"),s="toString",p=Function[s],u=(""+p).split(s);t(24).inspectSource=function(t){return p.call(t)},(e.exports=function(t,e,n,s){var p="function"==typeof n;p&&(i(n,"name")||r(n,"name",e)),t[e]!==n&&(p&&(i(n,o)||r(n,o,t[e]?""+t[e]:u.join(e+""))),t===a?t[e]=n:s?t[e]?t[e]=n:r(t,e,n):(delete t[e],r(t,e,n)))})(Function.prototype,s,function(){ -return"function"==typeof this&&this[o]||p.call(this)})},{122:122,24:24,41:41,42:42,43:43}],93:[function(t,e,n){e.exports=function(t,e){var n=e===Object(e)?function(t){return e[t]}:e;return function(e){return(e+"").replace(t,n)}}},{}],94:[function(t,e,n){e.exports=Object.is||function(t,e){return t===e?0!==t||1/t===1/e:t!=t&&e!=e}},{}],95:[function(t,e,n){"use strict";var a=t(34),r=t(4),i=t(26),o=t(40);e.exports=function(t){a(a.S,t,{from:function(t){var e,n,a,s,p=arguments[1];return r(this),e=void 0!==p,e&&r(p),void 0==t?new this:(n=[],e?(a=0,s=i(p,arguments[2],2),o(t,!1,function(t){n.push(s(t,a++))})):o(t,!1,n.push,n),new this(n))}})}},{26:26,34:34,4:4,40:40}],96:[function(t,e,n){"use strict";var a=t(34);e.exports=function(t){a(a.S,t,{of:function(){for(var t=arguments.length,e=Array(t);t--;)e[t]=arguments[t];return new this(e)}})}},{34:34}],97:[function(t,e,n){var a=t(52),r=t(8),i=function(t,e){if(r(t),!a(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};e.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(e,n,a){try{a=t(26)(Function.call,t(75).f(Object.prototype,"__proto__").set,2),a(e,[]),n=!(e instanceof Array)}catch(r){n=!0}return function(t,e){return i(t,e),n?t.__proto__=e:a(t,e),t}}({},!1):void 0),check:i}},{26:26,52:52,75:75,8:8}],98:[function(t,e,n){"use strict";var a=t(41),r=t(72),i=t(30),o=t(127)("species");e.exports=function(t){var e=a[t];i&&e&&!e[o]&&r.f(e,o,{configurable:!0,get:function(){return this}})}},{127:127,30:30,41:41,72:72}],99:[function(t,e,n){var a=t(72).f,r=t(42),i=t(127)("toStringTag");e.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,i)&&a(t,i,{configurable:!0,value:e})}},{127:127,42:42,72:72}],100:[function(t,e,n){var a=t(101)("keys"),r=t(122);e.exports=function(t){return a[t]||(a[t]=r(t))}},{101:101,122:122}],101:[function(t,e,n){var a=t(24),r=t(41),i="__core-js_shared__",o=r[i]||(r[i]={});(e.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:a.version,mode:t(60)?"pure":"global",copyright:"© 2018 Denis Pushkarev (zloirock.ru)"})},{24:24,41:41,60:60}],102:[function(t,e,n){var a=t(8),r=t(4),i=t(127)("species");e.exports=function(t,e){var n,o=a(t).constructor;return void 0===o||void 0==(n=a(o)[i])?e:r(n)}},{127:127,4:4,8:8}],103:[function(t,e,n){"use strict";var a=t(36);e.exports=function(t,e){return!!t&&a(function(){e?t.call(null,function(){},1):t.call(null)})}},{36:36}],104:[function(t,e,n){var a=t(114),r=t(29);e.exports=function(t){return function(e,n){var i,o,s=r(e)+"",p=a(n),u=s.length;return 0>p||p>=u?t?"":void 0:(i=s.charCodeAt(p),55296>i||i>56319||p+1===u||(o=s.charCodeAt(p+1))<56320||o>57343?t?s.charAt(p):i:t?s.slice(p,p+2):(i-55296<<10)+(o-56320)+65536)}}},{114:114,29:29}],105:[function(t,e,n){var a=t(53),r=t(29);e.exports=function(t,e,n){if(a(e))throw TypeError("String#"+n+" doesn't accept regex!");return r(t)+""}},{29:29,53:53}],106:[function(t,e,n){var a=t(34),r=t(36),i=t(29),o=/"/g,s=function(t,e,n,a){var r=i(t)+"",s="<"+e;return""!==n&&(s+=" "+n+'="'+(a+"").replace(o,""")+'"'),s+">"+r+""};e.exports=function(t,e){var n={};n[t]=e(s),a(a.P+a.F*r(function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3}),"String",n)}},{29:29,34:34,36:36}],107:[function(t,e,n){var a=t(116),r=t(108),i=t(29);e.exports=function(t,e,n,o){var s=i(t)+"",p=s.length,u=void 0===n?" ":n+"",c=a(e);if(p>=c||""==u)return s;var l=c-p,d=r.call(u,Math.ceil(l/u.length));return d.length>l&&(d=d.slice(0,l)),o?d+s:s+d}},{108:108,116:116,29:29}],108:[function(t,e,n){"use strict";var a=t(114),r=t(29);e.exports=function(t){var e=r(this)+"",n="",i=a(t);if(0>i||i==1/0)throw RangeError("Count can't be negative");for(;i>0;(i>>>=1)&&(e+=e))1&i&&(n+=e);return n}},{114:114,29:29}],109:[function(t,e,n){var a=t(34),r=t(29),i=t(36),o=t(110),s="["+o+"]",p="​…",u=RegExp("^"+s+s+"*"),c=RegExp(s+s+"*$"),l=function(t,e,n){var r={},s=i(function(){return!!o[t]()||p[t]()!=p}),u=r[t]=s?e(d):o[t];n&&(r[n]=u),a(a.P+a.F*s,"String",r)},d=l.trim=function(t,e){return t=r(t)+"",1&e&&(t=t.replace(u,"")),2&e&&(t=t.replace(c,"")),t};e.exports=l},{110:110,29:29,34:34,36:36}],110:[function(t,e,n){e.exports=" \n\x0B\f\r   ᠎              \u2028\u2029\ufeff"},{}],111:[function(t,e,n){var a,r,i,o=t(26),s=t(47),p=t(44),u=t(31),c=t(41),l=c.process,d=c.setImmediate,f=c.clearImmediate,h=c.MessageChannel,m=c.Dispatch,g=0,v={},b="onreadystatechange",y=function(){var t=+this;if(v.hasOwnProperty(t)){var e=v[t];delete v[t],e()}},_=function(t){y.call(t.data)};d&&f||(d=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return v[++g]=function(){s("function"==typeof t?t:Function(t),e)},a(g),g},f=function(t){delete v[t]},"process"==t(19)(l)?a=function(t){l.nextTick(o(y,t,1))}:m&&m.now?a=function(t){m.now(o(y,t,1))}:h?(r=new h,i=r.port2,r.port1.onmessage=_,a=o(i.postMessage,i,1)):c.addEventListener&&"function"==typeof postMessage&&!c.importScripts?(a=function(t){c.postMessage(t+"","*")},c.addEventListener("message",_,!1)):a=b in u("script")?function(t){p.appendChild(u("script"))[b]=function(){p.removeChild(this),y.call(t)}}:function(t){setTimeout(o(y,t,1),0)}),e.exports={set:d,clear:f}},{19:19,26:26,31:31,41:41,44:44,47:47}],112:[function(t,e,n){var a=t(114),r=Math.max,i=Math.min;e.exports=function(t,e){return t=a(t),0>t?r(t+e,0):i(t,e)}},{114:114}],113:[function(t,e,n){var a=t(114),r=t(116);e.exports=function(t){if(void 0===t)return 0;var e=a(t),n=r(e);if(e!==n)throw RangeError("Wrong length!");return n}},{114:114,116:116}],114:[function(t,e,n){var a=Math.ceil,r=Math.floor;e.exports=function(t){return isNaN(t=+t)?0:(t>0?r:a)(t)}},{}],115:[function(t,e,n){var a=t(48),r=t(29);e.exports=function(t){return a(r(t))}},{29:29,48:48}],116:[function(t,e,n){var a=t(114),r=Math.min;e.exports=function(t){return t>0?r(a(t),9007199254740991):0}},{114:114}],117:[function(t,e,n){var a=t(29);e.exports=function(t){return Object(a(t))}},{29:29}],118:[function(t,e,n){var a=t(52);e.exports=function(t,e){if(!a(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!a(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!a(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},{52:52}],119:[function(t,e,n){"use strict";if(t(30)){var a=t(60),r=t(41),i=t(36),o=t(34),s=t(121),p=t(120),u=t(26),c=t(7),l=t(90),d=t(43),f=t(91),h=t(114),m=t(116),g=t(113),v=t(112),b=t(118),y=t(42),_=t(18),x=t(52),w=t(117),k=t(49),S=t(71),E=t(79),C=t(77).f,P=t(128),A=t(122),O=t(127),T=t(13),R=t(12),M=t(102),L=t(140),D=t(59),j=t(57),N=t(98),F=t(10),I=t(9),B=t(72),q=t(75),U=B.f,V=q.f,G=r.RangeError,z=r.TypeError,W=r.Uint8Array,H="ArrayBuffer",K="Shared"+H,Q="BYTES_PER_ELEMENT",Y="prototype",$=Array[Y],J=p.ArrayBuffer,X=p.DataView,Z=T(0),tt=T(2),et=T(3),nt=T(4),at=T(5),rt=T(6),it=R(!0),ot=R(!1),st=L.values,pt=L.keys,ut=L.entries,ct=$.lastIndexOf,lt=$.reduce,dt=$.reduceRight,ft=$.join,ht=$.sort,mt=$.slice,gt=$.toString,vt=$.toLocaleString,bt=O("iterator"),yt=O("toStringTag"),_t=A("typed_constructor"),xt=A("def_constructor"),wt=s.CONSTR,kt=s.TYPED,St=s.VIEW,Et="Wrong length!",Ct=T(1,function(t,e){return Rt(M(t,t[xt]),e)}),Pt=i(function(){return 1===new W(new Uint16Array([1]).buffer)[0]}),At=!!W&&!!W[Y].set&&i(function(){new W(1).set({})}),Ot=function(t,e){var n=h(t);if(0>n||n%e)throw G("Wrong offset!");return n},Tt=function(t){if(x(t)&&kt in t)return t;throw z(t+" is not a typed array!")},Rt=function(t,e){if(!(x(t)&&_t in t))throw z("It is not a typed array constructor!");return new t(e)},Mt=function(t,e){return Lt(M(t,t[xt]),e)},Lt=function(t,e){for(var n=0,a=e.length,r=Rt(t,a);a>n;)r[n]=e[n++];return r},Dt=function(t,e,n){U(t,e,{get:function(){return this._d[n]}})},jt=function(t){var e,n,a,r,i,o,s=w(t),p=arguments.length,c=p>1?arguments[1]:void 0,l=void 0!==c,d=P(s);if(void 0!=d&&!k(d)){for(o=d.call(s),a=[],e=0;!(i=o.next()).done;e++)a.push(i.value);s=a}for(l&&p>2&&(c=u(c,arguments[2],2)),e=0,n=m(s.length),r=Rt(this,n);n>e;e++)r[e]=l?c(s[e],e):s[e];return r},Nt=function(){for(var t=0,e=arguments.length,n=Rt(this,e);e>t;)n[t]=arguments[t++];return n},Ft=!!W&&i(function(){vt.call(new W(1))}),It=function(){return vt.apply(Ft?mt.call(Tt(this)):Tt(this),arguments)},Bt={copyWithin:function(t,e){return I.call(Tt(this),t,e,arguments.length>2?arguments[2]:void 0)},every:function(t){return nt(Tt(this),t,arguments.length>1?arguments[1]:void 0)},fill:function(t){return F.apply(Tt(this),arguments)},filter:function(t){return Mt(this,tt(Tt(this),t,arguments.length>1?arguments[1]:void 0))},find:function(t){return at(Tt(this),t,arguments.length>1?arguments[1]:void 0)},findIndex:function(t){return rt(Tt(this),t,arguments.length>1?arguments[1]:void 0)},forEach:function(t){Z(Tt(this),t,arguments.length>1?arguments[1]:void 0)},indexOf:function(t){return ot(Tt(this),t,arguments.length>1?arguments[1]:void 0)},includes:function(t){return it(Tt(this),t,arguments.length>1?arguments[1]:void 0)},join:function(t){return ft.apply(Tt(this),arguments)},lastIndexOf:function(t){return ct.apply(Tt(this),arguments)},map:function(t){return Ct(Tt(this),t,arguments.length>1?arguments[1]:void 0)},reduce:function(t){return lt.apply(Tt(this),arguments)},reduceRight:function(t){return dt.apply(Tt(this),arguments)},reverse:function(){for(var t,e=this,n=Tt(e).length,a=Math.floor(n/2),r=0;a>r;)t=e[r],e[r++]=e[--n],e[n]=t;return e},some:function(t){return et(Tt(this),t,arguments.length>1?arguments[1]:void 0)},sort:function(t){return ht.call(Tt(this),t)},subarray:function(t,e){var n=Tt(this),a=n.length,r=v(t,a);return new(M(n,n[xt]))(n.buffer,n.byteOffset+r*n.BYTES_PER_ELEMENT,m((void 0===e?a:v(e,a))-r))}},qt=function(t,e){return Mt(this,mt.call(Tt(this),t,e))},Ut=function(t){Tt(this);var e=Ot(arguments[1],1),n=this.length,a=w(t),r=m(a.length),i=0;if(r+e>n)throw G(Et);for(;r>i;)this[e+i]=a[i++]},Vt={entries:function(){return ut.call(Tt(this))},keys:function(){return pt.call(Tt(this))},values:function(){return st.call(Tt(this))}},Gt=function(t,e){return x(t)&&t[kt]&&"symbol"!=typeof e&&e in t&&+e+""==e+""},zt=function(t,e){return Gt(t,e=b(e,!0))?l(2,t[e]):V(t,e)},Wt=function(t,e,n){return!(Gt(t,e=b(e,!0))&&x(n)&&y(n,"value"))||y(n,"get")||y(n,"set")||n.configurable||y(n,"writable")&&!n.writable||y(n,"enumerable")&&!n.enumerable?U(t,e,n):(t[e]=n.value,t)};wt||(q.f=zt,B.f=Wt),o(o.S+o.F*!wt,"Object",{getOwnPropertyDescriptor:zt,defineProperty:Wt}),i(function(){gt.call({})})&&(gt=vt=function(){return ft.call(this)});var Ht=f({},Bt);f(Ht,Vt),d(Ht,bt,Vt.values),f(Ht,{slice:qt,set:Ut,constructor:function(){},toString:gt,toLocaleString:It}),Dt(Ht,"buffer","b"),Dt(Ht,"byteOffset","o"),Dt(Ht,"byteLength","l"),Dt(Ht,"length","e"),U(Ht,yt,{get:function(){return this[kt]}}),e.exports=function(t,e,n,p){p=!!p;var u=t+(p?"Clamped":"")+"Array",l="get"+t,f="set"+t,h=r[u],v=h||{},b=h&&E(h),y=!h||!s.ABV,w={},k=h&&h[Y],P=function(t,n){var a=t._d;return a.v[l](n*e+a.o,Pt)},A=function(t,n,a){var r=t._d;p&&(a=(a=Math.round(a))<0?0:a>255?255:255&a),r.v[f](n*e+r.o,a,Pt)},O=function(t,e){U(t,e,{get:function(){return P(this,e)},set:function(t){return A(this,e,t)},enumerable:!0})};y?(h=n(function(t,n,a,r){c(t,h,u,"_d");var i,o,s,p,l=0,f=0;if(x(n)){if(!(n instanceof J||(p=_(n))==H||p==K))return kt in n?Lt(h,n):jt.call(h,n);i=n,f=Ot(a,e);var v=n.byteLength;if(void 0===r){if(v%e)throw G(Et);if(o=v-f,0>o)throw G(Et)}else if(o=m(r)*e,o+f>v)throw G(Et);s=o/e}else s=g(n),o=s*e,i=new J(o);for(d(t,"_d",{b:i,o:f,l:o,e:s,v:new X(i)});s>l;)O(t,l++)}),k=h[Y]=S(Ht),d(k,"constructor",h)):i(function(){h(1)})&&i(function(){new h(-1)})&&j(function(t){new h,new h(null),new h(1.5),new h(t)},!0)||(h=n(function(t,n,a,r){c(t,h,u);var i;return x(n)?n instanceof J||(i=_(n))==H||i==K?void 0!==r?new v(n,Ot(a,e),r):void 0!==a?new v(n,Ot(a,e)):new v(n):kt in n?Lt(h,n):jt.call(h,n):new v(g(n))}),Z(b!==Function.prototype?C(v).concat(C(b)):C(v),function(t){t in h||d(h,t,v[t])}),h[Y]=k,a||(k.constructor=h));var T=k[bt],R=!!T&&("values"==T.name||void 0==T.name),M=Vt.values;d(h,_t,!0),d(k,kt,u),d(k,St,!0),d(k,xt,h),(p?new h(1)[yt]==u:yt in k)||U(k,yt,{get:function(){return u}}),w[u]=h,o(o.G+o.W+o.F*(h!=v),w),o(o.S,u,{BYTES_PER_ELEMENT:e}),o(o.S+o.F*i(function(){v.of.call(h,1)}),u,{from:jt,of:Nt}),Q in k||d(k,Q,e),o(o.P,u,Bt),N(u),o(o.P+o.F*At,u,{set:Ut}),o(o.P+o.F*!R,u,Vt),a||k.toString==gt||(k.toString=gt),o(o.P+o.F*i(function(){new h(1).slice()}),u,{slice:qt}),o(o.P+o.F*(i(function(){return[1,2].toLocaleString()!=new h([1,2]).toLocaleString()})||!i(function(){k.toLocaleString.call([1,2])})),u,{toLocaleString:It}),D[u]=R?T:M,a||R||d(k,bt,M)}}else e.exports=function(){}},{10:10,102:102,112:112,113:113,114:114,116:116,117:117,118:118,12:12,120:120,121:121,122:122,127:127,128:128,13:13,140:140,18:18,26:26,30:30,34:34,36:36,41:41,42:42,43:43,49:49,52:52,57:57,59:59,60:60,7:7,71:71,72:72,75:75,77:77,79:79,9:9,90:90,91:91,98:98}],120:[function(t,e,n){"use strict";function a(t,e,n){var a,r,i,o=Array(n),s=8*n-e-1,p=(1<>1,c=23===e?U(2,-24)-U(2,-77):0,l=0,d=0>t||0===t&&0>1/t?1:0;for(t=q(t),t!=t||t===I?(r=t!=t?1:0,a=p):(a=V(G(t)/z),t*(i=U(2,-a))<1&&(a--,i*=2),t+=a+u>=1?c/i:c*U(2,1-u),t*i>=2&&(a++,i/=2),a+u>=p?(r=0,a=p):a+u>=1?(r=(t*i-1)*U(2,e),a+=u):(r=t*U(2,u-1)*U(2,e),a=0));e>=8;o[l++]=255&r,r/=256,e-=8);for(a=a<0;o[l++]=255&a,a/=256,s-=8);return o[--l]|=128*d,o}function r(t,e,n){var a,r=8*n-e-1,i=(1<>1,s=r-7,p=n-1,u=t[p--],c=127&u;for(u>>=7;s>0;c=256*c+t[p],p--,s-=8);for(a=c&(1<<-s)-1,c>>=-s,s+=e;s>0;a=256*a+t[p],p--,s-=8);if(0===c)c=1-o;else{if(c===i)return a?NaN:u?-I:I;a+=U(2,e),c-=o}return(u?-1:1)*a*U(2,c-e)}function i(t){return t[3]<<24|t[2]<<16|t[1]<<8|t[0]}function o(t){return[255&t]}function s(t){return[255&t,t>>8&255]}function p(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function u(t){return a(t,52,8)}function c(t){return a(t,23,4)}function l(t,e,n){C(t[R],e,{get:function(){return this[n]}})}function d(t,e,n,a){var r=+n,i=S(r);if(i+e>t[Y])throw F(L);var o=t[Q]._b,s=i+t[$],p=o.slice(s,s+e);return a?p:p.reverse()}function f(t,e,n,a,r,i){var o=+n,s=S(o);if(s+e>t[Y])throw F(L);for(var p=t[Q]._b,u=s+t[$],c=a(+r),l=0;e>l;l++)p[u+l]=c[i?l:e-l-1]}var h=t(41),m=t(30),g=t(60),v=t(121),b=t(43),y=t(91),_=t(36),x=t(7),w=t(114),k=t(116),S=t(113),E=t(77).f,C=t(72).f,P=t(10),A=t(99),O="ArrayBuffer",T="DataView",R="prototype",M="Wrong length!",L="Wrong index!",D=h[O],j=h[T],N=h.Math,F=h.RangeError,I=h.Infinity,B=D,q=N.abs,U=N.pow,V=N.floor,G=N.log,z=N.LN2,W="buffer",H="byteLength",K="byteOffset",Q=m?"_b":W,Y=m?"_l":H,$=m?"_o":K;if(v.ABV){if(!_(function(){D(1)})||!_(function(){new D(-1)})||_(function(){return new D,new D(1.5),new D(NaN),D.name!=O})){D=function(t){return x(this,D),new B(S(t))};for(var J,X=D[R]=B[R],Z=E(B),tt=0;Z.length>tt;)(J=Z[tt++])in D||b(D,J,B[J]);g||(X.constructor=D)}var et=new j(new D(2)),nt=j[R].setInt8;et.setInt8(0,2147483648),et.setInt8(1,2147483649),(et.getInt8(0)||!et.getInt8(1))&&y(j[R],{setInt8:function(t,e){nt.call(this,t,e<<24>>24)},setUint8:function(t,e){nt.call(this,t,e<<24>>24)}},!0)}else D=function(t){x(this,D,O);var e=S(t);this._b=P.call(Array(e),0),this[Y]=e},j=function(t,e,n){x(this,j,T),x(t,D,T);var a=t[Y],r=w(e);if(0>r||r>a)throw F("Wrong offset!");if(n=void 0===n?a-r:k(n),r+n>a)throw F(M);this[Q]=t,this[$]=r,this[Y]=n},m&&(l(D,H,"_l"),l(j,W,"_b"),l(j,H,"_l"),l(j,K,"_o")),y(j[R],{getInt8:function(t){return d(this,1,t)[0]<<24>>24},getUint8:function(t){return d(this,1,t)[0]},getInt16:function(t){var e=d(this,2,t,arguments[1]);return(e[1]<<8|e[0])<<16>>16},getUint16:function(t){var e=d(this,2,t,arguments[1]);return e[1]<<8|e[0]},getInt32:function(t){return i(d(this,4,t,arguments[1]))},getUint32:function(t){return i(d(this,4,t,arguments[1]))>>>0},getFloat32:function(t){return r(d(this,4,t,arguments[1]),23,4)},getFloat64:function(t){return r(d(this,8,t,arguments[1]),52,8)},setInt8:function(t,e){f(this,1,t,o,e)},setUint8:function(t,e){f(this,1,t,o,e)},setInt16:function(t,e){f(this,2,t,s,e,arguments[2])},setUint16:function(t,e){f(this,2,t,s,e,arguments[2])},setInt32:function(t,e){f(this,4,t,p,e,arguments[2])},setUint32:function(t,e){f(this,4,t,p,e,arguments[2])},setFloat32:function(t,e){f(this,4,t,c,e,arguments[2])},setFloat64:function(t,e){f(this,8,t,u,e,arguments[2])}});A(D,O),A(j,T),b(j[R],v.VIEW,!0),n[O]=D,n[T]=j},{10:10,113:113,114:114,116:116,121:121,30:30,36:36,41:41,43:43,60:60,7:7,72:72,77:77,91:91,99:99}],121:[function(t,e,n){for(var a,r=t(41),i=t(43),o=t(122),s=o("typed_array"),p=o("view"),u=!(!r.ArrayBuffer||!r.DataView),c=u,l=0,d=9,f="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");d>l;)(a=r[f[l++]])?(i(a.prototype,s,!0),i(a.prototype,p,!0)):c=!1;e.exports={ABV:u,CONSTR:c,TYPED:s,VIEW:p}},{122:122,41:41,43:43}],122:[function(t,e,n){var a=0,r=Math.random();e.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++a+r).toString(36))}},{}],123:[function(t,e,n){var a=t(41),r=a.navigator;e.exports=r&&r.userAgent||""},{41:41}],124:[function(t,e,n){var a=t(52);e.exports=function(t,e){if(!a(t)||t._t!==e)throw TypeError("Incompatible receiver, "+e+" required!");return t}},{52:52}],125:[function(t,e,n){var a=t(41),r=t(24),i=t(60),o=t(126),s=t(72).f;e.exports=function(t){var e=r.Symbol||(r.Symbol=i?{}:a.Symbol||{});"_"==t.charAt(0)||t in e||s(e,t,{value:o.f(t)})}},{126:126,24:24,41:41,60:60,72:72}],126:[function(t,e,n){n.f=t(127)},{127:127}],127:[function(t,e,n){var a=t(101)("wks"),r=t(122),i=t(41).Symbol,o="function"==typeof i,s=e.exports=function(t){return a[t]||(a[t]=o&&i[t]||(o?i:r)("Symbol."+t))};s.store=a},{101:101,122:122,41:41}],128:[function(t,e,n){var a=t(18),r=t(127)("iterator"),i=t(59);e.exports=t(24).getIteratorMethod=function(t){return void 0!=t?t[r]||t["@@iterator"]||i[a(t)]:void 0}},{127:127,18:18,24:24,59:59}],129:[function(t,e,n){var a=t(34),r=t(93)(/[\\^$*+?.()|[\]{}]/g,"\\$&");a(a.S,"RegExp",{escape:function(t){return r(t)}})},{34:34,93:93}],130:[function(t,e,n){var a=t(34);a(a.P,"Array",{copyWithin:t(9)}),t(6)("copyWithin")},{34:34,6:6,9:9}],131:[function(t,e,n){"use strict";var a=t(34),r=t(13)(4);a(a.P+a.F*!t(103)([].every,!0),"Array",{every:function(t){return r(this,t,arguments[1])}})},{103:103,13:13,34:34}],132:[function(t,e,n){var a=t(34);a(a.P,"Array",{fill:t(10)}),t(6)("fill")},{10:10,34:34,6:6}],133:[function(t,e,n){"use strict";var a=t(34),r=t(13)(2);a(a.P+a.F*!t(103)([].filter,!0),"Array",{filter:function(t){return r(this,t,arguments[1])}})},{103:103,13:13,34:34}],134:[function(t,e,n){"use strict";var a=t(34),r=t(13)(6),i="findIndex",o=!0;i in[]&&Array(1)[i](function(){o=!1}),a(a.P+a.F*o,"Array",{findIndex:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),t(6)(i)},{13:13,34:34,6:6}],135:[function(t,e,n){"use strict";var a=t(34),r=t(13)(5),i="find",o=!0;i in[]&&Array(1)[i](function(){o=!1}),a(a.P+a.F*o,"Array",{find:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),t(6)(i)},{13:13,34:34,6:6}],136:[function(t,e,n){"use strict";var a=t(34),r=t(13)(0),i=t(103)([].forEach,!0);a(a.P+a.F*!i,"Array",{forEach:function(t){return r(this,t,arguments[1])}})},{103:103,13:13,34:34}],137:[function(t,e,n){"use strict";var a=t(26),r=t(34),i=t(117),o=t(54),s=t(49),p=t(116),u=t(25),c=t(128);r(r.S+r.F*!t(57)(function(t){Array.from(t)}),"Array",{from:function(t){var e,n,r,l,d=i(t),f="function"==typeof this?this:Array,h=arguments.length,m=h>1?arguments[1]:void 0,g=void 0!==m,v=0,b=c(d);if(g&&(m=a(m,h>2?arguments[2]:void 0,2)),void 0==b||f==Array&&s(b))for(e=p(d.length),n=new f(e);e>v;v++)u(n,v,g?m(d[v],v):d[v]);else for(l=b.call(d),n=new f;!(r=l.next()).done;v++)u(n,v,g?o(l,m,[r.value,v],!0):r.value);return n.length=v,n}})},{116:116,117:117,128:128,25:25,26:26,34:34,49:49,54:54,57:57}],138:[function(t,e,n){"use strict";var a=t(34),r=t(12)(!1),i=[].indexOf,o=!!i&&1/[1].indexOf(1,-0)<0;a(a.P+a.F*(o||!t(103)(i)),"Array",{indexOf:function(t){return o?i.apply(this,arguments)||0:r(this,t,arguments[1])}})},{103:103,12:12,34:34}],139:[function(t,e,n){var a=t(34);a(a.S,"Array",{isArray:t(50)})},{34:34,50:50}],140:[function(t,e,n){"use strict";var a=t(6),r=t(58),i=t(59),o=t(115);e.exports=t(56)(Array,"Array",function(t,e){this._t=o(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,r(1)):"keys"==e?r(0,n):"values"==e?r(0,t[n]):r(0,[n,t[n]])},"values"),i.Arguments=i.Array,a("keys"),a("values"),a("entries")},{115:115,56:56,58:58,59:59,6:6}],141:[function(t,e,n){"use strict";var a=t(34),r=t(115),i=[].join;a(a.P+a.F*(t(48)!=Object||!t(103)(i)),"Array",{join:function(t){return i.call(r(this),void 0===t?",":t)}})},{103:103,115:115,34:34,48:48}],142:[function(t,e,n){"use strict";var a=t(34),r=t(115),i=t(114),o=t(116),s=[].lastIndexOf,p=!!s&&1/[1].lastIndexOf(1,-0)<0;a(a.P+a.F*(p||!t(103)(s)),"Array",{lastIndexOf:function(t){if(p)return s.apply(this,arguments)||0;var e=r(this),n=o(e.length),a=n-1;for(arguments.length>1&&(a=Math.min(a,i(arguments[1]))),0>a&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}})},{103:103,114:114,115:115,116:116,34:34}],143:[function(t,e,n){"use strict";var a=t(34),r=t(13)(1);a(a.P+a.F*!t(103)([].map,!0),"Array",{map:function(t){return r(this,t,arguments[1])}})},{103:103,13:13,34:34}],144:[function(t,e,n){"use strict";var a=t(34),r=t(25);a(a.S+a.F*t(36)(function(){function t(){}return!(Array.of.call(t)instanceof t)}),"Array",{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)r(n,t,arguments[t++]);return n.length=e,n}})},{25:25,34:34,36:36}],145:[function(t,e,n){"use strict";var a=t(34),r=t(14);a(a.P+a.F*!t(103)([].reduceRight,!0),"Array",{reduceRight:function(t){return r(this,t,arguments.length,arguments[1],!0)}})},{103:103,14:14,34:34}],146:[function(t,e,n){"use strict";var a=t(34),r=t(14);a(a.P+a.F*!t(103)([].reduce,!0),"Array",{reduce:function(t){return r(this,t,arguments.length,arguments[1],!1)}})},{103:103,14:14,34:34}],147:[function(t,e,n){"use strict";var a=t(34),r=t(44),i=t(19),o=t(112),s=t(116),p=[].slice;a(a.P+a.F*t(36)(function(){r&&p.call(r)}),"Array",{slice:function(t,e){var n=s(this.length),a=i(this);if(e=void 0===e?n:e,"Array"==a)return p.call(this,t,e);for(var r=o(t,n),u=o(e,n),c=s(u-r),l=Array(c),d=0;c>d;d++)l[d]="String"==a?this.charAt(r+d):this[r+d];return l}})},{112:112,116:116,19:19,34:34,36:36,44:44}],148:[function(t,e,n){"use strict";var a=t(34),r=t(13)(3);a(a.P+a.F*!t(103)([].some,!0),"Array",{some:function(t){return r(this,t,arguments[1])}})},{103:103,13:13,34:34}],149:[function(t,e,n){"use strict";var a=t(34),r=t(4),i=t(117),o=t(36),s=[].sort,p=[1,2,3];a(a.P+a.F*(o(function(){p.sort(void 0)})||!o(function(){p.sort(null)})||!t(103)(s)),"Array",{sort:function(t){return void 0===t?s.call(i(this)):s.call(i(this),r(t))}})},{103:103,117:117,34:34,36:36,4:4}],150:[function(t,e,n){t(98)("Array")},{98:98}],151:[function(t,e,n){var a=t(34);a(a.S,"Date",{now:function(){return(new Date).getTime()}})},{34:34}],152:[function(t,e,n){var a=t(34),r=t(27);a(a.P+a.F*(Date.prototype.toISOString!==r),"Date",{toISOString:r})},{27:27,34:34}],153:[function(t,e,n){"use strict";var a=t(34),r=t(117),i=t(118);a(a.P+a.F*t(36)(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}),"Date",{toJSON:function(t){var e=r(this),n=i(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},{117:117,118:118,34:34,36:36}],154:[function(t,e,n){var a=t(127)("toPrimitive"),r=Date.prototype;a in r||t(43)(r,a,t(28))},{127:127,28:28,43:43}],155:[function(t,e,n){var a=Date.prototype,r="Invalid Date",i="toString",o=a[i],s=a.getTime;new Date(NaN)+""!=r&&t(92)(a,i,function(){var t=s.call(this);return t===t?o.call(this):r})},{92:92}],156:[function(t,e,n){var a=t(34);a(a.P,"Function",{bind:t(17)})},{17:17,34:34}],157:[function(t,e,n){"use strict";var a=t(52),r=t(79),i=t(127)("hasInstance"),o=Function.prototype;i in o||t(72).f(o,i,{value:function(t){if("function"!=typeof this||!a(t))return!1;if(!a(this.prototype))return t instanceof this;for(;t=r(t);)if(this.prototype===t)return!0;return!1}})},{127:127,52:52,72:72,79:79}],158:[function(t,e,n){var a=t(72).f,r=Function.prototype,i=/^\s*function ([^ (]*)/,o="name";o in r||t(30)&&a(r,o,{configurable:!0,get:function(){try{return(""+this).match(i)[1]}catch(t){return""}}})},{30:30,72:72}],159:[function(t,e,n){"use strict";var a=t(20),r=t(124),i="Map";e.exports=t(23)(i,function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{get:function(t){var e=a.getEntry(r(this,i),t);return e&&e.v},set:function(t,e){return a.def(r(this,i),0===t?0:t,e)}},a,!0)},{124:124,20:20,23:23}],160:[function(t,e,n){var a=t(34),r=t(63),i=Math.sqrt,o=Math.acosh;a(a.S+a.F*!(o&&710==Math.floor(o(Number.MAX_VALUE))&&o(1/0)==1/0),"Math",{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?Math.log(t)+Math.LN2:r(t-1+i(t-1)*i(t+1))}})},{34:34,63:63}],161:[function(t,e,n){function a(t){return isFinite(t=+t)&&0!=t?0>t?-a(-t):Math.log(t+Math.sqrt(t*t+1)):t}var r=t(34),i=Math.asinh;r(r.S+r.F*!(i&&1/i(0)>0),"Math",{asinh:a})},{34:34}],162:[function(t,e,n){var a=t(34),r=Math.atanh;a(a.S+a.F*!(r&&1/r(-0)<0),"Math",{atanh:function(t){return 0==(t=+t)?t:Math.log((1+t)/(1-t))/2}})},{34:34}],163:[function(t,e,n){var a=t(34),r=t(65);a(a.S,"Math",{cbrt:function(t){return r(t=+t)*Math.pow(Math.abs(t),1/3)}})},{34:34,65:65}],164:[function(t,e,n){var a=t(34);a(a.S,"Math",{clz32:function(t){return(t>>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},{34:34}],165:[function(t,e,n){var a=t(34),r=Math.exp;a(a.S,"Math",{cosh:function(t){return(r(t=+t)+r(-t))/2}})},{34:34}],166:[function(t,e,n){var a=t(34),r=t(61);a(a.S+a.F*(r!=Math.expm1),"Math",{expm1:r})},{34:34,61:61}],167:[function(t,e,n){var a=t(34);a(a.S,"Math",{fround:t(62)})},{34:34,62:62}],168:[function(t,e,n){var a=t(34),r=Math.abs;a(a.S,"Math",{hypot:function(t,e){for(var n,a,i=0,o=0,s=arguments.length,p=0;s>o;)n=r(arguments[o++]),n>p?(a=p/n,i=i*a*a+1,p=n):n>0?(a=n/p,i+=a*a):i+=n;return p===1/0?1/0:p*Math.sqrt(i)}})},{34:34}],169:[function(t,e,n){var a=t(34),r=Math.imul;a(a.S+a.F*t(36)(function(){return-5!=r(4294967295,5)||2!=r.length}),"Math",{imul:function(t,e){var n=65535,a=+t,r=+e,i=n&a,o=n&r;return 0|i*o+((n&a>>>16)*o+i*(n&r>>>16)<<16>>>0)}})},{34:34,36:36}],170:[function(t,e,n){var a=t(34);a(a.S,"Math",{log10:function(t){return Math.log(t)*Math.LOG10E}})},{34:34}],171:[function(t,e,n){var a=t(34);a(a.S,"Math",{log1p:t(63)})},{34:34,63:63}],172:[function(t,e,n){var a=t(34);a(a.S,"Math",{log2:function(t){return Math.log(t)/Math.LN2}})},{34:34}],173:[function(t,e,n){var a=t(34);a(a.S,"Math",{sign:t(65)})},{34:34,65:65}],174:[function(t,e,n){var a=t(34),r=t(61),i=Math.exp;a(a.S+a.F*t(36)(function(){return-2e-17!=!Math.sinh(-2e-17)}),"Math",{sinh:function(t){return Math.abs(t=+t)<1?(r(t)-r(-t))/2:(i(t-1)-i(-t-1))*(Math.E/2)}})},{34:34,36:36,61:61}],175:[function(t,e,n){var a=t(34),r=t(61),i=Math.exp;a(a.S,"Math",{tanh:function(t){var e=r(t=+t),n=r(-t);return e==1/0?1:n==1/0?-1:(e-n)/(i(t)+i(-t))}})},{34:34,61:61}],176:[function(t,e,n){var a=t(34);a(a.S,"Math",{trunc:function(t){return(t>0?Math.floor:Math.ceil)(t)}})},{34:34}],177:[function(t,e,n){"use strict";var a=t(41),r=t(42),i=t(19),o=t(46),s=t(118),p=t(36),u=t(77).f,c=t(75).f,l=t(72).f,d=t(109).trim,f="Number",h=a[f],m=h,g=h.prototype,v=i(t(71)(g))==f,b="trim"in String.prototype,y=function(t){var e=s(t,!1);if("string"==typeof e&&e.length>2){e=b?e.trim():d(e,3);var n,a,r,i=e.charCodeAt(0);if(43===i||45===i){if(n=e.charCodeAt(2),88===n||120===n)return NaN}else if(48===i){switch(e.charCodeAt(1)){case 66:case 98:a=2,r=49;break;case 79:case 111:a=8,r=55;break;default:return+e}for(var o,p=e.slice(2),u=0,c=p.length;c>u;u++)if(o=p.charCodeAt(u),48>o||o>r)return NaN;return parseInt(p,a)}}return+e};if(!h(" 0o1")||!h("0b1")||h("+0x1")){h=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof h&&(v?p(function(){g.valueOf.call(n)}):i(n)!=f)?o(new m(y(e)),n,h):y(e)};for(var _,x=t(30)?u(m):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),w=0;x.length>w;w++)r(m,_=x[w])&&!r(h,_)&&l(h,_,c(m,_));h.prototype=g,g.constructor=h,t(92)(a,f,h)}},{109:109,118:118,19:19,30:30,36:36,41:41,42:42,46:46,71:71,72:72,75:75,77:77,92:92}],178:[function(t,e,n){var a=t(34);a(a.S,"Number",{EPSILON:Math.pow(2,-52)})},{34:34}],179:[function(t,e,n){var a=t(34),r=t(41).isFinite;a(a.S,"Number",{isFinite:function(t){return"number"==typeof t&&r(t)}})},{34:34,41:41}],180:[function(t,e,n){var a=t(34);a(a.S,"Number",{isInteger:t(51)})},{34:34,51:51}],181:[function(t,e,n){var a=t(34);a(a.S,"Number",{isNaN:function(t){return t!=t}})},{34:34}],182:[function(t,e,n){var a=t(34),r=t(51),i=Math.abs;a(a.S,"Number",{isSafeInteger:function(t){return r(t)&&i(t)<=9007199254740991}})},{34:34,51:51}],183:[function(t,e,n){var a=t(34);a(a.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},{34:34}],184:[function(t,e,n){var a=t(34);a(a.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},{34:34}],185:[function(t,e,n){var a=t(34),r=t(86);a(a.S+a.F*(Number.parseFloat!=r),"Number",{parseFloat:r})},{34:34,86:86}],186:[function(t,e,n){var a=t(34),r=t(87);a(a.S+a.F*(Number.parseInt!=r),"Number",{parseInt:r})},{34:34,87:87}],187:[function(t,e,n){"use strict";var a=t(34),r=t(114),i=t(5),o=t(108),s=1..toFixed,p=Math.floor,u=[0,0,0,0,0,0],c="Number.toFixed: incorrect invocation!",l="0",d=function(t,e){for(var n=-1,a=e;++n<6;)a+=t*u[n],u[n]=a%1e7,a=p(a/1e7)},f=function(t){for(var e=6,n=0;--e>=0;)n+=u[e],u[e]=p(n/t),n=n%t*1e7},h=function(){for(var t=6,e="";--t>=0;)if(""!==e||0===t||0!==u[t]){var n=u[t]+"";e=""===e?n:e+o.call(l,7-n.length)+n}return e},m=function(t,e,n){return 0===e?n:e%2===1?m(t,e-1,n*t):m(t*t,e/2,n)},g=function(t){for(var e=0,n=t;n>=4096;)e+=12,n/=4096;for(;n>=2;)e+=1,n/=2;return e};a(a.P+a.F*(!!s&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==0xde0b6b3a7640080.toFixed(0))||!t(36)(function(){s.call({})})),"Number",{toFixed:function(t){var e,n,a,s,p=i(this,c),u=r(t),v="",b=l;if(0>u||u>20)throw RangeError(c);if(p!=p)return"NaN";if(-1e21>=p||p>=1e21)return p+"";if(0>p&&(v="-",p=-p),p>1e-21)if(e=g(p*m(2,69,1))-69,n=0>e?p*m(2,-e,1):p/m(2,e,1),n*=4503599627370496,e=52-e,e>0){for(d(0,n),a=u;a>=7;)d(1e7,0),a-=7;for(d(m(10,a,1),0),a=e-1;a>=23;)f(1<<23),a-=23;f(1<0?(s=b.length,b=v+(u>=s?"0."+o.call(l,u-s)+b:b.slice(0,s-u)+"."+b.slice(s-u))):b=v+b,b}})},{108:108,114:114,34:34,36:36,5:5}],188:[function(t,e,n){"use strict";var a=t(34),r=t(36),i=t(5),o=1..toPrecision;a(a.P+a.F*(r(function(){return"1"!==o.call(1,void 0)})||!r(function(){o.call({})})),"Number",{toPrecision:function(t){var e=i(this,"Number#toPrecision: incorrect invocation!");return void 0===t?o.call(e):o.call(e,t)}})},{34:34,36:36,5:5}],189:[function(t,e,n){var a=t(34);a(a.S+a.F,"Object",{assign:t(70)})},{34:34,70:70}],190:[function(t,e,n){var a=t(34);a(a.S,"Object",{create:t(71)})},{34:34,71:71}],191:[function(t,e,n){var a=t(34);a(a.S+a.F*!t(30),"Object",{defineProperties:t(73)})},{30:30,34:34,73:73}],192:[function(t,e,n){var a=t(34);a(a.S+a.F*!t(30),"Object",{defineProperty:t(72).f})},{30:30,34:34,72:72}],193:[function(t,e,n){var a=t(52),r=t(66).onFreeze;t(83)("freeze",function(t){return function(e){return t&&a(e)?t(r(e)):e}})},{52:52,66:66,83:83}],194:[function(t,e,n){var a=t(115),r=t(75).f;t(83)("getOwnPropertyDescriptor",function(){return function(t,e){return r(a(t),e)}})},{115:115,75:75,83:83}],195:[function(t,e,n){t(83)("getOwnPropertyNames",function(){return t(76).f})},{76:76,83:83}],196:[function(t,e,n){var a=t(117),r=t(79);t(83)("getPrototypeOf",function(){return function(t){return r(a(t))}})},{117:117,79:79,83:83}],197:[function(t,e,n){var a=t(52);t(83)("isExtensible",function(t){return function(e){return a(e)?t?t(e):!0:!1}}); -},{52:52,83:83}],198:[function(t,e,n){var a=t(52);t(83)("isFrozen",function(t){return function(e){return a(e)?t?t(e):!1:!0}})},{52:52,83:83}],199:[function(t,e,n){var a=t(52);t(83)("isSealed",function(t){return function(e){return a(e)?t?t(e):!1:!0}})},{52:52,83:83}],200:[function(t,e,n){var a=t(34);a(a.S,"Object",{is:t(94)})},{34:34,94:94}],201:[function(t,e,n){var a=t(117),r=t(81);t(83)("keys",function(){return function(t){return r(a(t))}})},{117:117,81:81,83:83}],202:[function(t,e,n){var a=t(52),r=t(66).onFreeze;t(83)("preventExtensions",function(t){return function(e){return t&&a(e)?t(r(e)):e}})},{52:52,66:66,83:83}],203:[function(t,e,n){var a=t(52),r=t(66).onFreeze;t(83)("seal",function(t){return function(e){return t&&a(e)?t(r(e)):e}})},{52:52,66:66,83:83}],204:[function(t,e,n){var a=t(34);a(a.S,"Object",{setPrototypeOf:t(97).set})},{34:34,97:97}],205:[function(t,e,n){"use strict";var a=t(18),r={};r[t(127)("toStringTag")]="z",r+""!="[object z]"&&t(92)(Object.prototype,"toString",function(){return"[object "+a(this)+"]"},!0)},{127:127,18:18,92:92}],206:[function(t,e,n){var a=t(34),r=t(86);a(a.G+a.F*(parseFloat!=r),{parseFloat:r})},{34:34,86:86}],207:[function(t,e,n){var a=t(34),r=t(87);a(a.G+a.F*(parseInt!=r),{parseInt:r})},{34:34,87:87}],208:[function(t,e,n){"use strict";var a,r,i,o,s=t(60),p=t(41),u=t(26),c=t(18),l=t(34),d=t(52),f=t(4),h=t(7),m=t(40),g=t(102),v=t(111).set,b=t(68)(),y=t(69),_=t(88),x=t(123),w=t(89),k="Promise",S=p.TypeError,E=p.process,C=E&&E.versions,P=C&&C.v8||"",A=p[k],O="process"==c(E),T=function(){},R=r=y.f,M=!!function(){try{var e=A.resolve(1),n=(e.constructor={})[t(127)("species")]=function(t){t(T,T)};return(O||"function"==typeof PromiseRejectionEvent)&&e.then(T)instanceof n&&0!==P.indexOf("6.6")&&-1===x.indexOf("Chrome/66")}catch(a){}}(),L=function(t){var e;return d(t)&&"function"==typeof(e=t.then)?e:!1},D=function(t,e){if(!t._n){t._n=!0;var n=t._c;b(function(){for(var a=t._v,r=1==t._s,i=0,o=function(e){var n,i,o,s=r?e.ok:e.fail,p=e.resolve,u=e.reject,c=e.domain;try{s?(r||(2==t._h&&F(t),t._h=1),s===!0?n=a:(c&&c.enter(),n=s(a),c&&(c.exit(),o=!0)),n===e.promise?u(S("Promise-chain cycle")):(i=L(n))?i.call(n,p,u):p(n)):u(a)}catch(l){c&&!o&&c.exit(),u(l)}};n.length>i;)o(n[i++]);t._c=[],t._n=!1,e&&!t._h&&j(t)})}},j=function(t){v.call(p,function(){var e,n,a,r=t._v,i=N(t);if(i&&(e=_(function(){O?E.emit("unhandledRejection",r,t):(n=p.onunhandledrejection)?n({promise:t,reason:r}):(a=p.console)&&a.error&&a.error("Unhandled promise rejection",r)}),t._h=O||N(t)?2:1),t._a=void 0,i&&e.e)throw e.v})},N=function(t){return 1!==t._h&&0===(t._a||t._c).length},F=function(t){v.call(p,function(){var e;O?E.emit("rejectionHandled",t):(e=p.onrejectionhandled)&&e({promise:t,reason:t._v})})},I=function(t){var e=this;e._d||(e._d=!0,e=e._w||e,e._v=t,e._s=2,e._a||(e._a=e._c.slice()),D(e,!0))},B=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw S("Promise can't be resolved itself");(e=L(t))?b(function(){var a={_w:n,_d:!1};try{e.call(t,u(B,a,1),u(I,a,1))}catch(r){I.call(a,r)}}):(n._v=t,n._s=1,D(n,!1))}catch(a){I.call({_w:n,_d:!1},a)}}};M||(A=function(t){h(this,A,k,"_h"),f(t),a.call(this);try{t(u(B,this,1),u(I,this,1))}catch(e){I.call(this,e)}},a=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1},a.prototype=t(91)(A.prototype,{then:function(t,e){var n=R(g(this,A));return n.ok="function"==typeof t?t:!0,n.fail="function"==typeof e&&e,n.domain=O?E.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&D(this,!1),n.promise},"catch":function(t){return this.then(void 0,t)}}),i=function(){var t=new a;this.promise=t,this.resolve=u(B,t,1),this.reject=u(I,t,1)},y.f=R=function(t){return t===A||t===o?new i(t):r(t)}),l(l.G+l.W+l.F*!M,{Promise:A}),t(99)(A,k),t(98)(k),o=t(24)[k],l(l.S+l.F*!M,k,{reject:function(t){var e=R(this),n=e.reject;return n(t),e.promise}}),l(l.S+l.F*(s||!M),k,{resolve:function(t){return w(s&&this===o?A:this,t)}}),l(l.S+l.F*!(M&&t(57)(function(t){A.all(t)["catch"](T)})),k,{all:function(t){var e=this,n=R(e),a=n.resolve,r=n.reject,i=_(function(){var n=[],i=0,o=1;m(t,!1,function(t){var s=i++,p=!1;n.push(void 0),o++,e.resolve(t).then(function(t){p||(p=!0,n[s]=t,--o||a(n))},r)}),--o||a(n)});return i.e&&r(i.v),n.promise},race:function(t){var e=this,n=R(e),a=n.reject,r=_(function(){m(t,!1,function(t){e.resolve(t).then(n.resolve,a)})});return r.e&&a(r.v),n.promise}})},{102:102,111:111,123:123,127:127,18:18,24:24,26:26,34:34,4:4,40:40,41:41,52:52,57:57,60:60,68:68,69:69,7:7,88:88,89:89,91:91,98:98,99:99}],209:[function(t,e,n){var a=t(34),r=t(4),i=t(8),o=(t(41).Reflect||{}).apply,s=Function.apply;a(a.S+a.F*!t(36)(function(){o(function(){})}),"Reflect",{apply:function(t,e,n){var a=r(t),p=i(n);return o?o(a,e,p):s.call(a,e,p)}})},{34:34,36:36,4:4,41:41,8:8}],210:[function(t,e,n){var a=t(34),r=t(71),i=t(4),o=t(8),s=t(52),p=t(36),u=t(17),c=(t(41).Reflect||{}).construct,l=p(function(){function t(){}return!(c(function(){},[],t)instanceof t)}),d=!p(function(){c(function(){})});a(a.S+a.F*(l||d),"Reflect",{construct:function(t,e){i(t),o(e);var n=arguments.length<3?t:i(arguments[2]);if(d&&!l)return c(t,e,n);if(t==n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var a=[null];return a.push.apply(a,e),new(u.apply(t,a))}var p=n.prototype,f=r(s(p)?p:Object.prototype),h=Function.apply.call(t,f,e);return s(h)?h:f}})},{17:17,34:34,36:36,4:4,41:41,52:52,71:71,8:8}],211:[function(t,e,n){var a=t(72),r=t(34),i=t(8),o=t(118);r(r.S+r.F*t(36)(function(){Reflect.defineProperty(a.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(t,e,n){i(t),e=o(e,!0),i(n);try{return a.f(t,e,n),!0}catch(r){return!1}}})},{118:118,34:34,36:36,72:72,8:8}],212:[function(t,e,n){var a=t(34),r=t(75).f,i=t(8);a(a.S,"Reflect",{deleteProperty:function(t,e){var n=r(i(t),e);return n&&!n.configurable?!1:delete t[e]}})},{34:34,75:75,8:8}],213:[function(t,e,n){"use strict";var a=t(34),r=t(8),i=function(t){this._t=r(t),this._i=0;var e,n=this._k=[];for(e in t)n.push(e)};t(55)(i,"Object",function(){var t,e=this,n=e._k;do if(e._i>=n.length)return{value:void 0,done:!0};while(!((t=n[e._i++])in e._t));return{value:t,done:!1}}),a(a.S,"Reflect",{enumerate:function(t){return new i(t)}})},{34:34,55:55,8:8}],214:[function(t,e,n){var a=t(75),r=t(34),i=t(8);r(r.S,"Reflect",{getOwnPropertyDescriptor:function(t,e){return a.f(i(t),e)}})},{34:34,75:75,8:8}],215:[function(t,e,n){var a=t(34),r=t(79),i=t(8);a(a.S,"Reflect",{getPrototypeOf:function(t){return r(i(t))}})},{34:34,79:79,8:8}],216:[function(t,e,n){function a(t,e){var n,s,c=arguments.length<3?t:arguments[2];return u(t)===c?t[e]:(n=r.f(t,e))?o(n,"value")?n.value:void 0!==n.get?n.get.call(c):void 0:p(s=i(t))?a(s,e,c):void 0}var r=t(75),i=t(79),o=t(42),s=t(34),p=t(52),u=t(8);s(s.S,"Reflect",{get:a})},{34:34,42:42,52:52,75:75,79:79,8:8}],217:[function(t,e,n){var a=t(34);a(a.S,"Reflect",{has:function(t,e){return e in t}})},{34:34}],218:[function(t,e,n){var a=t(34),r=t(8),i=Object.isExtensible;a(a.S,"Reflect",{isExtensible:function(t){return r(t),i?i(t):!0}})},{34:34,8:8}],219:[function(t,e,n){var a=t(34);a(a.S,"Reflect",{ownKeys:t(85)})},{34:34,85:85}],220:[function(t,e,n){var a=t(34),r=t(8),i=Object.preventExtensions;a(a.S,"Reflect",{preventExtensions:function(t){r(t);try{return i&&i(t),!0}catch(e){return!1}}})},{34:34,8:8}],221:[function(t,e,n){var a=t(34),r=t(97);r&&a(a.S,"Reflect",{setPrototypeOf:function(t,e){r.check(t,e);try{return r.set(t,e),!0}catch(n){return!1}}})},{34:34,97:97}],222:[function(t,e,n){function a(t,e,n){var p,d,f=arguments.length<4?t:arguments[3],h=i.f(c(t),e);if(!h){if(l(d=o(t)))return a(d,e,n,f);h=u(0)}if(s(h,"value")){if(h.writable===!1||!l(f))return!1;if(p=i.f(f,e)){if(p.get||p.set||p.writable===!1)return!1;p.value=n,r.f(f,e,p)}else r.f(f,e,u(0,n));return!0}return void 0===h.set?!1:(h.set.call(f,n),!0)}var r=t(72),i=t(75),o=t(79),s=t(42),p=t(34),u=t(90),c=t(8),l=t(52);p(p.S,"Reflect",{set:a})},{34:34,42:42,52:52,72:72,75:75,79:79,8:8,90:90}],223:[function(t,e,n){var a=t(41),r=t(46),i=t(72).f,o=t(77).f,s=t(53),p=t(38),u=a.RegExp,c=u,l=u.prototype,d=/a/g,f=/a/g,h=new u(d)!==d;if(t(30)&&(!h||t(36)(function(){return f[t(127)("match")]=!1,u(d)!=d||u(f)==f||"/a/i"!=u(d,"i")}))){u=function(t,e){var n=this instanceof u,a=s(t),i=void 0===e;return!n&&a&&t.constructor===u&&i?t:r(h?new c(a&&!i?t.source:t,e):c((a=t instanceof u)?t.source:t,a&&i?p.call(t):e),n?this:l,u)};for(var m=(function(t){t in u||i(u,t,{configurable:!0,get:function(){return c[t]},set:function(e){c[t]=e}})}),g=o(c),v=0;g.length>v;)m(g[v++]);l.constructor=u,u.prototype=l,t(92)(a,"RegExp",u)}t(98)("RegExp")},{127:127,30:30,36:36,38:38,41:41,46:46,53:53,72:72,77:77,92:92,98:98}],224:[function(t,e,n){t(30)&&"g"!=/./g.flags&&t(72).f(RegExp.prototype,"flags",{configurable:!0,get:t(38)})},{30:30,38:38,72:72}],225:[function(t,e,n){t(37)("match",1,function(t,e,n){return[function(n){"use strict";var a=t(this),r=void 0==n?void 0:n[e];return void 0!==r?r.call(n,a):RegExp(n)[e](a+"")},n]})},{37:37}],226:[function(t,e,n){t(37)("replace",2,function(t,e,n){return[function(a,r){"use strict";var i=t(this),o=void 0==a?void 0:a[e];return void 0!==o?o.call(a,i,r):n.call(i+"",a,r)},n]})},{37:37}],227:[function(t,e,n){t(37)("search",1,function(t,e,n){return[function(n){"use strict";var a=t(this),r=void 0==n?void 0:n[e];return void 0!==r?r.call(n,a):RegExp(n)[e](a+"")},n]})},{37:37}],228:[function(t,e,n){t(37)("split",2,function(e,n,a){"use strict";var r=t(53),i=a,o=[].push,s="split",p="length",u="lastIndex";if("c"=="abbc"[s](/(b)*/)[1]||4!="test"[s](/(?:)/,-1)[p]||2!="ab"[s](/(?:ab)*/)[p]||4!="."[s](/(.?)(.?)/)[p]||"."[s](/()()/)[p]>1||""[s](/.?/)[p]){var c=void 0===/()??/.exec("")[1];a=function(t,e){var n=this+"";if(void 0===t&&0===e)return[];if(!r(t))return i.call(n,t,e);var a,s,l,d,f,h=[],m=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),g=0,v=void 0===e?4294967295:e>>>0,b=RegExp(t.source,m+"g");for(c||(a=RegExp("^"+b.source+"$(?!\\s)",m));(s=b.exec(n))&&(l=s.index+s[0][p],!(l>g&&(h.push(n.slice(g,s.index)),!c&&s[p]>1&&s[0].replace(a,function(){for(f=1;f1&&s.index=v)));)b[u]===s.index&&b[u]++;return g===n[p]?(d||!b.test(""))&&h.push(""):h.push(n.slice(g)),h[p]>v?h.slice(0,v):h}}else"0"[s](void 0,0)[p]&&(a=function(t,e){return void 0===t&&0===e?[]:i.call(this,t,e)});return[function(t,r){var i=e(this),o=void 0==t?void 0:t[n];return void 0!==o?o.call(t,i,r):a.call(i+"",t,r)},a]})},{37:37,53:53}],229:[function(t,e,n){"use strict";t(224);var a=t(8),r=t(38),i=t(30),o="toString",s=/./[o],p=function(e){t(92)(RegExp.prototype,o,e,!0)};t(36)(function(){return"/a/b"!=s.call({source:"a",flags:"b"})})?p(function(){var t=a(this);return"/".concat(t.source,"/","flags"in t?t.flags:!i&&t instanceof RegExp?r.call(t):void 0)}):s.name!=o&&p(function(){return s.call(this)})},{224:224,30:30,36:36,38:38,8:8,92:92}],230:[function(t,e,n){"use strict";var a=t(20),r=t(124),i="Set";e.exports=t(23)(i,function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return a.def(r(this,i),t=0===t?0:t,t)}},a)},{124:124,20:20,23:23}],231:[function(t,e,n){"use strict";t(106)("anchor",function(t){return function(e){return t(this,"a","name",e)}})},{106:106}],232:[function(t,e,n){"use strict";t(106)("big",function(t){return function(){return t(this,"big","","")}})},{106:106}],233:[function(t,e,n){"use strict";t(106)("blink",function(t){return function(){return t(this,"blink","","")}})},{106:106}],234:[function(t,e,n){"use strict";t(106)("bold",function(t){return function(){return t(this,"b","","")}})},{106:106}],235:[function(t,e,n){"use strict";var a=t(34),r=t(104)(!1);a(a.P,"String",{codePointAt:function(t){return r(this,t)}})},{104:104,34:34}],236:[function(t,e,n){"use strict";var a=t(34),r=t(116),i=t(105),o="endsWith",s=""[o];a(a.P+a.F*t(35)(o),"String",{endsWith:function(t){var e=i(this,t,o),n=arguments.length>1?arguments[1]:void 0,a=r(e.length),p=void 0===n?a:Math.min(r(n),a),u=t+"";return s?s.call(e,u,p):e.slice(p-u.length,p)===u}})},{105:105,116:116,34:34,35:35}],237:[function(t,e,n){"use strict";t(106)("fixed",function(t){return function(){return t(this,"tt","","")}})},{106:106}],238:[function(t,e,n){"use strict";t(106)("fontcolor",function(t){return function(e){return t(this,"font","color",e)}})},{106:106}],239:[function(t,e,n){"use strict";t(106)("fontsize",function(t){return function(e){return t(this,"font","size",e)}})},{106:106}],240:[function(t,e,n){var a=t(34),r=t(112),i=String.fromCharCode,o=String.fromCodePoint;a(a.S+a.F*(!!o&&1!=o.length),"String",{fromCodePoint:function(t){for(var e,n=[],a=arguments.length,o=0;a>o;){if(e=+arguments[o++],r(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(65536>e?i(e):i(((e-=65536)>>10)+55296,e%1024+56320))}return n.join("")}})},{112:112,34:34}],241:[function(t,e,n){"use strict";var a=t(34),r=t(105),i="includes";a(a.P+a.F*t(35)(i),"String",{includes:function(t){return!!~r(this,t,i).indexOf(t,arguments.length>1?arguments[1]:void 0)}})},{105:105,34:34,35:35}],242:[function(t,e,n){"use strict";t(106)("italics",function(t){return function(){return t(this,"i","","")}})},{106:106}],243:[function(t,e,n){"use strict";var a=t(104)(!0);t(56)(String,"String",function(t){this._t=t+"",this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=a(e,n),this._i+=t.length,{value:t,done:!1})})},{104:104,56:56}],244:[function(t,e,n){"use strict";t(106)("link",function(t){return function(e){return t(this,"a","href",e)}})},{106:106}],245:[function(t,e,n){var a=t(34),r=t(115),i=t(116);a(a.S,"String",{raw:function(t){for(var e=r(t.raw),n=i(e.length),a=arguments.length,o=[],s=0;n>s;)o.push(e[s++]+""),a>s&&o.push(arguments[s]+"");return o.join("")}})},{115:115,116:116,34:34}],246:[function(t,e,n){var a=t(34);a(a.P,"String",{repeat:t(108)})},{108:108,34:34}],247:[function(t,e,n){"use strict";t(106)("small",function(t){return function(){return t(this,"small","","")}})},{106:106}],248:[function(t,e,n){"use strict";var a=t(34),r=t(116),i=t(105),o="startsWith",s=""[o];a(a.P+a.F*t(35)(o),"String",{startsWith:function(t){var e=i(this,t,o),n=r(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),a=t+"";return s?s.call(e,a,n):e.slice(n,n+a.length)===a}})},{105:105,116:116,34:34,35:35}],249:[function(t,e,n){"use strict";t(106)("strike",function(t){return function(){return t(this,"strike","","")}})},{106:106}],250:[function(t,e,n){"use strict";t(106)("sub",function(t){return function(){return t(this,"sub","","")}})},{106:106}],251:[function(t,e,n){"use strict";t(106)("sup",function(t){return function(){return t(this,"sup","","")}})},{106:106}],252:[function(t,e,n){"use strict";t(109)("trim",function(t){return function(){return t(this,3)}})},{109:109}],253:[function(t,e,n){"use strict";var a=t(41),r=t(42),i=t(30),o=t(34),s=t(92),p=t(66).KEY,u=t(36),c=t(101),l=t(99),d=t(122),f=t(127),h=t(126),m=t(125),g=t(33),v=t(50),b=t(8),y=t(52),_=t(115),x=t(118),w=t(90),k=t(71),S=t(76),E=t(75),C=t(72),P=t(81),A=E.f,O=C.f,T=S.f,R=a.Symbol,M=a.JSON,L=M&&M.stringify,D="prototype",j=f("_hidden"),N=f("toPrimitive"),F={}.propertyIsEnumerable,I=c("symbol-registry"),B=c("symbols"),q=c("op-symbols"),U=Object[D],V="function"==typeof R,G=a.QObject,z=!G||!G[D]||!G[D].findChild,W=i&&u(function(){return 7!=k(O({},"a",{get:function(){return O(this,"a",{value:7}).a}})).a})?function(t,e,n){var a=A(U,e);a&&delete U[e],O(t,e,n),a&&t!==U&&O(U,e,a)}:O,H=function(t){var e=B[t]=k(R[D]);return e._k=t,e},K=V&&"symbol"==typeof R.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof R},Q=function(t,e,n){return t===U&&Q(q,e,n),b(t),e=x(e,!0),b(n),r(B,e)?(n.enumerable?(r(t,j)&&t[j][e]&&(t[j][e]=!1),n=k(n,{enumerable:w(0,!1)})):(r(t,j)||O(t,j,w(1,{})),t[j][e]=!0),W(t,e,n)):O(t,e,n)},Y=function(t,e){b(t);for(var n,a=g(e=_(e)),r=0,i=a.length;i>r;)Q(t,n=a[r++],e[n]);return t},$=function(t,e){return void 0===e?k(t):Y(k(t),e)},J=function(t){var e=F.call(this,t=x(t,!0));return this===U&&r(B,t)&&!r(q,t)?!1:e||!r(this,t)||!r(B,t)||r(this,j)&&this[j][t]?e:!0},X=function(t,e){if(t=_(t),e=x(e,!0),t!==U||!r(B,e)||r(q,e)){var n=A(t,e);return!n||!r(B,e)||r(t,j)&&t[j][e]||(n.enumerable=!0),n}},Z=function(t){for(var e,n=T(_(t)),a=[],i=0;n.length>i;)r(B,e=n[i++])||e==j||e==p||a.push(e);return a},tt=function(t){for(var e,n=t===U,a=T(n?q:_(t)),i=[],o=0;a.length>o;)r(B,e=a[o++])&&(n?r(U,e):!0)&&i.push(B[e]);return i};V||(R=function(){if(this instanceof R)throw TypeError("Symbol is not a constructor!");var t=d(arguments.length>0?arguments[0]:void 0),e=function(n){this===U&&e.call(q,n),r(this,j)&&r(this[j],t)&&(this[j][t]=!1),W(this,t,w(1,n))};return i&&z&&W(U,t,{configurable:!0,set:e}),H(t)},s(R[D],"toString",function(){return this._k}),E.f=X,C.f=Q,t(77).f=S.f=Z,t(82).f=J,t(78).f=tt,i&&!t(60)&&s(U,"propertyIsEnumerable",J,!0),h.f=function(t){return H(f(t))}),o(o.G+o.W+o.F*!V,{Symbol:R});for(var et="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),nt=0;et.length>nt;)f(et[nt++]);for(var at=P(f.store),rt=0;at.length>rt;)m(at[rt++]);o(o.S+o.F*!V,"Symbol",{"for":function(t){return r(I,t+="")?I[t]:I[t]=R(t)},keyFor:function(t){if(!K(t))throw TypeError(t+" is not a symbol!");for(var e in I)if(I[e]===t)return e},useSetter:function(){z=!0},useSimple:function(){z=!1}}),o(o.S+o.F*!V,"Object",{create:$,defineProperty:Q,defineProperties:Y,getOwnPropertyDescriptor:X,getOwnPropertyNames:Z,getOwnPropertySymbols:tt}),M&&o(o.S+o.F*(!V||u(function(){var t=R();return"[null]"!=L([t])||"{}"!=L({a:t})||"{}"!=L(Object(t))})),"JSON",{stringify:function(t){for(var e,n,a=[t],r=1;arguments.length>r;)a.push(arguments[r++]);return n=e=a[1],!y(e)&&void 0===t||K(t)?void 0:(v(e)||(e=function(t,e){return"function"==typeof n&&(e=n.call(this,t,e)),K(e)?void 0:e}),a[1]=e,L.apply(M,a))}}),R[D][N]||t(43)(R[D],N,R[D].valueOf),l(R,"Symbol"),l(Math,"Math",!0),l(a.JSON,"JSON",!0)},{101:101,115:115,118:118,122:122,125:125,126:126,127:127,30:30,33:33,34:34,36:36,41:41,42:42,43:43,50:50,52:52,60:60,66:66,71:71,72:72,75:75,76:76,77:77,78:78,8:8,81:81,82:82,90:90,92:92,99:99}],254:[function(t,e,n){"use strict";var a=t(34),r=t(121),i=t(120),o=t(8),s=t(112),p=t(116),u=t(52),c=t(41).ArrayBuffer,l=t(102),d=i.ArrayBuffer,f=i.DataView,h=r.ABV&&c.isView,m=d.prototype.slice,g=r.VIEW,v="ArrayBuffer";a(a.G+a.W+a.F*(c!==d),{ArrayBuffer:d}),a(a.S+a.F*!r.CONSTR,v,{isView:function(t){return h&&h(t)||u(t)&&g in t}}),a(a.P+a.U+a.F*t(36)(function(){return!new d(2).slice(1,void 0).byteLength}),v,{slice:function(t,e){if(void 0!==m&&void 0===e)return m.call(o(this),t);for(var n=o(this).byteLength,a=s(t,n),r=s(void 0===e?n:e,n),i=new(l(this,d))(p(r-a)),u=new f(this),c=new f(i),h=0;r>a;)c.setUint8(h++,u.getUint8(a++));return i}}),t(98)(v)},{102:102,112:112,116:116,120:120,121:121,34:34,36:36,41:41,52:52,8:8,98:98}],255:[function(t,e,n){var a=t(34);a(a.G+a.W+a.F*!t(121).ABV,{DataView:t(120).DataView})},{120:120,121:121,34:34}],256:[function(t,e,n){t(119)("Float32",4,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],257:[function(t,e,n){t(119)("Float64",8,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],258:[function(t,e,n){t(119)("Int16",2,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],259:[function(t,e,n){t(119)("Int32",4,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],260:[function(t,e,n){t(119)("Int8",1,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],261:[function(t,e,n){t(119)("Uint16",2,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],262:[function(t,e,n){t(119)("Uint32",4,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],263:[function(t,e,n){t(119)("Uint8",1,function(t){return function(e,n,a){return t(this,e,n,a)}})},{119:119}],264:[function(t,e,n){t(119)("Uint8",1,function(t){return function(e,n,a){return t(this,e,n,a)}},!0)},{119:119}],265:[function(t,e,n){"use strict";var a,r=t(13)(0),i=t(92),o=t(66),s=t(70),p=t(22),u=t(52),c=t(36),l=t(124),d="WeakMap",f=o.getWeak,h=Object.isExtensible,m=p.ufstore,g={},v=function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},b={get:function(t){if(u(t)){var e=f(t);return e===!0?m(l(this,d)).get(t):e?e[this._i]:void 0}},set:function(t,e){return p.def(l(this,d),t,e)}},y=e.exports=t(23)(d,v,b,p,!0,!0);c(function(){return 7!=(new y).set((Object.freeze||Object)(g),7).get(g)})&&(a=p.getConstructor(v,d),s(a.prototype,b),o.NEED=!0,r(["delete","has","get","set"],function(t){var e=y.prototype,n=e[t];i(e,t,function(e,r){if(u(e)&&!h(e)){this._f||(this._f=new a);var i=this._f[t](e,r);return"set"==t?this:i}return n.call(this,e,r)})}))},{124:124,13:13,22:22,23:23,36:36,52:52,66:66,70:70,92:92}],266:[function(t,e,n){"use strict";var a=t(22),r=t(124),i="WeakSet";t(23)(i,function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return a.def(r(this,i),t,!0)}},a,!1,!0)},{124:124,22:22,23:23}],267:[function(t,e,n){"use strict";var a=t(34),r=t(39),i=t(117),o=t(116),s=t(4),p=t(16);a(a.P,"Array",{flatMap:function(t){var e,n,a=i(this);return s(t),e=o(a.length),n=p(a,0),r(n,a,a,e,0,1,t,arguments[1]),n}}),t(6)("flatMap")},{116:116,117:117,16:16,34:34,39:39,4:4,6:6}],268:[function(t,e,n){"use strict";var a=t(34),r=t(39),i=t(117),o=t(116),s=t(114),p=t(16);a(a.P,"Array",{flatten:function(){var t=arguments[0],e=i(this),n=o(e.length),a=p(e,0);return r(a,e,e,n,0,void 0===t?1:s(t)),a}}),t(6)("flatten")},{114:114,116:116,117:117,16:16,34:34,39:39,6:6}],269:[function(t,e,n){"use strict";var a=t(34),r=t(12)(!0);a(a.P,"Array",{includes:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),t(6)("includes")},{12:12,34:34,6:6}],270:[function(t,e,n){var a=t(34),r=t(68)(),i=t(41).process,o="process"==t(19)(i);a(a.G,{asap:function(t){var e=o&&i.domain;r(e?e.bind(t):t)}})},{19:19,34:34,41:41,68:68}],271:[function(t,e,n){var a=t(34),r=t(19);a(a.S,"Error",{isError:function(t){return"Error"===r(t)}})},{19:19,34:34}],272:[function(t,e,n){var a=t(34);a(a.G,{global:t(41)})},{34:34,41:41}],273:[function(t,e,n){t(95)("Map")},{95:95}],274:[function(t,e,n){t(96)("Map")},{96:96}],275:[function(t,e,n){var a=t(34);a(a.P+a.R,"Map",{toJSON:t(21)("Map")})},{21:21,34:34}],276:[function(t,e,n){var a=t(34);a(a.S,"Math",{clamp:function(t,e,n){return Math.min(n,Math.max(e,t))}})},{34:34}],277:[function(t,e,n){var a=t(34);a(a.S,"Math",{DEG_PER_RAD:Math.PI/180})},{34:34}],278:[function(t,e,n){var a=t(34),r=180/Math.PI;a(a.S,"Math",{degrees:function(t){return t*r}})},{34:34}],279:[function(t,e,n){var a=t(34),r=t(64),i=t(62);a(a.S,"Math",{fscale:function(t,e,n,a,o){return i(r(t,e,n,a,o))}})},{34:34,62:62,64:64}],280:[function(t,e,n){var a=t(34);a(a.S,"Math",{iaddh:function(t,e,n,a){var r=t>>>0,i=e>>>0,o=n>>>0;return i+(a>>>0)+((r&o|(r|o)&~(r+o>>>0))>>>31)|0}})},{34:34}],281:[function(t,e,n){var a=t(34);a(a.S,"Math",{imulh:function(t,e){var n=65535,a=+t,r=+e,i=a&n,o=r&n,s=a>>16,p=r>>16,u=(s*o>>>0)+(i*o>>>16);return s*p+(u>>16)+((i*p>>>0)+(u&n)>>16)}})},{34:34}],282:[function(t,e,n){var a=t(34);a(a.S,"Math",{isubh:function(t,e,n,a){var r=t>>>0,i=e>>>0,o=n>>>0;return i-(a>>>0)-((~r&o|~(r^o)&r-o>>>0)>>>31)|0}})},{34:34}],283:[function(t,e,n){var a=t(34);a(a.S,"Math",{RAD_PER_DEG:180/Math.PI})},{34:34}],284:[function(t,e,n){var a=t(34),r=Math.PI/180;a(a.S,"Math",{radians:function(t){return t*r}})},{34:34}],285:[function(t,e,n){var a=t(34);a(a.S,"Math",{scale:t(64)})},{34:34,64:64}],286:[function(t,e,n){var a=t(34);a(a.S,"Math",{signbit:function(t){return(t=+t)!=t?t:0==t?1/t==1/0:t>0}})},{34:34}],287:[function(t,e,n){var a=t(34);a(a.S,"Math",{umulh:function(t,e){var n=65535,a=+t,r=+e,i=a&n,o=r&n,s=a>>>16,p=r>>>16,u=(s*o>>>0)+(i*o>>>16);return s*p+(u>>>16)+((i*p>>>0)+(u&n)>>>16)}})},{34:34}],288:[function(t,e,n){"use strict";var a=t(34),r=t(117),i=t(4),o=t(72);t(30)&&a(a.P+t(74),"Object",{__defineGetter__:function(t,e){o.f(r(this),t,{get:i(e),enumerable:!0,configurable:!0})}})},{117:117,30:30,34:34,4:4,72:72,74:74}],289:[function(t,e,n){"use strict";var a=t(34),r=t(117),i=t(4),o=t(72);t(30)&&a(a.P+t(74),"Object",{__defineSetter__:function(t,e){o.f(r(this),t,{set:i(e),enumerable:!0,configurable:!0})}})},{117:117,30:30,34:34,4:4,72:72,74:74}],290:[function(t,e,n){var a=t(34),r=t(84)(!0);a(a.S,"Object",{entries:function(t){return r(t)}})},{34:34,84:84}],291:[function(t,e,n){var a=t(34),r=t(85),i=t(115),o=t(75),s=t(25);a(a.S,"Object",{getOwnPropertyDescriptors:function(t){for(var e,n,a=i(t),p=o.f,u=r(a),c={},l=0;u.length>l;)n=p(a,e=u[l++]),void 0!==n&&s(c,e,n);return c}})},{115:115,25:25,34:34,75:75,85:85}],292:[function(t,e,n){"use strict";var a=t(34),r=t(117),i=t(118),o=t(79),s=t(75).f;t(30)&&a(a.P+t(74),"Object",{__lookupGetter__:function(t){var e,n=r(this),a=i(t,!0);do if(e=s(n,a))return e.get;while(n=o(n))}})},{117:117,118:118,30:30,34:34,74:74,75:75,79:79}],293:[function(t,e,n){"use strict";var a=t(34),r=t(117),i=t(118),o=t(79),s=t(75).f;t(30)&&a(a.P+t(74),"Object",{__lookupSetter__:function(t){var e,n=r(this),a=i(t,!0);do if(e=s(n,a))return e.set;while(n=o(n))}})},{117:117,118:118,30:30,34:34,74:74,75:75,79:79}],294:[function(t,e,n){var a=t(34),r=t(84)(!1);a(a.S,"Object",{values:function(t){return r(t)}})},{34:34,84:84}],295:[function(t,e,n){"use strict";var a=t(34),r=t(41),i=t(24),o=t(68)(),s=t(127)("observable"),p=t(4),u=t(8),c=t(7),l=t(91),d=t(43),f=t(40),h=f.RETURN,m=function(t){return null==t?void 0:p(t)},g=function(t){var e=t._c;e&&(t._c=void 0,e())},v=function(t){return void 0===t._o},b=function(t){v(t)||(t._o=void 0,g(t))},y=function(t,e){u(t),this._c=void 0,this._o=t,t=new _(this);try{var n=e(t),a=n;null!=n&&("function"==typeof n.unsubscribe?n=function(){a.unsubscribe()}:p(n),this._c=n)}catch(r){return void t.error(r)}v(this)&&g(this)};y.prototype=l({},{unsubscribe:function(){b(this)}});var _=function(t){this._s=t};_.prototype=l({},{next:function(t){var e=this._s;if(!v(e)){var n=e._o;try{var a=m(n.next);if(a)return a.call(n,t)}catch(r){try{b(e)}finally{throw r}}}},error:function(t){var e=this._s;if(v(e))throw t;var n=e._o;e._o=void 0;try{var a=m(n.error);if(!a)throw t;t=a.call(n,t)}catch(r){try{g(e)}finally{throw r}}return g(e),t},complete:function(t){var e=this._s;if(!v(e)){var n=e._o;e._o=void 0;try{var a=m(n.complete);t=a?a.call(n,t):void 0}catch(r){try{g(e)}finally{throw r}}return g(e),t}}});var x=function(t){c(this,x,"Observable","_f")._f=p(t)};l(x.prototype,{subscribe:function(t){return new y(t,this._f)},forEach:function(t){var e=this;return new(i.Promise||r.Promise)(function(n,a){p(t);var r=e.subscribe({next:function(e){try{return t(e)}catch(n){a(n),r.unsubscribe()}},error:a,complete:n})})}}),l(x,{from:function(t){var e="function"==typeof this?this:x,n=m(u(t)[s]);if(n){var a=u(n.call(t));return a.constructor===e?a:new e(function(t){return a.subscribe(t)})}return new e(function(e){var n=!1;return o(function(){if(!n){try{if(f(t,!1,function(t){return e.next(t),n?h:void 0})===h)return}catch(a){if(n)throw a;return void e.error(a)}e.complete()}}),function(){n=!0}})},of:function(){for(var t=0,e=arguments.length,n=Array(e);e>t;)n[t]=arguments[t++];return new("function"==typeof this?this:x)(function(t){var e=!1;return o(function(){if(!e){for(var a=0;a1?arguments[1]:void 0,!1)}})},{107:107,123:123,34:34}],313:[function(t,e,n){"use strict";var a=t(34),r=t(107),i=t(123);a(a.P+a.F*/Version\/10\.\d+(\.\d+)? Safari\//.test(i),"String",{padStart:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0,!0)}})},{107:107,123:123,34:34}],314:[function(t,e,n){"use strict";t(109)("trimLeft",function(t){return function(){return t(this,1)}},"trimStart")},{109:109}],315:[function(t,e,n){"use strict";t(109)("trimRight",function(t){return function(){return t(this,2)}},"trimEnd")},{109:109}],316:[function(t,e,n){t(125)("asyncIterator")},{125:125}],317:[function(t,e,n){t(125)("observable")},{125:125}],318:[function(t,e,n){var a=t(34);a(a.S,"System",{global:t(41) -})},{34:34,41:41}],319:[function(t,e,n){t(95)("WeakMap")},{95:95}],320:[function(t,e,n){t(96)("WeakMap")},{96:96}],321:[function(t,e,n){t(95)("WeakSet")},{95:95}],322:[function(t,e,n){t(96)("WeakSet")},{96:96}],323:[function(t,e,n){for(var a=t(140),r=t(81),i=t(92),o=t(41),s=t(43),p=t(59),u=t(127),c=u("iterator"),l=u("toStringTag"),d=p.Array,f={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},h=r(f),m=0;m2,r=a?o.call(arguments,2):!1;return t(a?function(){("function"==typeof e?e:Function(e)).apply(this,r)}:e,n)}};r(r.G+r.B+r.F*s,{setTimeout:p(a.setTimeout),setInterval:p(a.setInterval)})},{123:123,34:34,41:41}],326:[function(t,e,n){t(253),t(190),t(192),t(191),t(194),t(196),t(201),t(195),t(193),t(203),t(202),t(198),t(199),t(197),t(189),t(200),t(204),t(205),t(156),t(158),t(157),t(207),t(206),t(177),t(187),t(188),t(178),t(179),t(180),t(181),t(182),t(183),t(184),t(185),t(186),t(160),t(161),t(162),t(163),t(164),t(165),t(166),t(167),t(168),t(169),t(170),t(171),t(172),t(173),t(174),t(175),t(176),t(240),t(245),t(252),t(243),t(235),t(236),t(241),t(246),t(248),t(231),t(232),t(233),t(234),t(237),t(238),t(239),t(242),t(244),t(247),t(249),t(250),t(251),t(151),t(153),t(152),t(155),t(154),t(139),t(137),t(144),t(141),t(147),t(149),t(136),t(143),t(133),t(148),t(131),t(146),t(145),t(138),t(142),t(130),t(132),t(135),t(134),t(150),t(140),t(223),t(229),t(224),t(225),t(226),t(227),t(228),t(208),t(159),t(230),t(265),t(266),t(254),t(255),t(260),t(263),t(264),t(258),t(261),t(259),t(262),t(256),t(257),t(209),t(210),t(211),t(212),t(213),t(216),t(214),t(215),t(217),t(218),t(219),t(220),t(222),t(221),t(269),t(267),t(268),t(310),t(313),t(312),t(314),t(315),t(311),t(316),t(317),t(291),t(294),t(290),t(288),t(289),t(292),t(293),t(275),t(309),t(274),t(308),t(320),t(322),t(273),t(307),t(319),t(321),t(272),t(318),t(271),t(276),t(277),t(278),t(279),t(280),t(282),t(281),t(283),t(284),t(285),t(287),t(286),t(296),t(297),t(298),t(299),t(301),t(300),t(303),t(302),t(304),t(305),t(306),t(270),t(295),t(325),t(324),t(323),e.exports=t(24)},{130:130,131:131,132:132,133:133,134:134,135:135,136:136,137:137,138:138,139:139,140:140,141:141,142:142,143:143,144:144,145:145,146:146,147:147,148:148,149:149,150:150,151:151,152:152,153:153,154:154,155:155,156:156,157:157,158:158,159:159,160:160,161:161,162:162,163:163,164:164,165:165,166:166,167:167,168:168,169:169,170:170,171:171,172:172,173:173,174:174,175:175,176:176,177:177,178:178,179:179,180:180,181:181,182:182,183:183,184:184,185:185,186:186,187:187,188:188,189:189,190:190,191:191,192:192,193:193,194:194,195:195,196:196,197:197,198:198,199:199,200:200,201:201,202:202,203:203,204:204,205:205,206:206,207:207,208:208,209:209,210:210,211:211,212:212,213:213,214:214,215:215,216:216,217:217,218:218,219:219,220:220,221:221,222:222,223:223,224:224,225:225,226:226,227:227,228:228,229:229,230:230,231:231,232:232,233:233,234:234,235:235,236:236,237:237,238:238,239:239,24:24,240:240,241:241,242:242,243:243,244:244,245:245,246:246,247:247,248:248,249:249,250:250,251:251,252:252,253:253,254:254,255:255,256:256,257:257,258:258,259:259,260:260,261:261,262:262,263:263,264:264,265:265,266:266,267:267,268:268,269:269,270:270,271:271,272:272,273:273,274:274,275:275,276:276,277:277,278:278,279:279,280:280,281:281,282:282,283:283,284:284,285:285,286:286,287:287,288:288,289:289,290:290,291:291,292:292,293:293,294:294,295:295,296:296,297:297,298:298,299:299,300:300,301:301,302:302,303:303,304:304,305:305,306:306,307:307,308:308,309:309,310:310,311:311,312:312,313:313,314:314,315:315,316:316,317:317,318:318,319:319,320:320,321:321,322:322,323:323,324:324,325:325}],327:[function(t,e,n){!function(t){"use strict";function e(){return c.createDocumentFragment()}function n(t){return c.createElement(t)}function a(t){if(1===t.length)return r(t[0]);for(var n=e(),a=B.call(t),i=0;i-1}}([].indexOf||function(t){for(q=this.length;q--&&this[q]!==t;);return q}),item:function(t){return this[t]||null},remove:function(){for(var t,e=0;e=p?e(i):document.fonts.load(u(i,i.family),s).then(function(e){1<=e.length?t(i):setTimeout(d,25)},function(){e(i)})};d()}else n(function(){function n(){var e;(e=-1!=g&&-1!=v||-1!=g&&-1!=b||-1!=v&&-1!=b)&&((e=g!=v&&g!=b&&v!=b)||(null===l&&(e=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent),l=!!e&&(536>parseInt(e[1],10)||536===parseInt(e[1],10)&&11>=parseInt(e[2],10))),e=l&&(g==y&&v==y&&b==y||g==_&&v==_&&b==_||g==x&&v==x&&b==x)),e=!e),e&&(null!==w.parentNode&&w.parentNode.removeChild(w),clearTimeout(k),t(i))}function d(){if((new Date).getTime()-c>=p)null!==w.parentNode&&w.parentNode.removeChild(w),e(i);else{var t=document.hidden;(!0===t||void 0===t)&&(g=f.a.offsetWidth,v=h.a.offsetWidth,b=m.a.offsetWidth,n()),k=setTimeout(d,50)}}var f=new a(s),h=new a(s),m=new a(s),g=-1,v=-1,b=-1,y=-1,_=-1,x=-1,w=document.createElement("div"),k=0;w.dir="ltr",r(f,u(i,"sans-serif")),r(h,u(i,"serif")),r(m,u(i,"monospace")),w.appendChild(f.a),w.appendChild(h.a),w.appendChild(m.a),document.body.appendChild(w),y=f.a.offsetWidth,_=h.a.offsetWidth,x=m.a.offsetWidth,d(),o(f,function(t){g=t,n()}),r(f,u(i,'"'+i.family+'",sans-serif')),o(h,function(t){v=t,n()}),r(h,u(i,'"'+i.family+'",serif')),o(m,function(t){b=t,n()}),r(m,u(i,'"'+i.family+'",monospace'))})})},window.FontFaceObserver=s,window.FontFaceObserver.prototype.check=s.prototype.a,void 0!==e&&(e.exports=window.FontFaceObserver)}()},{}],330:[function(t,e,n){!function(t,n){function a(t,e){var n=t.createElement("p"),a=t.getElementsByTagName("head")[0]||t.documentElement;return n.innerHTML="x",a.insertBefore(n.lastChild,a.firstChild)}function r(){var t=_.elements;return"string"==typeof t?t.split(" "):t}function i(t,e){var n=_.elements;"string"!=typeof n&&(n=n.join(" ")),"string"!=typeof t&&(t=t.join(" ")),_.elements=n+" "+t,c(e)}function o(t){var e=y[t[v]];return e||(e={},b++,t[v]=b,y[b]=e),e}function s(t,e,a){if(e||(e=n),d)return e.createElement(t);a||(a=o(e));var r;return r=a.cache[t]?a.cache[t].cloneNode():g.test(t)?(a.cache[t]=a.createElem(t)).cloneNode():a.createElem(t),!r.canHaveChildren||m.test(t)||r.tagUrn?r:a.frag.appendChild(r)}function p(t,e){if(t||(t=n),d)return t.createDocumentFragment();e=e||o(t);for(var a=e.frag.cloneNode(),i=0,s=r(),p=s.length;p>i;i++)a.createElement(s[i]);return a}function u(t,e){e.cache||(e.cache={},e.createElem=t.createElement,e.createFrag=t.createDocumentFragment,e.frag=e.createFrag()),t.createElement=function(n){return _.shivMethods?s(n,t,e):e.createElem(n)},t.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+r().join().replace(/[\w\-:]+/g,function(t){return e.createElem(t),e.frag.createElement(t),'c("'+t+'")'})+");return n}")(_,e.frag)}function c(t){t||(t=n);var e=o(t);return!_.shivCSS||l||e.hasCSS||(e.hasCSS=!!a(t,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),d||u(t,e),t}var l,d,f="3.7.3-pre",h=t.html5||{},m=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,g=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,v="_html5shiv",b=0,y={};!function(){try{var t=n.createElement("a");t.innerHTML="",l="hidden"in t,d=1==t.childNodes.length||function(){n.createElement("a");var t=n.createDocumentFragment();return void 0===t.cloneNode||void 0===t.createDocumentFragment||void 0===t.createElement}()}catch(e){l=!0,d=!0}}();var _={elements:h.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:f,shivCSS:h.shivCSS!==!1,supportsUnknownElements:d,shivMethods:h.shivMethods!==!1,type:"default",shivDocument:c,createElement:s,createDocumentFragment:p,addElements:i};t.html5=_,c(n),"object"==typeof e&&e.exports&&(e.exports=_)}("undefined"!=typeof window?window:this,document)},{}],331:[function(t,e,n){(function(t){(function(t){!function(t){function e(t,e,n,a){for(var i,o,s=n.slice(),p=r(e,t),u=0,c=s.length;c>u&&(i=s[u],"object"==typeof i?"function"==typeof i.handleEvent&&i.handleEvent(p):i.call(t,p),!p.stoppedImmediatePropagation);u++);return o=!p.stoppedPropagation,a&&o&&t.parentNode?t.parentNode.dispatchEvent(p):!p.defaultPrevented}function n(t,e){return{configurable:!0,get:t,set:e}}function a(t,e,a){var r=y(e||t,a);v(t,"textContent",n(function(){return r.get.call(this)},function(t){r.set.call(this,t)}))}function r(t,e){return t.currentTarget=e,t.eventPhase=t.target===t.currentTarget?2:3,t}function i(t,e){for(var n=t.length;n--&&t[n]!==e;);return n}function o(){if("BR"===this.tagName)return"\n";for(var t=this.firstChild,e=[];t;)8!==t.nodeType&&7!==t.nodeType&&e.push(t.textContent),t=t.nextSibling;return e.join("")}function s(t){var e=document.createEvent("Event");e.initEvent("input",!0,!0),(t.srcElement||t.fromElement||document).dispatchEvent(e)}function p(t){!f&&S.test(document.readyState)&&(f=!f,document.detachEvent(h,p),t=document.createEvent("Event"),t.initEvent(m,!0,!0),document.dispatchEvent(t))}function u(t){return function(){return P[t]||document.body&&document.body[t]||0}}function c(t){for(var e;e=this.lastChild;)this.removeChild(e);null!=t&&this.appendChild(document.createTextNode(t))}function l(e,n){return n||(n=t.event),n.target||(n.target=n.srcElement||n.fromElement||document),n.timeStamp||(n.timeStamp=(new Date).getTime()),n}if(!document.createEvent){var d=!0,f=!1,h="onreadystatechange",m="DOMContentLoaded",g="__IE8__"+Math.random(),v=Object.defineProperty||function(t,e,n){t[e]=n.value},b=Object.defineProperties||function(e,n){for(var a in n)if(_.call(n,a))try{v(e,a,n[a])}catch(r){t.console&&console.log(a+" failed on object:",e,r.message)}},y=Object.getOwnPropertyDescriptor,_=Object.prototype.hasOwnProperty,x=t.Element.prototype,w=t.Text.prototype,k=/^[a-z]+$/,S=/loaded|complete/,E={},C=document.createElement("div"),P=document.documentElement,A=P.removeAttribute,O=P.setAttribute,T=function(t){return{enumerable:!0,writable:!0,configurable:!0,value:t}};a(t.HTMLCommentElement.prototype,x,"nodeValue"),a(t.HTMLScriptElement.prototype,null,"text"),a(w,null,"nodeValue"),a(t.HTMLTitleElement.prototype,null,"text"),v(t.HTMLStyleElement.prototype,"textContent",function(t){return n(function(){return t.get.call(this.styleSheet)},function(e){t.set.call(this.styleSheet,e)})}(y(t.CSSStyleSheet.prototype,"cssText")));var R=/\b\s*alpha\s*\(\s*opacity\s*=\s*(\d+)\s*\)/;v(t.CSSStyleDeclaration.prototype,"opacity",{get:function(){var t=this.filter.match(R);return t?""+t[1]/100:""},set:function(t){this.zoom=1;var e=!1;t=1>t?" alpha(opacity="+Math.round(100*t)+")":"",this.filter=this.filter.replace(R,function(){return e=!0,t}),!e&&t&&(this.filter+=t)}}),b(x,{textContent:{get:o,set:c},firstElementChild:{get:function(){for(var t=this.childNodes||[],e=0,n=t.length;n>e;e++)if(1==t[e].nodeType)return t[e]}},lastElementChild:{get:function(){for(var t=this.childNodes||[],e=t.length;e--;)if(1==t[e].nodeType)return t[e]}},oninput:{get:function(){return this._oninput||null},set:function(t){this._oninput&&(this.removeEventListener("input",this._oninput),this._oninput=t,t&&this.addEventListener("input",t))}},previousElementSibling:{get:function(){for(var t=this.previousSibling;t&&1!=t.nodeType;)t=t.previousSibling;return t}},nextElementSibling:{get:function(){for(var t=this.nextSibling;t&&1!=t.nodeType;)t=t.nextSibling;return t}},childElementCount:{get:function(){for(var t=0,e=this.childNodes||[],n=e.length;n--;t+=1==e[n].nodeType);return t}},addEventListener:T(function(t,n,a){if("function"==typeof n||"object"==typeof n){var r,o,p=this,u="on"+t,c=p[g]||v(p,g,{value:{}})[g],d=c[u]||(c[u]={}),f=d.h||(d.h=[]);if(!_.call(d,"w")){if(d.w=function(t){return t[g]||e(p,l(p,t),f,!1)},!_.call(E,u))if(k.test(t)){try{r=document.createEventObject(),r[g]=!0,9!=p.nodeType&&(null==p.parentNode&&C.appendChild(p),(o=p.getAttribute(u))&&A.call(p,u)),p.fireEvent(u,r),E[u]=!0}catch(h){for(E[u]=!1;C.hasChildNodes();)C.removeChild(C.firstChild)}null!=o&&O.call(p,u,o)}else E[u]=!1;(d.n=E[u])&&p.attachEvent(u,d.w)}i(f,n)<0&&f[a?"unshift":"push"](n),"input"===t&&p.attachEvent("onkeyup",s)}}),dispatchEvent:T(function(t){var n,a=this,r="on"+t.type,i=a[g],o=i&&i[r],s=!!o;return t.target||(t.target=a),s?o.n?a.fireEvent(r,t):e(a,t,o.h,!0):(n=a.parentNode)?n.dispatchEvent(t):!0,!t.defaultPrevented}),removeEventListener:T(function(t,e,n){if("function"==typeof e||"object"==typeof e){var a=this,r="on"+t,o=a[g],s=o&&o[r],p=s&&s.h,u=p?i(p,e):-1;u>-1&&p.splice(u,1)}})}),b(w,{addEventListener:T(x.addEventListener),dispatchEvent:T(x.dispatchEvent),removeEventListener:T(x.removeEventListener)}),b(t.XMLHttpRequest.prototype,{addEventListener:T(function(t,e,n){var a=this,r="on"+t,o=a[g]||v(a,g,{value:{}})[g],s=o[r]||(o[r]={}),p=s.h||(s.h=[]);i(p,e)<0&&(a[r]||(a[r]=function(){var e=document.createEvent("Event");e.initEvent(t,!0,!0),a.dispatchEvent(e)}),p[n?"unshift":"push"](e))}),dispatchEvent:T(function(t){var n=this,a="on"+t.type,r=n[g],i=r&&r[a],o=!!i;return o&&(i.n?n.fireEvent(a,t):e(n,t,i.h,!0))}),removeEventListener:T(x.removeEventListener)});var M=y(Event.prototype,"button").get;b(t.Event.prototype,{bubbles:T(!0),cancelable:T(!0),preventDefault:T(function(){this.cancelable&&(this.returnValue=!1)}),stopPropagation:T(function(){this.stoppedPropagation=!0,this.cancelBubble=!0}),stopImmediatePropagation:T(function(){this.stoppedImmediatePropagation=!0,this.stopPropagation()}),initEvent:T(function(t,e,n){this.type=t,this.bubbles=!!e,this.cancelable=!!n,this.bubbles||this.stopPropagation()}),pageX:{get:function(){return this._pageX||(this._pageX=this.clientX+t.scrollX-(P.clientLeft||0))}},pageY:{get:function(){return this._pageY||(this._pageY=this.clientY+t.scrollY-(P.clientTop||0))}},which:{get:function(){return this.keyCode?this.keyCode:isNaN(this.button)?void 0:this.button+1}},charCode:{get:function(){return this.keyCode&&"keypress"==this.type?this.keyCode:0}},buttons:{get:function(){return M.call(this)}},button:{get:function(){var t=this.buttons;return 1&t?0:2&t?2:4&t?1:void 0}},defaultPrevented:{get:function(){var t,e=this.returnValue;return!(e===t||e)}},relatedTarget:{get:function(){var t=this.type;return"mouseover"===t?this.fromElement:"mouseout"===t?this.toElement:null}}}),b(t.HTMLDocument.prototype,{defaultView:{get:function(){return this.parentWindow}},textContent:{get:function(){return 11===this.nodeType?o.call(this):null},set:function(t){11===this.nodeType&&c.call(this,t)}},addEventListener:T(function(e,n,a){var r=this;x.addEventListener.call(r,e,n,a),d&&e===m&&!S.test(r.readyState)&&(d=!1,r.attachEvent(h,p),t==top&&!function i(t){try{r.documentElement.doScroll("left"),p()}catch(e){setTimeout(i,50)}}())}),dispatchEvent:T(x.dispatchEvent),removeEventListener:T(x.removeEventListener),createEvent:T(function(t){var e;if("Event"!==t)throw Error("unsupported "+t);return e=document.createEventObject(),e.timeStamp=(new Date).getTime(),e})}),b(t.Window.prototype,{getComputedStyle:T(function(){function t(t){this._=t}function e(){}var n=/^(?:[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|))(?!px)[a-z%]+$/,a=/^(top|right|bottom|left)$/,r=/\-([a-z])/g,i=function(t,e){return e.toUpperCase()};return t.prototype.getPropertyValue=function(t){var e,o,s,p=this._,u=p.style,c=p.currentStyle,l=p.runtimeStyle;return"opacity"==t?u.opacity||"1":(t=("float"===t?"style-float":t).replace(r,i),e=c?c[t]:u[t],n.test(e)&&!a.test(t)&&(o=u.left,s=l&&l.left,s&&(l.left=c.left),u.left="fontSize"===t?"1em":e,e=u.pixelLeft+"px",u.left=o,s&&(l.left=s)),null==e?e:e+""||"auto")},e.prototype.getPropertyValue=function(){return null},function(n,a){return a?new e(n):new t(n)}}()),addEventListener:T(function(n,a,r){var o,s=t,p="on"+n;s[p]||(s[p]=function(t){return e(s,l(s,t),o,!1)&&void 0}),o=s[p][g]||(s[p][g]=[]),i(o,a)<0&&o[r?"unshift":"push"](a)}),dispatchEvent:T(function(e){var n=t["on"+e.type];return n?n.call(t,e)!==!1&&!e.defaultPrevented:!0}),removeEventListener:T(function(e,n,a){var r="on"+e,o=(t[r]||Object)[g],s=o?i(o,n):-1;s>-1&&o.splice(s,1)}),pageXOffset:{get:u("scrollLeft")},pageYOffset:{get:u("scrollTop")},scrollX:{get:u("scrollLeft")},scrollY:{get:u("scrollTop")},innerWidth:{get:u("clientWidth")},innerHeight:{get:u("clientHeight")}}),t.HTMLElement=t.Element,function(t,e,n){for(n=0;na;a++)e.appendChild(n[a].cloneNode(!0));return e},n.cloneRange=function(){var t=new e;return t._start=this._start,t._end=this._end,t},n.deleteContents=function(){for(var e=this._start.parentNode,n=t(this._start,this._end),a=0,r=n.length;r>a;a++)e.removeChild(n[a])},n.extractContents=function(){for(var e=this._start.ownerDocument.createDocumentFragment(),n=t(this._start,this._end),a=0,r=n.length;r>a;a++)e.appendChild(n[a]);return e},n.setEndAfter=function(t){this._end=t},n.setEndBefore=function(t){this._end=t.previousSibling},n.setStartAfter=function(t){this._start=t.nextSibling},n.setStartBefore=function(t){this._start=t}}}()}}(this.window||t)}).call(this,void 0!==t?t:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],332:[function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{"default":t}}function r(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e=s)return(0,p["default"])({points:n});for(var l=1;s-1>=l;l++)i.push((0,u.times)(a,(0,u.minus)(n[l],n[l-1])));for(var d=[(0,u.plus)(n[0],c(i[0],i[1]))],l=1;s-2>=l;l++)d.push((0,u.minus)(n[l],(0,u.average)([i[l],i[l-1]])));d.push((0,u.minus)(n[s-1],c(i[s-2],i[s-3])));var f=d[0],h=d[1],m=n[0],g=n[1],v=(e=(0,o["default"])()).moveto.apply(e,r(m)).curveto(f[0],f[1],h[0],h[1],g[0],g[1]);return{path:(0,u.range)(2,s).reduce(function(t,e){var a=d[e],r=n[e];return t.smoothcurveto(a[0],a[1],r[0],r[1])},v),centroid:(0,u.average)(n)}},e.exports=n["default"]},{335:335,336:336,337:337}],333:[function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(n,"__esModule",{value:!0});var r=function(){function t(t,e){var n=[],a=!0,r=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(a=(o=s.next()).done)&&(n.push(o.value),!e||n.length!==e);a=!0);}catch(p){r=!0,i=p}finally{try{!a&&s["return"]&&s["return"]()}finally{if(r)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),i=t(334),o=a(i),s=t(335),p=1e-5,u=function(t,e){var n=t.map(e),a=n.sort(function(t,e){var n=r(t,2),a=n[0],i=(n[1],r(e,2)),o=i[0];i[1];return a-o}),i=a.length,o=a[0][0],u=a[i-1][0],c=(0,s.minBy)(a,function(t){return t[1]}),l=(0,s.maxBy)(a,function(t){return t[1]});return o==u&&(u+=p),c==l&&(l+=p),{points:a,xmin:o,xmax:u,ymin:c,ymax:l}};n["default"]=function(t){var e=t.data,n=t.xaccessor,a=t.yaccessor,i=t.width,p=t.height,c=t.closed,l=t.min,d=t.max;n||(n=function(t){var e=r(t,2),n=e[0];e[1];return n}),a||(a=function(t){var e=r(t,2),n=(e[0],e[1]);return n});var f=function(t){return[n(t),a(t)]},h=e.map(function(t){return u(t,f)}),m=(0,s.minBy)(h,function(t){return t.xmin}),g=(0,s.maxBy)(h,function(t){return t.xmax}),v=null==l?(0,s.minBy)(h,function(t){return t.ymin}):l,b=null==d?(0,s.maxBy)(h,function(t){return t.ymax}):d;c&&(v=Math.min(v,0),b=Math.max(b,0));var y=c?0:v,_=(0,o["default"])([m,g],[0,i]),x=(0,o["default"])([v,b],[p,0]),w=function(t){var e=r(t,2),n=e[0],a=e[1];return[_(n),x(a)]};return{arranged:h,scale:w,xscale:_,yscale:x,base:y}},e.exports=n["default"]},{334:334,335:335}],334:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function t(t,e){var n=[],a=!0,r=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(a=(o=s.next()).done)&&(n.push(o.value),!e||n.length!==e);a=!0);}catch(p){r=!0,i=p}finally{try{!a&&s["return"]&&s["return"]()}finally{if(r)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=function i(t,e){var n=a(t,2),r=n[0],o=n[1],s=a(e,2),p=s[0],u=s[1],c=function(t){return p+(u-p)*(t-r)/(o-r)};return c.inverse=function(){return i([p,u],[r,o])},c};n["default"]=r,e.exports=n["default"]},{}],335:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function t(t,e){var n=[],a=!0,r=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(a=(o=s.next()).done)&&(n.push(o.value),!e||n.length!==e);a=!0);}catch(p){r=!0,i=p}finally{try{!a&&s["return"]&&s["return"]()}finally{if(r)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=function(t){return t.reduce(function(t,e){return t+e},0)},i=function(t){return t.reduce(function(t,e){return Math.min(t,e)})},o=function(t){return t.reduce(function(t,e){return Math.max(t,e)})},s=function(t,e){return t.reduce(function(t,n){return t+e(n)},0)},p=function(t,e){return t.reduce(function(t,n){return Math.min(t,e(n))},1/0)},u=function(t,e){return t.reduce(function(t,n){return Math.max(t,e(n))},-(1/0))},c=function(t,e){var n=a(t,2),r=n[0],i=n[1],o=a(e,2),s=o[0],p=o[1];return[r+s,i+p]},l=function(t,e){var n=a(t,2),r=n[0],i=n[1],o=a(e,2),s=o[0],p=o[1];return[r-s,i-p]},d=function(t,e){var n=a(e,2),r=n[0],i=n[1];return[t*r,t*i]},f=function(t){var e=a(t,2),n=e[0],r=e[1];return Math.sqrt(n*n+r*r)},h=function(t){return t.reduce(c,[0,0])},m=function(t){return d(1/t.length,t.reduce(c))},g=function(t,e){return d(t,[Math.sin(e),-Math.cos(e)])},v=function(t,e){var n=t||{};for(var a in n){var r=n[a];e[a]=r(e.index,e.item,e.group)}return e},b=function(t,e,n){for(var a=[],r=t;e>r;r++)a.push(r);return n&&a.push(e),a},y=function(t,e){var n=[],a=!0,r=!1,i=void 0;try{for(var o,s=Object.keys(t)[Symbol.iterator]();!(a=(o=s.next()).done);a=!0){var p=o.value,u=t[p];n.push(e(p,u))}}catch(c){r=!0,i=c}finally{ -try{!a&&s["return"]&&s["return"]()}finally{if(r)throw i}}return n},_=function(t){return y(t,function(t,e){return[t,e]})},x=function(t){return t};n.sum=r,n.min=i,n.max=o,n.sumBy=s,n.minBy=p,n.maxBy=u,n.plus=c,n.minus=l,n.times=d,n.id=x,n.length=f,n.sumVectors=h,n.average=m,n.onCircle=g,n.enhance=v,n.range=b,n.mapObject=y,n.pairs=_,n["default"]={sum:r,min:i,max:o,sumBy:s,minBy:p,maxBy:u,plus:c,minus:l,times:d,id:x,length:f,sumVectors:h,average:m,onCircle:g,enhance:v,range:b,mapObject:y,pairs:_}},{}],336:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var a=function(){function t(t,e){var n=[],a=!0,r=!1,i=void 0;try{for(var o,s=t[Symbol.iterator]();!(a=(o=s.next()).done)&&(n.push(o.value),!e||n.length!==e);a=!0);}catch(p){r=!0,i=p}finally{try{!a&&s["return"]&&s["return"]()}finally{if(r)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=function i(t){var e=t||[],n=function(t,e){var n=t.slice(0,t.length);return n.push(e),n},r=function(t,e){var n=a(t,2),r=n[0],i=n[1],o=a(e,2),s=o[0],p=o[1];return r===s&&i===p},o=function(t,e){for(var n=t.length;"0"===t.charAt(n-1);)n-=1;return"."===t.charAt(n-1)&&(n-=1),t.substr(0,n)},s=function(t,e){var n=t.toFixed(e);return o(n)},p=function(t){var e=t.command,n=t.params,a=n.map(function(t){return s(t,6)});return e+" "+a.join(" ")},u=function(t,e){var n=t.command,r=t.params,i=a(e,2),o=i[0],s=i[1];switch(n){case"M":return[r[0],r[1]];case"L":return[r[0],r[1]];case"H":return[r[0],s];case"V":return[o,r[0]];case"Z":return null;case"C":return[r[4],r[5]];case"S":return[r[2],r[3]];case"Q":return[r[2],r[3]];case"T":return[r[0],r[1]];case"A":return[r[5],r[6]]}},c=function(t,e){return function(n){var a="object"==typeof n?t.map(function(t){return n[t]}):arguments;return e.apply(null,a)}},l=function(t){return i(n(e,t))};return{moveto:c(["x","y"],function(t,e){return l({command:"M",params:[t,e]})}),lineto:c(["x","y"],function(t,e){return l({command:"L",params:[t,e]})}),hlineto:c(["x"],function(t){return l({command:"H",params:[t]})}),vlineto:c(["y"],function(t){return l({command:"V",params:[t]})}),closepath:function(){return l({command:"Z",params:[]})},curveto:c(["x1","y1","x2","y2","x","y"],function(t,e,n,a,r,i){return l({command:"C",params:[t,e,n,a,r,i]})}),smoothcurveto:c(["x2","y2","x","y"],function(t,e,n,a){return l({command:"S",params:[t,e,n,a]})}),qcurveto:c(["x1","y1","x","y"],function(t,e,n,a){return l({command:"Q",params:[t,e,n,a]})}),smoothqcurveto:c(["x","y"],function(t,e){return l({command:"T",params:[t,e]})}),arc:c(["rx","ry","xrot","largeArcFlag","sweepFlag","x","y"],function(t,e,n,a,r,i,o){return l({command:"A",params:[t,e,n,a,r,i,o]})}),print:function(){return e.map(p).join(" ")},points:function(){var t=[],n=[0,0],a=!0,r=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(a=(o=s.next()).done);a=!0){var p=o.value,c=u(p,n);n=c,c&&t.push(c)}}catch(l){r=!0,i=l}finally{try{!a&&s["return"]&&s["return"]()}finally{if(r)throw i}}return t},instructions:function(){return e.slice(0,e.length)},connect:function(t){var e=this.points(),n=e[e.length-1],a=t.points()[0],o=t.instructions().slice(1);return r(n,a)||o.unshift({command:"L",params:a}),i(this.instructions().concat(o))}}};n["default"]=function(){return r()},e.exports=n["default"]},{}],337:[function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{"default":t}}function r(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e1?e-1:0),a=1;e>a;a++)n[a-1]=arguments[a];for(var r,i;i=n.shift();)for(r in i)Mo.call(i,r)&&(t[r]=i[r]);return t}function r(t){for(var e=arguments.length,n=Array(e>1?e-1:0),a=1;e>a;a++)n[a-1]=arguments[a];return n.forEach(function(e){for(var n in e)!e.hasOwnProperty(n)||n in t||(t[n]=e[n])}),t}function i(t){return"[object Array]"===Lo.call(t)}function o(t){return Do.test(Lo.call(t))}function s(t,e){return null===t&&null===e?!0:"object"==typeof t||"object"==typeof e?!1:t===e}function p(t){return!isNaN(parseFloat(t))&&isFinite(t)}function u(t){return t&&"[object Object]"===Lo.call(t)}function c(t,e){return t.replace(/%s/g,function(){return e.shift()})}function l(t){for(var e=arguments.length,n=Array(e>1?e-1:0),a=1;e>a;a++)n[a-1]=arguments[a];throw t=c(t,n),Error(t)}function d(){Mg.DEBUG&&Oo.apply(null,arguments)}function f(t){for(var e=arguments.length,n=Array(e>1?e-1:0),a=1;e>a;a++)n[a-1]=arguments[a];t=c(t,n),To(t,n)}function h(t){for(var e=arguments.length,n=Array(e>1?e-1:0),a=1;e>a;a++)n[a-1]=arguments[a];t=c(t,n),jo[t]||(jo[t]=!0,To(t,n))}function m(){Mg.DEBUG&&f.apply(null,arguments)}function g(){Mg.DEBUG&&h.apply(null,arguments)}function v(t,e,n){var a=b(t,e,n);return a?a[t][n]:null}function b(t,e,n){for(;e;){if(n in e[t])return e;if(e.isolated)return null;e=e.parent}}function y(t){return function(){return t}}function _(t){var e,n,a,r,i,o;for(e=t.split("."),(n=zo[e.length])||(n=x(e.length)),i=[],a=function(t,n){return t?"*":e[n]},r=n.length;r--;)o=n[r].map(a).join("."),i.hasOwnProperty(o)||(i.push(o),i[o]=!0);return i}function x(t){var e,n,a,r,i,o,s,p,u="";if(!zo[t]){for(a=[];u.length=i;i+=1){for(n=i.toString(2);n.lengtho;o++)p.push(r(n[o]));a[i]=p}zo[t]=a}return zo[t]}function w(t,e,n,a){var r=t[e];if(!r||!r.equalsOrStartsWith(a)&&r.equalsOrStartsWith(n))return t[e]=r?r.replace(n,a):a,!0}function k(t){var e=t.slice(2);return"i"===t[1]&&p(e)?+e:e}function S(t){return null==t?t:(Ko.hasOwnProperty(t)||(Ko[t]=new Qo(t)),Ko[t])}function E(t,e){function n(e,n){var a,r,o;return n.isRoot?o=[].concat(Object.keys(t.viewmodel.data),Object.keys(t.viewmodel.mappings),Object.keys(t.viewmodel.computations)):(a=t.viewmodel.wrapped[n.str],r=a?a.get():t.viewmodel.get(n),o=r?Object.keys(r):null),o&&o.forEach(function(t){"_ractive"===t&&i(r)||e.push(n.join(t))}),e}var a,r,o;for(a=e.str.split("."),o=[$o];r=a.shift();)"*"===r?o=o.reduce(n,[]):o[0]===$o?o[0]=S(r):o=o.map(C(r));return o}function C(t){return function(e){return e.join(t)}}function P(t){return t?t.replace(Wo,".$1"):""}function A(t,e,n){if("string"!=typeof e||!p(n))throw Error("Bad arguments");var a=void 0,r=void 0;if(/\*/.test(e))return r={},E(t,S(P(e))).forEach(function(e){var a=t.viewmodel.get(e);if(!p(a))throw Error(Xo);r[e.str]=a+n}),t.set(r);if(a=t.get(e),!p(a))throw Error(Xo);return t.set(e,+a+n)}function O(t,e){return Jo(this,t,void 0===e?1:+e)}function T(t){this.event=t,this.method="on"+t,this.deprecate=as[t]}function R(t,e){var n=t.indexOf(e);-1===n&&t.push(e)}function M(t,e){for(var n=0,a=t.length;a>n;n++)if(t[n]==e)return!0;return!1}function L(t,e){var n;if(!i(t)||!i(e))return!1;if(t.length!==e.length)return!1;for(n=t.length;n--;)if(t[n]!==e[n])return!1;return!0}function D(t){return"string"==typeof t?[t]:void 0===t?[]:t}function j(t){return t[t.length-1]}function N(t,e){var n=t.indexOf(e);-1!==n&&t.splice(n,1)}function F(t){for(var e=[],n=t.length;n--;)e[n]=t[n];return e}function I(t){setTimeout(t,0)}function B(t,e){return function(){for(var n;n=t.shift();)n(e)}}function q(t,e,n,a){var r;if(e===t)throw new TypeError("A promise's fulfillment handler cannot return the same promise");if(e instanceof rs)e.then(n,a);else if(!e||"object"!=typeof e&&"function"!=typeof e)n(e);else{try{r=e.then}catch(i){return void a(i)}if("function"==typeof r){var o,s,p;s=function(e){o||(o=!0,q(t,e,n,a))},p=function(t){o||(o=!0,a(t))};try{r.call(e,s,p)}catch(i){if(!o)return a(i),void(o=!0)}}else n(e)}}function U(t,e,n){var a;return e=P(e),"~/"===e.substr(0,2)?(a=S(e.substring(2)),z(t,a.firstKey,n)):"."===e[0]?(a=V(cs(n),e),a&&z(t,a.firstKey,n)):a=G(t,S(e),n),a}function V(t,e){var n;if(void 0!=t&&"string"!=typeof t&&(t=t.str),"."===e)return S(t);if(n=t?t.split("."):[],"../"===e.substr(0,3)){for(;"../"===e.substr(0,3);){if(!n.length)throw Error('Could not resolve reference - too many "../" prefixes');n.pop(),e=e.substring(3)}return n.push(e),S(n.join("."))}return S(t?t+e.replace(/^\.\//,"."):e.replace(/^\.\/?/,""))}function G(t,e,n,a){var r,i,o,s,p;if(e.isRoot)return e;for(i=e.firstKey;n;)if(r=n.context,n=n.parent,r&&(s=!0,o=t.viewmodel.get(r),o&&("object"==typeof o||"function"==typeof o)&&i in o))return r.join(e.str);return W(t.viewmodel,i)?e:t.parent&&!t.isolated&&(s=!0,n=t.component.parentFragment,i=S(i),p=G(t.parent,i,n,!0))?(t.viewmodel.map(i,{origin:t.parent.viewmodel,keypath:p}),e):a||s?void 0:(t.viewmodel.set(e,void 0),e)}function z(t,e){var n;!t.parent||t.isolated||W(t.viewmodel,e)||(e=S(e),(n=G(t.parent,e,t.component.parentFragment,!0))&&t.viewmodel.map(e,{origin:t.parent.viewmodel,keypath:n}))}function W(t,e){return""===e||e in t.data||e in t.computations||e in t.mappings}function H(t){t.teardown()}function K(t){t.unbind()}function Q(t){t.unrender()}function Y(t){t.cancel()}function $(t){t.detach()}function J(t){t.detachNodes()}function X(t){!t.ready||t.outros.length||t.outroChildren||(t.outrosComplete||(t.parent?t.parent.decrementOutros(t):t.detachNodes(),t.outrosComplete=!0),t.intros.length||t.totalChildren||("function"==typeof t.callback&&t.callback(),t.parent&&t.parent.decrementTotal()))}function Z(){for(var t,e,n;fs.ractives.length;)e=fs.ractives.pop(),n=e.viewmodel.applyChanges(),n&&vs.fire(e,n);for(tt(),t=0;t=0;i--)r=t._subs[e[i]],r&&(s=vt(t,r,n,a)&&s);if(Gs.dequeue(t),t.parent&&s){if(o&&t.component){var p=t.component.name+"."+e[e.length-1];e=S(p).wildcardMatches(),n&&(n.component=t)}gt(t.parent,e,n,a)}}function vt(t,e,n,a){var r=null,i=!1;n&&!n._noArg&&(a=[n].concat(a)),e=e.slice();for(var o=0,s=e.length;s>o;o+=1)e[o].apply(t,a)===!1&&(i=!0);return n&&!n._noArg&&i&&(r=n.original)&&(r.preventDefault&&r.preventDefault(),r.stopPropagation&&r.stopPropagation()),!i}function bt(t){var e={args:Array.prototype.slice.call(arguments,1)};zs(this,t,e)}function yt(t){var e;return t=S(P(t)),e=this.viewmodel.get(t,Ks),void 0===e&&this.parent&&!this.isolated&&ls(this,t.str,this.component.parentFragment)&&(e=this.viewmodel.get(t)),e}function _t(e,n){if(!this.fragment.rendered)throw Error("The API has changed - you must call `ractive.render(target[, anchor])` to render your Ractive instance. Once rendered you can use `ractive.insert()`.");if(e=t(e),n=t(n)||null,!e)throw Error("You must specify a valid target to insert into");e.insertBefore(this.detach(),n),this.el=e,(e.__ractive_instances__||(e.__ractive_instances__=[])).push(this),this.detached=null,xt(this)}function xt(t){Ys.fire(t),t.findAllComponents("*").forEach(function(t){xt(t.instance)})}function wt(t,e,n){var a,r;return t=S(P(t)),a=this.viewmodel.get(t),i(a)&&i(e)?(r=bs.start(this,!0),this.viewmodel.merge(t,a,e,n),bs.end(),r):this.set(t,e,n&&n.complete)}function kt(t,e){var n,a;return n=E(t,e),a={},n.forEach(function(e){a[e.str]=t.get(e.str)}),a}function St(t,e,n,a){var r,i,o;e=S(P(e)),a=a||cp,e.isPattern?(r=new pp(t,e,n,a),t.viewmodel.patternObservers.push(r),i=!0):r=new Zs(t,e,n,a),r.init(a.init),t.viewmodel.register(e,r,i?"patternObservers":"observers"),r.ready=!0;var s={cancel:function(){var n;o||(i?(n=t.viewmodel.patternObservers.indexOf(r),t.viewmodel.patternObservers.splice(n,1),t.viewmodel.unregister(e,r,"patternObservers")):t.viewmodel.unregister(e,r,"observers"),o=!0)}};return t._observers.push(s),s}function Et(t,e,n){var a,r,i,o;if(u(t)){n=e,r=t,a=[];for(t in r)r.hasOwnProperty(t)&&(e=r[t],a.push(this.observe(t,e,n)));return{cancel:function(){for(;a.length;)a.pop().cancel()}}}if("function"==typeof t)return n=e,e=t,t="",up(this,t,e,n);if(i=t.split(" "),1===i.length)return up(this,t,e,n);for(a=[],o=i.length;o--;)t=i[o],t&&a.push(up(this,t,e,n));return{cancel:function(){for(;a.length;)a.pop().cancel()}}}function Ct(t,e,n){var a=this.observe(t,function(){e.apply(this,arguments),a.cancel()},{init:!1,defer:n&&n.defer});return a}function Pt(t,e){var n,a=this;if(t)n=t.split(" ").map(fp).filter(hp),n.forEach(function(t){var n,r;(n=a._subs[t])&&(e?(r=n.indexOf(e),-1!==r&&n.splice(r,1)):a._subs[t]=[])});else for(t in this._subs)delete this._subs[t];return this}function At(t,e){var n,a,r,i=this;if("object"==typeof t){n=[];for(a in t)t.hasOwnProperty(a)&&n.push(this.on(a,t[a]));return{cancel:function(){for(var t;t=n.pop();)t.cancel()}}}return r=t.split(" ").map(fp).filter(hp),r.forEach(function(t){(i._subs[t]||(i._subs[t]=[])).push(e)}),{cancel:function(){return i.off(t,e)}}}function Ot(t,e){var n=this.on(t,function(){e.apply(this,arguments),n.cancel()});return n}function Tt(t,e,n){var a,r,i,o,s,p,u=[];if(a=Rt(t,e,n),!a)return null;for(r=t.length,s=a.length-2-a[1],i=Math.min(r,a[0]),o=i+a[1],p=0;i>p;p+=1)u.push(p);for(;o>p;p+=1)u.push(-1);for(;r>p;p+=1)u.push(p+s);return 0!==s?u.touchedFrom=a[0]:u.touchedFrom=t.length,u}function Rt(t,e,n){switch(e){case"splice":for(void 0!==n[0]&&n[0]<0&&(n[0]=t.length+Math.max(n[0],-t.length));n.length<2;)n.push(0);return n[1]=Math.min(n[1],t.length-n[0]),n;case"sort":case"reverse":return null;case"pop":return t.length?[t.length-1,1]:[0,0];case"push":return[t.length,0].concat(n);case"shift":return[0,t.length?1:0];case"unshift":return[0,0].concat(n)}}function Mt(e,n){var a,r,i,o=this;if(i=this.transitionsEnabled,this.noIntro&&(this.transitionsEnabled=!1),a=bs.start(this,!0),bs.scheduleTask(function(){return Rp.fire(o)},!0),this.fragment.rendered)throw Error("You cannot call ractive.render() on an already rendered instance! Call ractive.unrender() first");if(e=t(e)||this.el,n=t(n)||this.anchor,this.el=e,this.anchor=n,!this.append&&e){var s=e.__ractive_instances__;s&&s.length&&Lt(s),e.innerHTML=""}return this.cssId&&Op.apply(),e&&((r=e.__ractive_instances__)?r.push(this):e.__ractive_instances__=[this],n?e.insertBefore(this.fragment.render(),n):e.appendChild(this.fragment.render())),bs.end(),this.transitionsEnabled=i,a.then(function(){return Mp.fire(o)})}function Lt(t){t.splice(0,t.length).forEach(H)}function Dt(t,e){for(var n=t.slice(),a=e.length;a--;)~n.indexOf(e[a])||n.push(e[a]);return n}function jt(t,e){var n,a,r;return a='[data-ractive-css~="{'+e+'}"]',r=function(t){var e,n,r,i,o,s,p,u=[];for(e=[];n=Ip.exec(t);)e.push({str:n[0],base:n[1],modifiers:n[2]});for(i=e.map(Ft),p=e.length;p--;)s=i.slice(),r=e[p],s[p]=r.base+a+r.modifiers||"",o=i.slice(),o[p]=a+" "+o[p],u.push(s.join(" "),o.join(" "));return u.join(", ")},n=qp.test(t)?t.replace(qp,a):t.replace(Fp,"").replace(Np,function(t,e){var n,a;return Bp.test(e)?t:(n=e.split(",").map(Nt),a=n.map(r).join(", ")+" ",t.replace(e,a))})}function Nt(t){return t.trim?t.trim():t.replace(/^\s+/,"").replace(/\s+$/,"")}function Ft(t){return t.str}function It(t){t&&t.constructor!==Object&&("function"==typeof t||("object"!=typeof t?l("data option must be an object or a function, `"+t+"` is not valid"):m("If supplied, options.data should be a plain JavaScript object - using a non-POJO as the root object may work, but is discouraged")))}function Bt(t,e){It(e);var n="function"==typeof t,a="function"==typeof e;return e||n||(e={}),n||a?function(){var r=a?qt(e,this):e,i=n?qt(t,this):t;return Ut(r,i)}:Ut(e,t)}function qt(t,e){var n=t.call(e);if(n)return"object"!=typeof n&&l("Data function must return an object"),n.constructor!==Object&&g("Data function returned something other than a plain JavaScript object. This might work, but is strongly discouraged"),n}function Ut(t,e){if(t&&e){for(var n in e)n in t||(t[n]=e[n]);return t}return t||e}function Vt(t){var e=So(Qp);return e.parse=function(e,n){return Gt(e,n||t)},e}function Gt(t,e){if(!Hp)throw Error("Missing Ractive.parse - cannot parse template. Either preparse or use the version that includes the parser");return Hp(t,e||this.options)}function zt(t,e){var n;if(!Xi){if(e&&e.noThrow)return;throw Error("Cannot retrieve template #"+t+" as Ractive is not running in a browser.")}if(Wt(t)&&(t=t.substring(1)),!(n=document.getElementById(t))){if(e&&e.noThrow)return;throw Error("Could not find template element with id #"+t)}if("SCRIPT"!==n.tagName.toUpperCase()){if(e&&e.noThrow)return;throw Error("Template element with id #"+t+", must be a - + + diff --git a/tools/WebhookProcessor/github_webhook_processor.php b/tools/WebhookProcessor/github_webhook_processor.php index b2a3a2cbd35..76dd158727e 100644 --- a/tools/WebhookProcessor/github_webhook_processor.php +++ b/tools/WebhookProcessor/github_webhook_processor.php @@ -520,6 +520,8 @@ function game_announce($action, $payload, $pr_flags) { $game_servers = filter_announce_targets($servers, $payload['pull_request']['base']['repo']['owner']['login'], $payload['pull_request']['base']['repo']['name'], $action, $pr_flags); + $msg = '?announce='.urlencode($msg).'&payload='.urlencode(json_encode($payload)); + foreach ($game_servers as $serverid => $server) { $server_message = $msg; if (isset($server['comskey'])) diff --git a/tools/mapmerge2/dmm.py b/tools/mapmerge2/dmm.py index 8bb1dca3537..f66f2b8edf1 100644 --- a/tools/mapmerge2/dmm.py +++ b/tools/mapmerge2/dmm.py @@ -343,7 +343,7 @@ def _parse(map_raw_text): in_map_block = False in_coord_block = False in_map_string = False - iter_x = 0 + base_x = 0 adjust_y = True curr_num = "" @@ -487,7 +487,7 @@ def _parse(map_raw_text): curr_x = int(curr_num) if curr_x > maxx: maxx = curr_x - iter_x = 0 + base_x = curr_x curr_num = "" reading_coord = "y" elif reading_coord == "y": @@ -521,21 +521,15 @@ def _parse(map_raw_text): adjust_y = False else: curr_y += 1 - if curr_x > maxx: - maxx = curr_x - if iter_x > 1: - curr_x = 1 - iter_x = 0 - + curr_x = base_x else: curr_key = BASE * curr_key + base52_r[char] curr_key_len += 1 if curr_key_len == key_length: - iter_x += 1 - if iter_x > 1: - curr_x += 1 - grid[curr_x, curr_y, curr_z] = duplicate_keys.get(curr_key, curr_key) + if curr_x > maxx: + maxx = curr_x + curr_x += 1 curr_key = 0 curr_key_len = 0 diff --git a/tools/mapmerge2/map_scripts/apc_pixel_offsets.txt b/tools/mapmerge2/map_scripts/apc_pixel_offsets.txt new file mode 100644 index 00000000000..30b5ba2d5d9 --- /dev/null +++ b/tools/mapmerge2/map_scripts/apc_pixel_offsets.txt @@ -0,0 +1,4 @@ +/obj/machinery/power/apc/@SUBTYPES{dir = 1} : @OLD{@OLD; pixel_y = 23} +/obj/machinery/power/apc/@SUBTYPES{dir = 2} : @OLD{@OLD; pixel_y = -23} +/obj/machinery/power/apc/@SUBTYPES{dir = 4} : @OLD{@OLD; pixel_x = 24} +/obj/machinery/power/apc/@SUBTYPES{dir = 8} : @OLD{@OLD; pixel_x = -25} diff --git a/tools/mapmerge2/update_paths.py b/tools/mapmerge2/update_paths.py index 6359b6bb303..2c316e941de 100644 --- a/tools/mapmerge2/update_paths.py +++ b/tools/mapmerge2/update_paths.py @@ -23,14 +23,14 @@ Old paths properties: """ default_map_directory = "../../_maps" -replacement_re = re.compile('\s*([^{]*)\s*(\{(.*)\})?') +replacement_re = re.compile(r'\s*(?P[^{]*)\s*(\{(?P.*)\})?') #urgent todo: replace with actual parser, this is slow as janitor in crit -split_re = re.compile('((?:[A-Za-z0-9_\-$]+)\s*=\s*(?:"(?:.+?)"|[^";]*)|@OLD)') +split_re = re.compile(r'((?:[A-Za-z0-9_\-$]+)\s*=\s*(?:"(?:.+?)"|[^";]*)|@OLD)') def props_to_string(props): - return "{{{0}}}".format(";".join([k+" = "+props[k] for k in props])) + return "{{{}}}".format(";".join([f"{k} = {v}" for k, v in props.items()])) def string_to_props(propstring, verbose = False): @@ -48,8 +48,8 @@ def string_to_props(propstring, verbose = False): def parse_rep_string(replacement_string, verbose = False): # translates /blah/blah {meme = "test",} into path,prop dictionary tuple match = re.match(replacement_re, replacement_string) - path = match.group(1) - props = match.group(3) + path = match['path'] + props = match['props'] if props: prop_dict = string_to_props(props, verbose) else: @@ -65,9 +65,18 @@ def update_path(dmm_data, replacement_string, verbose=False): new_path, new_path_props = parse_rep_string(replacement_def, verbose) new_paths.append((new_path, new_path_props)) + subtypes = "" + if old_path.endswith("/@SUBTYPES"): + old_path = old_path[:-len("/@SUBTYPES")] + if verbose: + print("Looking for subtypes of", old_path) + subtypes = r"(?:/\w+)*" + + replacement_pattern = re.compile(rf"(?P{re.escape(old_path)}{subtypes})\s*(:?{{(?P.*)}})?$") + def replace_def(match): - if match.group(2): - old_props = string_to_props(match.group(2), verbose) + if match['props']: + old_props = string_to_props(match['props'], verbose) else: old_props = dict() for filter_prop in old_path_props: @@ -83,7 +92,10 @@ def update_path(dmm_data, replacement_string, verbose=False): print("Found match : {0}".format(match.group(0))) out_paths = [] for new_path, new_props in new_paths: - out = new_path + if new_path == "@OLD": + out = match.group('path') + else: + out = new_path out_props = dict() for prop_name, prop_value in new_props.items(): if prop_name == "@OLD": @@ -106,10 +118,9 @@ def update_path(dmm_data, replacement_string, verbose=False): return out_paths def get_result(element): - p = re.compile("{0}\s*({{(.*)}})?$".format(re.escape(old_path))) - match = p.match(element) + match = replacement_pattern.match(element) if match: - return replace_def(match) # = re.sub(p,replace_def,element) + return replace_def(match) else: return [element] @@ -141,10 +152,12 @@ def update_all_maps(map_directory, updates, verbose=False): def main(args): if args.inline: + print("Using replacement:", args.update_source) updates = [args.update_source] else: with open(args.update_source) as f: updates = [line for line in f if line and not line.startswith("#") and not line.isspace()] + print(f"Using {len(updates)} replacements from file:", args.update_source) if args.map: update_map(args.map, updates, verbose=args.verbose) diff --git a/tools/ss13_genchangelog.py b/tools/ss13_genchangelog.py index 5c77063e960..e97bef7684e 100644 --- a/tools/ss13_genchangelog.py +++ b/tools/ss13_genchangelog.py @@ -74,9 +74,9 @@ failed_cache_read = True if os.path.isfile(changelog_cache): try: with open(changelog_cache,encoding='utf-8') as f: - (_, all_changelog_entries) = yaml.load_all(f) + (_, all_changelog_entries) = yaml.load_all(f, Loader=yaml.SafeLoader) failed_cache_read = False - + # Convert old timestamps to newer format. new_entries = {} for _date in all_changelog_entries.keys(): @@ -92,10 +92,10 @@ if os.path.isfile(changelog_cache): except Exception as e: print("Failed to read cache:") print(e, file=sys.stderr) - -if args.dryRun: + +if args.dryRun: changelog_cache = os.path.join(args.ymlDir, '.dry_changelog.yml') - + if failed_cache_read and os.path.isfile(args.targetFile): from bs4 import BeautifulSoup from bs4.element import NavigableString @@ -111,7 +111,7 @@ if failed_cache_read and os.path.isfile(args.targetFile): if author.endswith('updated:'): author = author[:-8] author = author.strip() - + # Find
    ulT = authorT.next_sibling while(ulT.name != 'ul'): @@ -124,14 +124,14 @@ if failed_cache_read and os.path.isfile(args.targetFile): newdat = {changeT['class'][0] + '': val + ''} if newdat not in changes: changes += [newdat] - + if len(changes) > 0: entry[author] = changes if date in all_changelog_entries: all_changelog_entries[date].update(entry) else: all_changelog_entries[date] = entry - + del_after = [] print('Reading changelogs...') for fileName in glob.glob(os.path.join(args.ymlDir, "*.yml")): @@ -142,7 +142,7 @@ for fileName in glob.glob(os.path.join(args.ymlDir, "*.yml")): print(' Reading {}...'.format(fileName)) cl = {} with open(fileName, 'r',encoding='utf-8') as f: - cl = yaml.load(f) + cl = yaml.load(f, Loader=yaml.SafeLoader) f.close() if today not in all_changelog_entries: all_changelog_entries[today] = {} @@ -156,23 +156,23 @@ for fileName in glob.glob(os.path.join(args.ymlDir, "*.yml")): print(' {0}: Invalid prefix {1}'.format(fileName, change_type), file=sys.stderr) author_entries += [change] new += 1 - all_changelog_entries[today][cl['author']] = author_entries + all_changelog_entries[today][cl['author']] = author_entries if new > 0: print(' Added {0} new changelog entries.'.format(new)) - + if cl.get('delete-after', False): if os.path.isfile(fileName): if args.dryRun: print(' Would delete {0} (delete-after set)...'.format(fileName)) else: del_after += [fileName] - + if args.dryRun: continue - + cl['changes'] = [] with open(fileName, 'w', encoding='utf-8') as f: - yaml.dump(cl, f, default_flow_style=False) - + yaml.dump(cl, f, default_flow_style=False) + targetDir = os.path.dirname(args.targetFile) with open(args.targetFile.replace('.htm', '.dry.htm') if args.dryRun else args.targetFile, 'w', encoding='utf-8') as changelog: @@ -195,18 +195,18 @@ with open(args.targetFile.replace('.htm', '.dry.htm') if args.dryRun else args.t for (css_class, change) in (dictToTuples(e)[0] for e in all_changelog_entries[_date][author]): if change in changes_added: continue write_entry = True - changes_added += [change] + changes_added += [change] author_htm += '\t\t\t\t
  • {change}
  • \n'.format(css_class=css_class, change=change.strip()) author_htm += '\t\t\t
\n' if len(changes_added) > 0: entry_htm += author_htm if write_entry: changelog.write(entry_htm) - + with open(os.path.join(targetDir, 'templates', 'footer.html'), 'r', encoding='utf-8') as h: for line in h: changelog.write(line) - + with open(changelog_cache, 'w') as f: cache_head = 'DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.' diff --git a/tools/travis/build_dependencies.sh b/tools/travis/build_dependencies.sh index 9e594733ea7..2c24bdbaaf2 100755 --- a/tools/travis/build_dependencies.sh +++ b/tools/travis/build_dependencies.sh @@ -41,19 +41,10 @@ if [ $BUILD_TOOLS = false ] && [ $BUILD_TESTING = false ]; then echo "Setting up MariaDB." rm -rf "$HOME/MariaDB" mkdir -p "$HOME/MariaDB" - wget http://mirrors.kernel.org/ubuntu/pool/universe/m/mariadb-client-lgpl/libmariadb2_2.0.0-1_i386.deb - dpkg -x libmariadb2_2.0.0-1_i386.deb /tmp/extract - rm libmariadb2_2.0.0-1_i386.deb - mv /tmp/extract/usr/lib/i386-linux-gnu/libmariadb.so.2 $HOME/MariaDB/ - ln -s $HOME/MariaDB/libmariadb.so.2 $HOME/MariaDB/libmariadb.so - rm -rf /tmp/extract - - wget http://mirrors.kernel.org/ubuntu/pool/universe/m/mariadb-connector-c/libmariadb-dev_2.3.3-1_i386.deb - dpkg -x libmariadb-dev_2.3.3-1_i386.deb /tmp/extract - rm libmariadb-dev_2.3.3-1_i386.deb - mv /tmp/extract/usr/include $HOME/MariaDB/ - #fuck what is this even? - mv $HOME/MariaDB/include/mariadb $HOME/MariaDB/include/mysql + mkdir -p "$HOME/MariaDB/include" + cp /usr/lib/i386-linux-gnu/libmariadb.so.2 $HOME/MariaDB/ + ln -s $HOME/MariaDB/libmariadb.so.2 $HOME/MariaDB/libmariadb.so + cp -r /usr/include/mariadb $HOME/MariaDB/include/ fi cd artifacts diff --git a/tools/travis/install_build_tools.sh b/tools/travis/install_build_tools.sh index 9dd73f854cc..0ea2a605ab1 100755 --- a/tools/travis/install_build_tools.sh +++ b/tools/travis/install_build_tools.sh @@ -4,9 +4,8 @@ set -e source dependencies.sh if [ "$BUILD_TOOLS" = true ]; then - rm -rf ~/.nvm && git clone https://github.com/creationix/nvm.git ~/.nvm && (cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`) && source ~/.nvm/nvm.sh && nvm install $NODE_VERSION - pip3 install --user PyYaml -q - pip3 install --user beautifulsoup4 -q + source ~/.nvm/nvm.sh + nvm install $NODE_VERSION + pip3 install --user PyYaml + pip3 install --user beautifulsoup4 fi; - -